Difference between revisions of "Tab.Column.ForbidMassLoad"
m (1 revision imported) |
|
(No difference)
|
Latest revision as of 07:53, 7 February 2021
ForbidMassLoad (Запрет загрузки столбца) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Атрибут позволяет получать или изменять режим запрета загрузки элементов ячеек столбца таблицы из базы данных при вызове функции MassLoadObjects. Используется в основном для невизуальных таблиц, полученных из объекта запроса. Так как сам объект запроса использует функцию MassLoadObjects в перед сортировкой таблицы запроса, программа может отключить столбцы, не требующие загрузки для ускорения и экономия памяти. Кроме того, в объекте запроса есть другие способы изменения поведения перед сортировкой таблиц запроса.
Синтаксис
Tab.Column.ForbidMassLoad:<Запретить загрузку столбца функцией Massload (INT)>
Возвращаемое значение
Возвращает режим запрета загрузки элементов ячеек текущего столбца таблицы из базы данных при вызове функции MassLoadObjects.
Примеры
//Создание запроса по документам "Реализация" в диапазоне дат с "НачДата" по "КонДата" //В запрос будут входить все документы в строчной части "Номенклатура" которых есть объекты с реквизитом флАлкогольнаяПродукцияравным 1. ТЗ:="зСтатус:=Doc.Реализация.@Status;Condition(зСтатус>1);зДата:=Doc.Реализация.DocDate;Condition((зДата>=НачДата)And(зДата<КонДата)); |зДок:=Doc.Реализация; |зАлк:=Doc.Реализация.Номенклатура.Номенклатура.флАлкогольнаяПродукция; |Condition(зАлк=1); |зН:=Doc.Реализация.Номенклатура.Номенклатура; |зЮЛ:=Doc.Реализация.ЮрЛицо; |Group зН;"; //Запрос останавливается до начала постпроцессинга З:=Query.Create(); З.Execute(ТЗ,0); //Получение таблицы запроса и модификация ее необходимым образом //При сортировке таблицы по столбцу "зН", система произвела бы загрузку всех объектов БД, присутствующих в таблице, // в том числе в столбце "зДок", загрузка это столбца нам не нужна, но сами значения будут использоваться // если разрешить загрузку, это не только замедлит выполнение постпроцесса, но и сильно потратит память, если документов достаточно много. Тб:=З.ResultTable; Тб.AddColumn("Контрагент"); Тб.AddColumn("пДок"); Тб.Column("зДок").ForbidMassLoad:=1; //Заполнение требуемых доп. столбцов .. //Продолжение выполнения запроса З.Postprocess();