|
УФ КомпоновщикНастроекКомпоновкиДанных, отбор на форме | ☑ | ||
---|---|---|---|---|
0
Djoko
19.06.14
✎
11:23
|
Добрый день!
Есть необходимость вывести на форму таблицу с произвольными отборами. В толстом клиенте реализовал через построитель отчета. В тонком начал пробовать через КомпоновщикНастроекКомпоновкиДанных. Создал реквизит КомпоновщикНКД с типом КомпоновщикНастроекКомпоновкиДанных, на форму вывел таблицу, с данными из КомпоновщикНКД.Настройки.Отбор. Далее запускаю код, который должен(по крайней мере мне бы это хотелось) для произвольного текста запроса заполнить настройки компановщика, и на форме можно было добавить отборы, по доступным полям. &НаКлиенте Процедура ЗаполнитьНастройки(Команда) СтрокаКд = ЗаполнитьМакетНаСервере(); Отчет.КомпоновщикНКД.ЗагрузитьНастройки(ПолучитьИзВременногоХранилища(СтрокаКд)); КонецПроцедуры &НаСервере Функция ЗаполнитьМакетНаСервере() ЭтотОбъект = РеквизитФормыВЗначение("Отчет"); СКД = ЭтотОбъект.ПолучитьМакет("СКД"); ТекстЗапроса = СформироватьТекстЗапроса(); НаборДанных = СКД.НаборыДанных.Найти("НаборДанных1"); НаборДанных.Запрос = ТекстЗапроса; НаборДанных.АвтоЗаполнениеДоступныхПолей = Истина; Отчет.КомпоновщикНКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД));//в отладке доступные поля отбора есть, но при возвращение на клиент они отсутствуют Возврат ПоместитьВоВременноеХранилище(Отчет.КомпоновщикНКД.ПолучитьНастройки());//В полученных настройках доступные поля есть, но при возвращение на клиент, они опять же отсутствуют КонецФункции Подскажите, пожалуйста, ЧЯДН? Или как можно ещё реализовать в УФ отборы на форме? |
|||
1
Djoko
19.06.14
✎
14:09
|
Знатоки управляющих форм, тут же наверняка есть такие, не проходите мимо, подскажите!
|
|||
2
ironkrab
19.06.14
✎
14:20
|
Не совсем понял что за таблица, для чего. Чем не подходит динамический список.
Или в эту таблицу пользователь вводит данные? |
|||
3
Djoko
19.06.14
✎
14:33
|
Немного не точно написал, в первом посте: Таблица не с данными, а именно таблица в которой пользователи настраивают отборы, как в скд.
Т.е. еслив форме отчета у Тз в данных указать компоновщик настроек.Настройка.отбор, то в таблице можно будет настраивать отборы для этого отчета. Мне нужно так же, но для произвольного запроса. |
|||
4
banco
19.06.14
✎
14:34
|
(0)пробуй так
URLСхемы = ПоместитьВоВременноеХранилище(СКД, Новый УникальныйИдентификатор()); Отчет.КомпоновщикНКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(URLСхемы)); |
|||
5
banco
19.06.14
✎
14:38
|
(0) и эти две строки лишнее
Возврат ПоместитьВоВременноеХранилище(Отчет.КомпоновщикНКД.ПолучитьНастройки()); Отчет.КомпоновщикНКД.ЗагрузитьНастройки(ПолучитьИзВременногоХранилища(СтрокаКд)); |
|||
6
ironkrab
19.06.14
✎
14:42
|
(3) Если (4)и (5) не поможет, тогда глянь, как реализована консоль запросов для УФ, там такое вроде есть...
|
|||
7
Djoko
19.06.14
✎
14:45
|
(4) спасибо, помогло!:)
Теперь меня мучает другой вопрос, почему вариант Отчет.КомпоновщикНКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД)); инициализирует настройки на сервере, но на клиент возвращается пустой, а URLСхемы = ПоместитьВоВременноеХранилище(СКД, Новый УникальныйИдентификатор()); Отчет.КомпоновщикНКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(URLСхемы)); инициализирует настройки и на сервере и на клиенте:) По истине, "дьявол кроется в деталях." © |
|||
8
blopp
19.06.14
✎
14:49
|
(7) Потому что схема компоновки данных не реализована на клиенте -> не может быть туда передана -> невозможно и создать / передать на клиента источник доступных настроек на основе схемы.
|
|||
9
blopp
19.06.14
✎
14:51
|
в дополнение к (8)
Ну а источник на временном хранилище есть и на клиенте и на сервере. |
|||
10
Djoko
19.06.14
✎
15:04
|
(8) Спасибо за пояснение!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |