Кто соскучился по СКД? Третий день бьюсь

1. user2033930 12.05.24 19:31 Сейчас в теме
Всем привет!

Третий день бьюсь с СКД (немного не моя тема). УТ 8.3.10 (сделал управляемую форму)
Пробовал на платформах 8.3.10, 23-24.
Пробовал через Источник во временном хранилище.
Пробовал типизировать заранее конечную таблицу вывода.

Результат одинаков: ТЗ для вывода (РезультатОтбора в конце листинга) - пуста.

Если СтрокаНастройкиОтбора.Заполнено Тогда
			
			КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
			ВнешнийМакетСКД     = Справочники.НастройкиОбменовСМаркетплейсами.ПолучитьМакет(СтрокаНастройкиОтбора.ИмяОтбора);
			КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ВнешнийМакетСКД));
			
			НастройкиСКД = ОбменСМаркетплейсамиУТ11КлиентСервер.ДеСериализоватьНастройкиОтбора(
СтрокаНастройкиОтбора.НастройкаОтбораXML);
			КомпоновщикНастроек.ЗагрузитьНастройки(НастройкиСКД);
		
			КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
			МакетВывода       = КомпоновщикМакета.Выполнить(ВнешнийМакетСКД, КомпоновщикНастроек.ПолучитьНастройки(),,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
			
			ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
			ПроцессорКомпоновки.Инициализировать(МакетВывода);
			
			РезультатОтбора = Новый ТаблицаЗначений;
			ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
			ПроцессорВывода.УстановитьОбъект(РезультатОтбора);
			
			ПроцессорВывода.Вывести(ПроцессорКомпоновки);
Показать


Помогите, пожалуйста. Где-то скрылась деталь, которой я найти не могу.
Найденные решения
9. user1880116 15.05.24 16:23 Сейчас в теме
(3)
У меня СКД через конструктор
Вообще мимо кассы.
1. Есть схема СКД, которая включает в себя как описание исходных данных так и настройки. В эти настройки входят выбираемые поля, отборы, сортировки, структура вывода. Эти настройки будут применены по умолчанию. Это то, что ты показываешь на картинках.
2. Когда ты делаешь "КомпоновщикНастроек.Инициализировать" оно устанавливает в компоновщик эти настройки из схемы.
3. Когда ты делаешь "КомпоновщикНастроек.ЗагрузитьНастройки" оно берет новые настройки (выбираемые поля, отборы, сортировки, структура вывода...) из параметра и устанавливает их в компоновщик. Описание исходных данных при этом не меняется.
4. В настройках, которые ты загружаешь, указан только отбор. Все остальные части (поля, сортировка...) там пустые.
5. При загрузке оно загружает эти пустые части поверх ранее установленых из схемы по умолчанию. Пустые настройки, это тоже корректные настройки, поэтому ничего нигде не падает.

Загрузи отборы вручную, через очистку и рекурсивное заполнение коллекции, и будет тебе счастье.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1880116 12.05.24 21:08 Сейчас в теме
(1)
скрылась деталь
В настройках компоновщика еще должны быть заполнены выбираемые поля и структура вывода. Вот эта строчка
КомпоновщикНастроек.ЗагрузитьНастройки(НастройкиСКД);
кроме настроек отбора загружает и их тоже. И возможно они там пустые.
4. glek 120 13.05.24 09:29 Сейчас в теме
(1) Компоновщик настроек.ПолучитьНастройки().
Посмотреть в отладчике, что там.
5. user2033930 13.05.24 09:52 Сейчас в теме
(4)
Прикрепленные файлы:
6. glek 120 13.05.24 09:57 Сейчас в теме
(5) Не то. Посмотреть надо на структуру.
7. user2033930 13.05.24 10:11 Сейчас в теме
(6) Тут по мне и не должно быть вариантов, это не отчеты, а запросы обменов. А варианты настроек в виде XML будут храниться в отдельном справочнике для пользовательского редактирования отборов. Или все-таки написать "Основной вариант"?
Прикрепленные файлы:
8. SlavaKron 13.05.24 12:30 Сейчас в теме
(7) Структура - это коллекция. Чтобы посмотреть ее элементы, нажмите кнопку "Показать значение в отдельном окне"
Прикрепленные файлы:
3. user2033930 13.05.24 08:09 Сейчас в теме
(2) Привет! У меня СКД через конструктор, и вроде заполнено всё, но мимо...
Прикрепленные файлы:
9. user1880116 15.05.24 16:23 Сейчас в теме
(3)
У меня СКД через конструктор
Вообще мимо кассы.
1. Есть схема СКД, которая включает в себя как описание исходных данных так и настройки. В эти настройки входят выбираемые поля, отборы, сортировки, структура вывода. Эти настройки будут применены по умолчанию. Это то, что ты показываешь на картинках.
2. Когда ты делаешь "КомпоновщикНастроек.Инициализировать" оно устанавливает в компоновщик эти настройки из схемы.
3. Когда ты делаешь "КомпоновщикНастроек.ЗагрузитьНастройки" оно берет новые настройки (выбираемые поля, отборы, сортировки, структура вывода...) из параметра и устанавливает их в компоновщик. Описание исходных данных при этом не меняется.
4. В настройках, которые ты загружаешь, указан только отбор. Все остальные части (поля, сортировка...) там пустые.
5. При загрузке оно загружает эти пустые части поверх ранее установленых из схемы по умолчанию. Пустые настройки, это тоже корректные настройки, поэтому ничего нигде не падает.

Загрузи отборы вручную, через очистку и рекурсивное заполнение коллекции, и будет тебе счастье.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот