|
Нет полей для отбора в компоновщике настроек... | ☑ | ||
---|---|---|---|---|
0
mikecool
07.07.19
✎
15:50
|
Продолжаю ваять универсальную обработку
реквизит обработки: КомпоновщикНастроек, тип КомпоновщикНастроекКомпоновкиДанных в ОФ на форме в поле лежит КомпоновщикНастроек.Настройки.Отбор в УФ на форме в поле лежит Объект.КомпоновщикНастроек.Настройки.Отбор, т.е. он же компоновщик инициализируется в ОФ перед открытием формы, в УФ - ПриСозданииНаСервере в УФ смотрю настройки - в отборе доступные поля есть, при попытке в интерфейсе добавить новое поле отбора - доступных полей нет чего я делаю не так? |
|||
1
mikecool
07.07.19
✎
15:54
|
гм... при добавлении нового отбора - действительно полей для выбора нет...
где то потерялись настройки, вот только где? |
|||
2
mikecool
07.07.19
✎
15:55
|
инициализирую так:
пОбъект.ИнициализироватьКомпоновщикНастроекВыгрузки(); ЗначениеВРеквизитФормы(пОбъект, "Объект"); на этом моменте компоновщик заполнен а вот далее - нет (( |
|||
3
mikecool
07.07.19
✎
16:09
|
нашел ответ здесь v8: КомпоновщикНастроек на форме
и ведь помнил об этом, даже закоментаренные строки в модуле есть, но подумал - раз в модуле, значит должно быть на сервере, а значит и должно нормально работать для УФ )) |
|||
4
mikecool
07.07.19
✎
16:21
|
а вот проблема все равно есть, код в модуле объекта
Если СхемаВыгрузки = Неопределено Тогда ИнициализироватьСхемуВыгрузки(); КонецЕсли; ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаВыгрузки, КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки); Результат = Новый ТаблицаЗначений; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Если Результат.Количество() = 0 Тогда Возврат Новый Массив; Иначе Возврат Результат.ВыгрузитьКолонку("Ссылка"); КонецЕсли; при использовании ОФ возвращает результат, при УФ - нет при УФ приходится еще раз вызывать ИнициализироватьСхемуВыгрузки(); - этот метод выполняется для ОФ один раз и сохраняется в переменную, в УФ значение переменной, ессно, затирается на сервере однако разве это должно повлиять на результат? для УФ что-то надо изменить? |
|||
5
mikecool
07.07.19
✎
16:37
|
нашел это v8: СКД При компоновке результата
но метод ПолучитьНастройки() возвращает как раз все с учетом пользовательских настроек... |
|||
6
mikecool
07.07.19
✎
16:40
|
смотрю МакетКомпоновки - источник данных установлен, запрос верный, параметр запроса по отбору тоже установлен
|
|||
7
mikecool
07.07.19
✎
16:41
|
непонятно же...
|
|||
8
mikecool
07.07.19
✎
17:13
|
все нормально, все хорошо
упр интерфейс проверял в соседней базе ))) в которой не было данных по отборам ))) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |