Difference between revisions of "Form.QuickFilters"
m (1 revision imported) |
|
(No difference)
|
Latest revision as of 08:50, 7 February 2021
QuickFilters (Свойства элементов) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Атрибут получает список, наименованиями элементов которого являются столбцы таблицы, в которых пользователь ввел значения в быстрый фильтр отбора (быстрые фильтры отображаются в заголовках столбиков таблицы, к которым они были применены), значения элементов заполнены текстовыми значениями фильтров. Если ни один из столбцов не содержит фильтров, будет возвращен пустой список. Обычно функция может использоваться в обработчике события OnBeforeLoadElements, когда требуется наложить фильтры, заданные пользователем на список элементов, загружаемых программно.
Синтаксис
Form.QuickFilters:<Список с текущими быстрыми фильтрами столбцов таблицы, связанной с базой данных (LIST)>
Возвращаемое значение
Возвращает значение типа список.
Примеры
//Фрагмент события OnBeforeLoadElements для таблицы MainTab, где программа сама загружает список элементов ... aList:=Form.MainTab.QuickFilters; //Единственный возможный столбик с фильтром в этой таблице -- "ГруппаНоменклатуры" //Получить его фильтр СтрГруппа:=Uppercase(aList.GetByName("ГруппаНоменклатуры")); //bList -- подготовленный список элементов для загрузки в таблицу MainTab MainTab.Lock(); Try //Копируем список в основную таблицу bList.CopyTo(MainTab,1,bList.Size(),"@ELEMENT"); MainTab.Select(); While MainTab.Next() Do Эл:=MainTab.Get(MainTab.CurLine,"@ELEMENT"); //Заполняем дополнительные столбики таблицы MainTab.isFolder:=Эл.ГруппаНоменклатуры.isFolder(); MainTab.ГруппаНоменклатуры:=Эл.ГруппаНоменклатуры; MainTab.Сумма:=Эл.Сумма; MainTab.Процент:=Эл.Процент; //Накладываем быстрый фильтр, если он был установлен If СтрГруппа<>"" Then Стр:=Uppercase(Эл.ГруппаНоменклатуры); If Pos(СтрГруппа,Стр)=0 Then MainTab.CurLine:=MainTab.CurLine-1; MainTab.Remove(MainTab.CurLine+1); Continue; EndIf; EndIf; EndDo; //Сортируем таблицу с учетом пожеланий пользователя Стр:="isFolder-"+?(Form.MainTab.SortString="","",","+Form.MainTab.SortString); MainTab.Sort(Стр); Finally MainTab.Unlock(); EndTry;