AT2 TO AT2 — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) (Новая страница: «= Смотрите также = Полезные функции Функции Delphi») |
Hisava (обсуждение | вклад) м |
||
Строка 1: | Строка 1: | ||
+ | [[AT2_TO_AT2]] - это программа из справочника [[R266]] | ||
+ | Копирование документа AT2 в НУ | ||
+ | [[AT2_TO_AT2]]( data ) | ||
+ | = Текст = | ||
+ | parameters data | ||
+ | local at2, del, aa, fld, i, sql, path, msg, kinddoc | ||
+ | kinddoc := 'AT2' | ||
+ | // Протокол переноса документов из УУ в НУ | ||
+ | [[FILL_U_N]]( kinddoc ) | ||
+ | path := '\\FABIUS\FABIUS\OPDATA' | ||
+ | fld := {} | ||
+ | del := [ KINDDOC = 'AT2' and LVLNUM = '1' ] | ||
+ | try | ||
+ | WAITMSG( 'Выполняется перенос документов' + CHR( 10 ) + kinddoc + ' ' + REALNAME( 'R169', kinddoc ), msg ) | ||
+ | at2 := OPENCHILDDOC( 'AT2', '1', ~ParentForm := "", ~IsCondition := false, ~Month := MONTH( data ), ~Year := YEAR( data ) ) | ||
+ | ( at2 )->( SETFILTER( del ) ) | ||
+ | ( at2 )->( REFRESH() ) | ||
+ | aa := ( at2 )->( DBSTRUCT() ) | ||
+ | if !ISEMPTY( aa ) | ||
+ | for i := 6 to LEN( aa ) | ||
+ | AADD( fld, aa[i,1] ) | ||
+ | next | ||
+ | endif | ||
+ | sql := [ Select ] | ||
+ | if !EMPTY( fld ) | ||
+ | for i := 1 to LEN( fld ) | ||
+ | sql := sql + fld[i] + [, ] | ||
+ | next | ||
+ | endif | ||
+ | sql := LEFT( sql, LEN( sql ) - 2 ) | ||
+ | sql := STRTRAN( sql, [ SUM,], [ "SUM",] ) | ||
+ | sql := sql + [ From DOCS] + RET_F_EXT( data ) + [ Where ] + del | ||
+ | aa := SELECTSQLTOARR( sql, fld, path, false, false ) | ||
+ | if !ISEMPTY( aa ) | ||
+ | ADDALL( 'AT2', '1', " ",, fld, aa,,,, YEAR( data ), MONTH( data ),,, false,, del, { false, false, false, false, false } ) | ||
+ | endif | ||
+ | finally | ||
+ | HIDEMSG( msg ) | ||
+ | CLOSEFORM( ( at2 )->( GETFORM( GETAREA() ) ) ) | ||
+ | end | ||
+ | // http://wiki.sftserv.ru/index.php/AT2 | ||
= Смотрите также = | = Смотрите также = | ||
[[Полезные функции]] | [[Полезные функции]] | ||
[[Функции Delphi]] | [[Функции Delphi]] |
Версия 08:55, 11 января 2018
AT2_TO_AT2 - это программа из справочника R266
Копирование документа AT2 в НУ
AT2_TO_AT2( data )
Текст
parameters data local at2, del, aa, fld, i, sql, path, msg, kinddoc kinddoc := 'AT2' // Протокол переноса документов из УУ в НУ FILL_U_N( kinddoc ) path := '\\FABIUS\FABIUS\OPDATA' fld := {} del := [ KINDDOC = 'AT2' and LVLNUM = '1' ] try WAITMSG( 'Выполняется перенос документов' + CHR( 10 ) + kinddoc + ' ' + REALNAME( 'R169', kinddoc ), msg ) at2 := OPENCHILDDOC( 'AT2', '1', ~ParentForm := "", ~IsCondition := false, ~Month := MONTH( data ), ~Year := YEAR( data ) ) ( at2 )->( SETFILTER( del ) ) ( at2 )->( REFRESH() ) aa := ( at2 )->( DBSTRUCT() ) if !ISEMPTY( aa ) for i := 6 to LEN( aa ) AADD( fld, aa[i,1] ) next endif sql := [ Select ] if !EMPTY( fld ) for i := 1 to LEN( fld ) sql := sql + fld[i] + [, ] next endif sql := LEFT( sql, LEN( sql ) - 2 ) sql := STRTRAN( sql, [ SUM,], [ "SUM",] ) sql := sql + [ From DOCS] + RET_F_EXT( data ) + [ Where ] + del aa := SELECTSQLTOARR( sql, fld, path, false, false ) if !ISEMPTY( aa ) ADDALL( 'AT2', '1', " ",, fld, aa,,,, YEAR( data ), MONTH( data ),,, false,, del, { false, false, false, false, false } ) endif finally HIDEMSG( msg ) CLOSEFORM( ( at2 )->( GETFORM( GETAREA() ) ) ) end // http://wiki.sftserv.ru/index.php/AT2