UTH TO UTH — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
(Новая страница: «UTH_TO_UTH - это программа из справочника R266 Программа переноса документа UTH из одной п…»)
 
м
Строка 1: Строка 1:
 
[[UTH_TO_UTH]] - это программа из справочника [[R266]]
 
[[UTH_TO_UTH]] - это программа из справочника [[R266]]
 
  Программа переноса документа [[UTH]] из одной папки Opdata в другую
 
  Программа переноса документа [[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
 
= Смотрите также =
 
= Смотрите также =
 
[[Полезные функции]]
 
[[Полезные функции]]
  
 
[[Функции Delphi]]
 
[[Функции Delphi]]

Версия 15:26, 19 июля 2018

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

Смотрите также

Полезные функции

Функции Delphi