|
Как программно заполнить табличное поле с данными Построитель.Отбор? | ☑ | ||
---|---|---|---|---|
0
Vladal
22.06.15
✎
13:27
|
Во внешней обработке есть реквизит Построитель, на форму поместил табличное поле с данными Построитель.Отбор.
В модуле объекта написал: Построитель.Текст = "ВЫБРАТЬ ..."; Построитель.ЗаполнитьНастройки(); На форме в поле отборов пользователь вручную добавляет нужный ему отбор, но надо бы эти поля добавить в табличное поле отбора. Как программно заполнить это табличное поле? Понимаю, что надо перебирать отбор построителя, есть ли какой пример? |
|||
1
Fragster
гуру
22.06.15
✎
13:28
|
Построитель.Отбор.Добавить...
|
|||
2
DTXqueque
22.06.15
✎
13:29
|
В данных ТП добавить Построитель.Отбор
|
|||
3
Vladal
22.06.15
✎
13:32
|
Я в данных ТП и установил ПОстроитель.Отбор. Пользщователдь может в поле сам добавлять нужные ему отборы.
НО надо добавить эти поля. чтобы пользователь просто уже выбирал правое значение фильтров. |
|||
4
DTXqueque
22.06.15
✎
13:33
|
Отбор (Filter)
Отбор (Filter) Элементы коллекции: ЭлементОтбора Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются элементы отбора. Возможно обращение к элементу отбора посредством оператора [...]. В качестве аргумента передается индекс элемента (нумерация с 0). Свойства: <Имя элемента отбора> (<Filter element name>) Методы: Добавить (Add) Индекс (IndexOf) Количество (Count) Найти (Find) Получить (Get) ПолучитьДоступныеПоля (GetAvailableFields) Сбросить (Reset) Сдвинуть (Move) Удалить (Delete) УстановитьДоступныеПоля (SetAvailableFields) Описание: Предназначен для хранения условий отбора. Представляет собой коллекцию элементов отбора. Используется для установки фильтрации данных в различных выборках, наборах записей, визуальных списках. Каждый из элементов может устанавливать одно условие. Весь объект представляет собой составное условие, состоящее из отдельных условий, описываемых элементами, соединяющимися по "И". Доступность: Сервер, толстый клиент, внешнее соединение |
|||
5
Vladal
22.06.15
✎
13:34
|
(4) и? какие из букв мне должны помочь?
|
|||
6
DTXqueque
22.06.15
✎
13:35
|
(5) Добавить (Add)
|
|||
7
Vladal
22.06.15
✎
13:38
|
(6) Возможно, я не понял ответ.
Поля отбора построителя и так есть, задавал их в тексте запроса: |{ГДЕ | ВТ_Результат.Номенклатура., | ВТ_Результат.ДокументОприходования., | ВТ_Результат.Цена, | ВТ_Результат.СтавкаНДС.*, | ВТ_Результат.ЦенаДляПоследующейОбработки, Сейчас пользователь в поле отбора ручками жмёт ПКМ -> Добавить -> выбирает из списка полей нужное поле -> устанавливает нужное значение фильтра. А я хочу доступные поля отбора вывести в ТП, а пользователь будет проставлять только правое значение отбора. |
|||
8
Vladal
22.06.15
✎
13:39
|
*После точек в Номенклатура., и ДокументОприходования., должны быть звёздочки
|
|||
9
DTXqueque
22.06.15
✎
13:44
|
(7) Ну так и добавь нужные тебе отборы с помощью (6). А пользователь просто правые значеня будет клацать.
|
|||
10
Vladal
22.06.15
✎
13:47
|
(9) Если я правильно понял, получить список отборов в цикле?
Для каждого ПолеОтбора из Построитель.Отбор Цикл НоваяСтрока = ЭлементыФормы.ОтборПостроителя Добавить(); НоваяСтрока.Имя = ПолеОтбора.Имя; ... КонецЦикла |
|||
11
Vladal
22.06.15
✎
13:55
|
Получилось!
// Заполнение поле отбора Для каждого ПолеОтбора Из Построитель.ДоступныеПоля Цикл ЭлементыФормы.ОтборПостроителя.Значение.Добавить(ПолеОтбора.Имя, ПолеОтбора.Имя); КонецЦикла; |
|||
12
DTXqueque
22.06.15
✎
13:58
|
>ЭлементыФормы.ОтборПостроителя.Значение
Мощно :) |
|||
13
Vladal
22.06.15
✎
13:59
|
(12) как правильно?
|
|||
14
hhhh
22.06.15
✎
14:00
|
ОтборПостроителя
|
|||
15
Vladal
22.06.15
✎
14:02
|
(14) нет, так он не давал. Я не определял реквизит с типом ПОстроитель.Отбор, просто на форму положил ТП и назначил его данные как ПОстроитель.Отбор.
|
|||
16
Зеленый пень
22.06.15
✎
14:03
|
(15) Загляни в реквизиты формы и найдешь там свой построитель. Или у тебя Построитель - реквизит основного реквизита формы :)
|
|||
17
hhhh
22.06.15
✎
14:03
|
(15) ну тогда ПОстроитель.Отбор.
|
|||
18
DTXqueque
22.06.15
✎
14:04
|
(13) >Во внешней обработке есть реквизит Построитель
ЭлементыФормы.ОтборПостроителя.Значение -> Построитель.Отбор |
|||
19
Vladal
22.06.15
✎
14:06
|
(17) Так получилось более изящно. Спасибо!
Для каждого ПолеОтбора Из Построитель.ДоступныеПоля Цикл Построитель.Отбор.Добавить(ПолеОтбора.Имя); КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |