ObjectCollector.Get
| Get (Получение объекта) | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
Функция ищет переданный объект в коллекции сборщика, при нахождении, отдает найденный объект, иначе добавляет в коллекцию предложенный объект и отдает его как результат. Аргумент может быть только существующим выбранным объектом базы данных, в ином случае, функция всегда возвратит исходный объект.
Синтаксис
ObjectCollector.Get(<Объект, для добавления или получения из коллекции (DB)>):<Подобный объект из коллекции (DB)>
Аргументы
<Объект, для добавления или получения из коллекции (DB)>- Объект базы данных, который требуется пропустить через сборщик.
Возвращаемое значение
Возвращается исходный или подобный объект базы данных.
Примеры
//З -- объект запроса, создающий выборку по документам
ObjC:=ObjectCollector.Create();
//Цикл по документам, массу которых необходимо рассчитать
While З.Next(1) Do
Док:=З.зДок;
Масса:=0;
Мест:=0;
bTab:=Док.Copy().LineParts("Номенклатура");
bTab.Select();
While bTab.Next() Do
//Так как номенклатура частично повторяется во всех документах,
// получение номенклатуры из сборщика объектов экономит память и время загрузки свойств для большинства позиций
зН:=ObjC.Get(bTab.Номенклатура);
Масса:=Масса+зН.МассаБрутто*bTab.Количество;
Мест:=Мест+bTab.Количество/зН.ОсновнойКоэффициент;
EndDo;
ТаблицаМасс.AddLine("Документ,Масса,Мест",Док,Масса,Мест);
EndDo;