Доступные поля отбора пустые

1. bezplana 22.09.14 11:53 Сейчас в теме
КомпоновщикНастроек - реквизит обработки. На форму обработки вынес реквизит КомпоновщикНастроекНастройкиОтбор, чтобы настраивать отбор, но в режиме 1с предприятия на форме поля "доступные поля отбора" пустые. Что с этим делать ? Код ниже
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	СхемаКомпоновкиДанных = Новый СхемаКомпоновкиДанных;
			
	ИсточникиДанных = СхемаКомпоновкиДанных.ИсточникиДанных.Добавить();
	ИсточникиДанных.Имя = "Local";
	ИсточникиДанных.ТипИсточникаДанных = "Local";
	
	НаборДанных = СхемаКомпоновкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных"));
	НаборДанных.Имя = "ОсновнойНаборДанных";
	НаборДанных.ИсточникДанных = "Local";
	
	НаборДанных.Запрос = "ВЫБРАТЬ
	|	СправочникНоменклатура.Ссылка КАК Номенклатура,
	|	ЦеныНоменклатурыСрезПоследних.ТипЦен,
	|	ЦеныНоменклатурыСрезПоследних.Цена
	|ИЗ
	|	Справочник.Номенклатура КАК СправочникНоменклатура
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
	|		ПО СправочникНоменклатура.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура
	|{ГДЕ
	|	СправочникНоменклатура.Ссылка.* КАК Номенклатура,
	|	ЦеныНоменклатурыСрезПоследних.ТипЦен.*,
	|	ЦеныНоменклатурыСрезПоследних.Цена}";
	
	
	ПолеНабораДанныхСхемыКомпоновкиДанных = СхемаКомпоновкиДанных.НаборыДанных.ОсновнойНаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
	ПолеНабораДанныхСхемыКомпоновкиДанных.Поле = "Номенклатура";
	ПолеНабораДанныхСхемыКомпоновкиДанных.ПутьКДанным = "Номенклатура";
	ПолеНабораДанныхСхемыКомпоновкиДанных.Заголовок = "Номенклатура";
	                 
	ВыбранноеПолеКомпоновкиДанных = СхемаКомпоновкиДанных.НастройкиПоУмолчанию.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
	ВыбранноеПолеКомпоновкиДанных.Поле = Новый ПолеКомпоновкиДанных("Номенклатура");
	ВыбранноеПолеКомпоновкиДанных.Использование = Истина;
	
	ГруппировкаКомпоновкиДанных = СхемаКомпоновкиДанных.НастройкиПоУмолчанию.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
	ГруппировкаКомпоновкиДанных.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
	ГруппировкаКомпоновкиДанных.Использование = Истина;
	
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, СхемаКомпоновкиДанных.НастройкиПоУмолчанию, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
	
	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , , Истина);
		
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
	
	ТаблицаЗначений =  Новый ТаблицаЗначений;	
	ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений);
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);	
		   	         
КонецПроцедуры

Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Boneman 298 22.09.14 12:14 Сейчас в теме
(1) bezplana, мне что-то непонятно,
зачем сразу в процедуре "при создании на сервере",
сгорожен процессор вывода, с выводом чего-то в какую то мистическую таблицу значений ?
3. bezplana 22.09.14 12:24 Сейчас в теме
(2) Boneman, Дружище, если тебе есть что ответить или подсказать по теме - отвечай, а твои замечания, по части "мифической таблицы" и процедуры "при создании на сервере" абсолютно не к месту. Вопрос банелен - в каком месте и что мне нужно написать, чтобы поля, отмеченные в построителе, отображались в коллекции "Доступные поля отбора".
4. Boneman 298 22.09.14 12:28 Сейчас в теме
(3) bezplana, дружище, не хочешь объяснять суть твоего кода, - не надо.
Пусть другие, вникают в твои изыски.
5. Allexe8.1 22.09.14 12:37 Сейчас в теме
(1) bezplana,
ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных);
КомпоновщикНастроек .Инициализировать(ИсточникДоступныхНастроек );
6. bezplana 22.09.14 12:42 Сейчас в теме
(5) Allexe8.1, Попробовал, не получатся. Коллекция "доступные поля отбора" у переменной СхемаКомпоновкиДанных - пустая
7. WalterMort 242 22.09.14 13:05 Сейчас в теме
//Схему компоновки данных надо помещать во временное хранилище, иначе при выходе с сервера настройки компоновки данных пропадут
АдресСхемыКомпоновкиДанных = ПоместитьВоВременноеХранилище(СКД, Новый УникальныйИдентификатор);
	
	КомпоновщикНастроекКомпоновкиДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемыКомпоновкиДанных));
Necytij; SagittariusA; FronGon; d_bat; devonec_team; dammit666; HomeInc; Kutuzov; krylovim; rjnktnf; dj_serega; rad-scorpion; bezplana; +13 Ответить
8. WalterMort 242 22.09.14 13:11 Сейчас в теме
+(7) В твоём случае лучше использовать уникальный идентификатор формы для временного хранилища.
9. bezplana 22.09.14 13:25 Сейчас в теме
(7) WalterMort, спасибо большое, действительно помогло. На 1с итс не нашел инфы по этой теме, могли бы подсказать откуда почерпнули столь важный сведения?
10. WalterMort 242 22.09.14 13:29 Сейчас в теме
(9) В этих ваших интернетах.
11. dj_serega 392 25.03.16 17:58 Сейчас в теме
(7) WalterMort, Помогло! Спасибо!
12. jirogirg 07.11.18 16:07 Сейчас в теме
(7) Блин, спасибо огромное. Кто бы мог подумать, что в этом вся проблема. Я всё пытался, чтобы в СКД в доступных полях информация появилась, а тут дело в другом было.
Оставьте свое сообщение

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