UTH TO UTH
Материал из Фабиус wiki
Версия от 15:26, 19 июля 2018; Hisava (обсуждение | вклад)
UTH_TO_UTH - это программа из справочника R266
Программа переноса документа UTH из одной папки Opdata в другую
Текст
local _, sql, fld, path, aa, i, del, uth1, bb path := UU_PATH fld := ' _1,C,8; _2,C,10; _3,D,4; _4,N,5; _5,N,5; _6,C,10; _7,D,4; ' uth1 := OpenChildDoc( 'UTH', '1', ~ParentForm := "", ; ~Month := Month( CurDate ), ~Year := Year( CurDate ) ) try _ := CreateTmpFile( fld, '_', ~IsFreeDel := true ) sql := [ Select RGNUM, CATTR2, DATTR1, KANAL1, DANAL1, NUMDOC, DATDOC ; From DOCS] + Ret_f_ext() + [ ; Where KINDDOC = 'UTH' and LVLNUM = '1' ] SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _1, _2, _3, _4, ; _5, _6, _7 ) ] + sql, path ) fld := { 'CATTR6', 'CATTR2', 'DATTR1', 'KANAL1', 'DANAL1', 'NUMDOC', 'DATDOC' } sql := [ Select _1 CATTR6, _2 CATTR2, _3 DATTR1, _4 KANAL1, ; _5 DANAL1, _6 NUMDOC, _7 DATDOC ; From ] + TmpFilePath( _ ) aa := SelectSqlToArr( sql, fld, TempPath, false, false ) if !IsEmpty( aa ) for i := 1 to len( aa ) // --- добавляю этаж 1 bb := { aa[i] } del := [ KINDDOC = 'UTH' and LVLNUM = '1' and Left( CATTR6, 8 ) = '] + bb[1,1] + [' ] AddAll( 'UTH', '1', " ",, fld, bb,,,, ; Year( CurDate ), Month( CurDate ),,, "",, del ) ( uth1 )->( SetFilter( del ) ) ( uth1 )->( Refresh() ) UTH_TO_UTH2( uth1, path ) // *** добавляю этаж 1 next endif finally CloseTable( _ ) end // _1 - RGNUM хранится в поле CATTR6 // _2 - номер, CATTR2 // _3 - дата, DATTR1 // _4 - поставщик, код, KANAL1 // _5 - место прихода, код, DANAL1 // _6 - номер приходного ордера, NUMDOC // _7 - дата приходного ордера, DATDOC