AT2 TO AT2 2 — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м |
Hisava (обсуждение | вклад) м (→Текст) |
||
Строка 16: | Строка 16: | ||
try | try | ||
WAITMSG( 'Выполняется перенос документов' + CHR( 10 ) + kinddoc + ' ' + REALNAME( 'R169', kinddoc ), msg ) | WAITMSG( 'Выполняется перенос документов' + CHR( 10 ) + kinddoc + ' ' + REALNAME( 'R169', kinddoc ), msg ) | ||
− | at2 := OPENCHILDDOC( 'AT2', '1', ~ParentForm := "", ~IsCondition := false, ~Month := MONTH( data ), ~Year := YEAR( data ) ) | + | at2 := [[OPENCHILDDOC]]( 'AT2', ''''1'''', ~ParentForm := "", ~IsCondition := false, ~Month := MONTH( data ), ~Year := YEAR( data ) ) |
( at2 )->( SETFILTER( del ) ) | ( at2 )->( SETFILTER( del ) ) | ||
( at2 )->( REFRESH() ) | ( at2 )->( REFRESH() ) | ||
Строка 48: | Строка 48: | ||
CLOSEFORM( ( at2 )->( GETFORM( GETAREA() ) ) ) | CLOSEFORM( ( at2 )->( GETFORM( GETAREA() ) ) ) | ||
end | end | ||
+ | |||
= Смотрите также = | = Смотрите также = | ||
[[Полезные функции]] | [[Полезные функции]] |
Версия 09:35, 11 января 2018
AT2_TO_AT2_2 - это программа из справочника R266
Копирование документа AT2 уровень 2
AT2_TO_AT2_2( data )
data - дата для определения месяца
Текст
parameters data if EMPTY( data ) data := DATE() - 10 endif local path, kinddoc, sql2, aa, fld, msg, at2, del, i, sql fld := {} kinddoc := 'AT2' path := '\\FABIUS\FABIUS\OPDATA' del := [ KINDDOC = '] + kinddoc + [' 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 KINDDOC = '] + kinddoc + [' and LVLNUM = '2' and NUMDOC = '] ( at2 )->( DBGOTOP() ) while !( at2 )->( EOF() ) WAITMSG( 'Документ номер ' + ( at2 )->NUMDOC + ' от ' + ( at2 )->DATDOC + Chr( 10 ) + kinddoc + ' ' + RealName( 'R169', kinddoc ), msg ) sql2 := sql + ( at2 )->NUMDOC + [' ] aa := SqlToArr( sql2, fld, path ) if !IsEmpty( aa ) AddAll( kinddoc, '2', ( at2 )->RGNUM,, fld, aa,, ( at2 )->( GETFORM( GETAREA() ) ),,,,,, false,,, { false, false, false, false, false } ) endif ( at2 )->( DBSKIP() ) end finally HIDEMSG( msg ) CLOSEFORM( ( at2 )->( GETFORM( GETAREA() ) ) ) end