8.2 Как вытащить отбор программно созданной СКД на форму? #469159


#0 by Bugmenot
В 8.1 можно было делать удобный отбор элементов из произвольного источника, т.е. на форму вытаскивалось табличное поле с типом Построитель.Отбор и затем делалось примерно так: После чего пользователь получал возможность устанавливать нужные ему отборы в форме, а программист мог легко получить список элементов, удовлетворяющих отбору: А вот как все это провернуть в 8.2, используя СКД?... У меня никак не получается заполнить доступные поля отбора, там пусто... Вот код: &НаСервере
#1 by Bugmenot
+ НастройкиВыбора - это реквизит типа "КомпоновщикНастроекКомпоновкиДанных"
#2 by Mort
Во-первых отбор в СКД может быть отдельный для различных группировок. В общем случае устанавливается для верхней. По программному добавлению отбора:
#3 by Bugmenot
То есть получается, что имея просто текст запроса типа "ВЫБРАТЬ * ", доступные поля для отбора не заполнить автоматически никак? Только перебирать что-то?... Не очень понятно что, кстати.
#4 by Asmody
как-бэ идеологически неверно "заполнять" СКД программно. правильнее будет сделать несколько макетов и использовать нужный
#5 by Mort
Запрос тут при чем? Это просто один из возможных источников данных. Чтобы задавать отбор, в группировку должны быть выбраны поля.
#6 by Mort
А если запрос на "этапе компиляции" не определен?
#7 by Bugmenot
А! Теперь понял о чем ты, торможу ) Добавил я выбранное поле: Но вот в полях отбора (НастройкиВыбора.Настройки.Отбор) по прежнему пусто! Как мне туда автоматом все доступные поля загрузить (исходя из текста запроса)?...
#8 by Bugmenot
В общем случае, я не знаю к какому объекту выполняется запрос...
#9 by Mort
В отбор тож надо элементы добавлять.
#10 by Bugmenot
А куда конкретно? Если в ДоступныеПоляОтбора - то они "только чтение"... А если я в Отбор добавлю, то это не правильно. Мне не нужно устанавливать никакой отбор программно, мне нужно дать возможность пользователю это сделать из формы.
#11 by Asmody
это как? или ты пытаешься сделать "супер-универсальный отчет"?
#12 by Asmody
описывай тогда набор данных объект и заполняй его программно
#13 by Bugmenot
(11,12) Тут как бы отчет вовсе не причем ) Пользователем выбирается справочник, настраивается отбор (таб поле на форме) и получается список элементов по этому отбору, с которым я уже потом какие-то действия выполняю... Как это сделать через Построитель, я в описал, а вот с компоновкой не выходит! В табличном поле (которое отбор) добавляем строку, а в доступных полях - пусто.
#14 by Bugmenot
ап?
#15 by Bugmenot
Добавил поле набора данных, добавил группировку, ничего не помогает (
#16 by Bugmenot
Не получается даже просто поле в отбор добавить
#17 by Bugmenot
Должны же сюда иногда заглядывать люди умеющие с компоновкой программно работать )
#18 by Bugmenot
^
#19 by mikecool
Выбрать Ссылка, Дата {Выбрать Ссылка.*, Дата} - вот эти поля должны попасть в отбор Из ...
#20 by Mort
Я компоновщик настроек создавал и инициализировал в не просто так.
#21 by Mort
+ Сори, не заметил. А что говорит?
#22 by Bugmenot
А ни чё не говорит, поле в отбор добавляется, но оно "крестом" помечено - типа нет такого поля Тоже к сожалению, не помогает ( Последний вариант такой (мне кажется настройки все-таки надо загружать в КомпоновщикНастроек, а не Инициализировать):
#23 by Bugmenot
+ Немножко не так: Не помогает только, все-равно...
#24 by Bugmenot
#25 by 5 Элемент
Посмотри как сделана консоль для 8.2 Компоновщик нужно инициализировать по схеме, которая помещена во временное хранилище.
#26 by WebTraveller
Бился с этой же проблемой полдня. как а основании просто текста запроса добавить доступные поля отборов, порядка и т.д. Оказывается очень просто :))
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С