Difference between revisions of "DB.Unload"
(No difference)
|
Revision as of 16:04, 18 September 2019
| Unload (Возврат в незагруженное состояние) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Функция очищает таблицу загруженных реквизитов и строчных частей для выбранных и загруженных объектов, т.е. объект возвращается в незагруженное состояние. Если объект является новым несохраненным объектом базы данных или изменен, функция не производит его очистку. Функция обычно используется для уменьшения размера используемой памяти в при работе с запросами. К примеру, вместо использования Copy при работе с объектами запросов, можно выполнить Unload на использованных элементах, содержащихся в таблице запроса.
Синтаксис
DB.Unload(<Оставить заголовок объекта (INT)>=0)
Аргументы
<Оставить заголовок объекта (INT)>- (необязательный аргумент) (планируется к реализации) При очистке реквизитов оставить объект в режиме загрузки заголовков.
Примеры
//Пример показывает цикл обработки таблицы с документами ВозвратОтПокупателя после выполнения запроса, вместо Copy используется Unload
ТЗ:="зДата:=BegOfDay(Doc.ВозвратОтПокупателя.DocDate);Condition((зДата>=НачДата)And(зДата<=КонДата));
|Док:=Doc.ВозвратОтПокупателя;
|зКО:=Doc.ВозвратОтПокупателя.КодОперации;
|Condition(зКО IN СпКО);
|зИд:=Doc.ВозвратОтПокупателя.УникальныйИдентификатор;
|зИд2:=Doc.ВозвратОтПокупателя.УникальныйИдентификатор2;
|Condition(зИд2<>тИд);
|Group Док;";
З:=Query.Create();
З.Execute(ТЗ,0);
aTab:=З.ResultTable;
aTab.Select();
While aTab.Next() Do
зДок:=aTab.Док;
If (зДок.Status()<2)Or((зДок.РезультатДоставки<>1)and(зДок.РезультатДоставки<>2)) Then
//Пропускаем необработанные документы
Continue;
EndIf;
...
//После работы с текущим документом, произведем его очистку, чтобы не заполнять запрос загруженными документами.
зДок.Unload();
EndDo;