8.3 -в документе формы в табличной части получить значения регистра сведений

1. webresurs 209 14.04.17 09:48 Сейчас в теме
Из книги - 1С:Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы - М.Г. Радченко, Е.Ю. Хрусталева
- Занятие 15 — План видов характеристик

справочники, регистры и характеристики в по занятию сделал работает.

Сейчас в документе надо прикрутить(получить) значение регистра сведений в табличную часть в зависимости от регистра Паспорт

запрос получения регистра сведений:
ВЫБРАТЬ
	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств.Владелец КАК НаборСвойствВладелец,
	ПаспортЗначенияСвойствНоменклатуры.Значение КАК Значение,
	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.Наименование КАК ВидСвойстваНаименование,
	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.НаименованиеПолное,
ИЗ
	РегистрСведений.ПаспортЗначенияСвойствНоменклатуры КАК ПаспортЗначенияСвойствНоменклатуры

ГДЕ
	ПаспортРегистрацияВыдачи.Ссылка В(&МассивОбъектов)
Показать
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
5. webresurs 209 18.04.17 12:21 Сейчас в теме +5 $m
Вопрос решен:
добавлением таблицы значений и реквизитов в нее
- у в модуль документа
&НаКлиенте
Процедура ПаспортПриИзменении(Элемент)
	// Вставить содержимое обработчика.
	  ВыполнитьЗаполнениеХарактеристик();
КонецПроцедуры

&НаСервере
Процедура ВыполнитьЗаполнениеХарактеристик()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств КАК НаборСвойств,
	|	ПаспортЗначенияСвойствНоменклатуры.Значение КАК Значение,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.Наименование КАК Наименование,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.НаименованиеПолное КАК НаименованиеПолное
	|ИЗ
	|	РегистрСведений.ПаспортЗначенияСвойствНоменклатуры КАК ПаспортЗначенияСвойствНоменклатуры
	|ГДЕ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств = &Паспорт 
	|";
	
	Запрос.УстановитьПараметр("Паспорт", Объект.Паспорт);
 
    Результат = Запрос.Выполнить();
     ВыборкаДетальныеЗаписи = Результат.Выбрать();
    Объект.Характеристики.Очистить();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл  
 	 НовСтр = Объект.Характеристики.Добавить();
         ЗаполнитьЗначенияСвойств(НовСтр, ВыборкаДетальныеЗаписи); //при условии что имена полей ТЧ и выборки совпадают
    КонецЦикла;		
	
КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. BigBoss 2 14.04.17 13:09 Сейчас в теме
Т.е. получить? Что бы данные из рс "подставлялись" в реквизиты?
3. webresurs 209 14.04.17 13:23 Сейчас в теме
что бы заполнялась табличная часть Характеристики(ТаблицаЗначений) при выборе реквизита Паспорт
Прикрепленные файлы:
4. webresurs 209 14.04.17 13:34 Сейчас в теме
ПаспортЗначенияСвойствНоменклатуры.НаборСвойств равен реквизиту(объекту) Паспорт

&НаКлиенте
Процедура ПаспортПриИзменении(Элемент)
	  ВыполнитьЗаполнениеХарактеристик(Паспорт);
КонецПроцедуры

&НаКлиенте
Процедура ВыполнитьЗаполнениеХарактеристик(Паспорт)
	
	Запрос.УстановитьПараметр("Паспорт",     Объект.Паспорт);
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств,
	|	ПаспортЗначенияСвойствНоменклатуры.Значение,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.Наименование,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.НаименованиеПолное
	|ИЗ
	|	РегистрСведений.Каргаполье_ПаспортЗначенияСвойствНоменклатуры КАК ПаспортЗначенияСвойствНоменклатуры
	|ГДЕ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств В(&МассивОбъектов)
	|";
	
	.....куть его знает...
	
КонецПроцедуры
Показать
5. webresurs 209 18.04.17 12:21 Сейчас в теме +5 $m
Вопрос решен:
добавлением таблицы значений и реквизитов в нее
- у в модуль документа
&НаКлиенте
Процедура ПаспортПриИзменении(Элемент)
	// Вставить содержимое обработчика.
	  ВыполнитьЗаполнениеХарактеристик();
КонецПроцедуры

&НаСервере
Процедура ВыполнитьЗаполнениеХарактеристик()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств КАК НаборСвойств,
	|	ПаспортЗначенияСвойствНоменклатуры.Значение КАК Значение,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.Наименование КАК Наименование,
	|	ПаспортЗначенияСвойствНоменклатуры.ВидСвойства.НаименованиеПолное КАК НаименованиеПолное
	|ИЗ
	|	РегистрСведений.ПаспортЗначенияСвойствНоменклатуры КАК ПаспортЗначенияСвойствНоменклатуры
	|ГДЕ
	|	ПаспортЗначенияСвойствНоменклатуры.НаборСвойств = &Паспорт 
	|";
	
	Запрос.УстановитьПараметр("Паспорт", Объект.Паспорт);
 
    Результат = Запрос.Выполнить();
     ВыборкаДетальныеЗаписи = Результат.Выбрать();
    Объект.Характеристики.Очистить();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл  
 	 НовСтр = Объект.Характеристики.Добавить();
         ЗаполнитьЗначенияСвойств(НовСтр, ВыборкаДетальныеЗаписи); //при условии что имена полей ТЧ и выборки совпадают
    КонецЦикла;		
	
КонецПроцедуры
Показать
Оставьте свое сообщение

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