ADDALL
Материал из Фабиус wiki
Функция добавления группы записей в документ
ADDALL( 1.kinddoc, 2.lvlnum, 3.parent, 4.access, 5.fldname, 6.ArValues, 7.Resblk, 8.OwnerForm, 9.NewLvl, 10.Year, 11.Month, 12.Day, 13.IsRepl = true, 14.IsMsg = true, 15.showTime, 16.DelFilt, 17.массив для SpeedChange [,NeedSync=False] [,NoDependence=nil] [,SortFldName=False] [,MsgAddText] [,Replace_Kind] [,<DelFiltAdd>] [,<IsCloseDocum=True>] [,<RetExcept=False>] [,NeedBackup = true] )
Для функции ADDALL массив для SPEEDCHANGE не содержит форму ( [Form] ), потому что форма сама передается как GETFORM() Поэтому НЕТ шестого элемента в массиве, например ADDALL('BDP','1',,,{'CATTR10','danal1'}, { { 'R07', 420 } },,,,,,,,,,,{.T.,.T.,.T.,.T.,.T.,2}) где 2 - это отключение умалчиваемых значений при работе функции ADDALL В то время как для функции SpeedChange работа с умалчиваемыми значениями - это СЕДЬМОЙ элемент массива SpeedChange( [DS], [ET], [DisIL], [EF], [DisCont], [Form], [Def], [DisInfl], [DisLink], [DisCalc], [DisSequenced] )
Номер | Имя | Описание | Значение по умолчанию |
---|---|---|---|
13 | IsRepl | удалить ли все записи, перед добавлением ( действует только если parent <> "" ) | Да |
NeedSync ( по умолчанию отключено ) - синхронизация вышестоящих уровней по Parent-Rgnum при отслеживании связей(при отсутствии в R166 описания связей между этажами-замедляет добавление)
Примеры
Добавить уровень 1 в документ AND
local del del := [ KINDDOC = 'AND' and LVLNUM = '1' and DTOS( DATDOC ) = '] + DTOS( data ) + [' ] ADDALL( 'AND', '1', " ",, fld, aa,,,, YEAR( data ), MONTH( data ),,, false,, del, { false, false, false, false, false } )
Добавить уровень 2 в документ UTH
ADDALL( 'UTH', '2', ( acs1 )->RGNUM,, fld, aa,, ( acs1 )->( GETFORM( GETAREA() ) ),,,,,, false,,, { false, false, false, false, false } )