Как в таблице добавить вес, объем и телефон покупателя?

1. user1716946 18.12.21 17:54 Сейчас в теме
Всем привет. У меня просьба, пожалуйста сильно не критикуйте, я здесь впервые и я новичок в програмировании.
Решаю такую задачу в 1с управлении торговлей:

Сделать печатную форму для документа «Реализация товаров и услуг» со следующими данными:
Шапка:
Организация
Покупатель
Телефон покупателя
Таблица
Номер по порядку
Наименование товара
Количество
Цена
Сумма
Вес
Объем
В итогах вывести поля
Сумма
Вес
Объем

вывел всю инфу кроме вес, объем, телефон покупателя, порядковый номер и итог суммы. Как это можно сделать? я новичок. знаю, что проблема в запросе конструктора, но как ее решить? в запросе, я пока пытаюсь вывести номер телефона Вот код:

Функция СведенияОВнешнейОбработке() Экспорт
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    МассивНазначений.Добавить("Документ.РеализацияТоваровУслуг"); //Указываем документ к которому делаем внешнюю печ. форму
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов... 
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Наименование", "Заказ для реализации товаров"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
    ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
    ПараметрыРегистрации.Вставить("Версия", "1.0");           
    ПараметрыРегистрации.Вставить("Информация", "Эту ВПФ мы сделали для того что бы посмотреть возможности БСП "); 
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд, "Тестовое задание1", "ТестовоеЗадание1", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
КонецФункции // СведенияОВнешнейОбработке()  
Функция ПолучитьТаблицуКоманд()
    Команды = Новый ТаблицаЗначений;
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));//как будет выглядеть описание печ.формы для пользователя
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); //имя макета печ.формы
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); //ВызовСерверногоМетода
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
КонецФункции
Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление; 
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры 
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
        КоллекцияПечатныхФорм, 
        "ТестовоеЗадание1", 
        "Тестовое задание1", 
        СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати));
КонецПроцедуры // Печать()  
Функция СформироватьПечатнуюФорму(СсылкаНаОбъект, ОбъектПечати)
	ТабличныйДокумент = Новый ТабличныйДокумент;
    МакетОбработки=ПолучитьМакет("ТестовыйМакет");
    ОбластьШапки=МакетОбработки.ПолучитьОбласть("Шапка");
	ОбластьШапки.Параметры.Организация=СсылкаНаОбъект.Организация; 
	ОбластьШапки.Параметры.Покупатель=СсылкаНаОбъект.Партнер;
	//ОбластьШапки.Параметры.Телефон=СсылкаНаОбъект.СправочникТабличнаяЧасть.Партнеры.КонтактнаяИнформация.НомерТелефона;  
	
	    Запрос = Новый Запрос;
		Запрос.Текст = "ВЫБРАТЬ
		               |	РеализацияТоваровУслуг.Партнер.КонтактнаяИнформация.(
		               |		НомерТелефона КАК ПартнерНомерТелефона
		               |	) КАК Партнер
		               |ИЗ
		               |	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
		               |ГДЕ
		               |	РеализацияТоваровУслуг.Партнер.Ссылка = &Ссылка"";
		Запрос.УстановитьПараметр("Ссылка",СсылкаНаОбъект);
		Выборка = Запрос.Выполнить().Выбрать(); 
		Пока Выборка.Следующий() Цикл  
			ЗаполнитьЗначенияСвойств(ОбластьШапки.Параметры,Выборка); 
			Телефон = Выборка.ПартнерНомерТелефона;
		КонецЦикла;      
		ОбластьШапки.Параметры.Телефон = Телефон;
		
    ТабличныйДокумент.Вывести(ОбластьШапки);  
	ОбластьСтроки=МакетОбработки.ПолучитьОбласть("Таблица");  
	Для каждого ТекущаяСтрока Из СсылкаНаОбъект.Товары Цикл
	    //ОбластьСтроки.Параметры.Номер=ТекущаяСтрока.Номер;
	    ОбластьСтроки.Параметры.Товар=ТекущаяСтрока.Номенклатура; 
	    ОбластьСтроки.Параметры.Количество=ТекущаяСтрока.Количество;
	    ОбластьСтроки.Параметры.Цена=ТекущаяСтрока.Цена;	
	    ОбластьСтроки.Параметры.Сумма=ТекущаяСтрока.Сумма;   
		//ОбластьСтроки.Параметры.Вес=ТекущаяСтрока.Вес;
		//ОбластьСтроки.Параметры.Объем=ТекущаяСтрока.Объем;
	    ТабличныйДокумент.Вывести(ОбластьСтроки);   
	КонецЦикла; 
	ОбластьПодвала=МакетОбработки.ПолучитьОбласть("Подвал"); 	
	//ОбластьПодвал.Параметры.ИтогоСумма = ИтогоСумма;
	//ОбластьПодвала.Параметры.Сумма=СсылкаНаОбъект.Товары.Сумма; 
	//ОбластьПодвала.Параметры.Вес=СсылкаНаОбъект.Товары.Вес;
	//ОбластьПодвала.Параметры.Объем=СсылкаНаОбъект.Товары.Объем;
	ТабличныйДокумент.Вывести(ОбластьПодвала);
    Возврат ТабличныйДокумент; 
КонецФункции // СформироватьПечатнуюФорму(СсылкаНаОбъект, ОбъектПечати)()

Показать

А в прикрепленном файл картинка, это то что получилось
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VladimirB 17 20.12.21 08:24 Сейчас в теме
Вам нужно левое соединение с регистром КонтактнаяИнформация
что-то типа такого:

ВЫБРАТЬ
КонтактнаяИнформация.Представление
ИЗ
Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
левое СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО РеализацияТоваровУслуг.Контрагент = КонтактнаяИнформация.Объект И КонтактнаяИнформация.Вид = &Вид
ГДЕ
РеализацияТоваровУслуг.Партнер.Ссылка = &Ссылка"";

где &Вид это вид вашего телефона
Оставьте свое сообщение

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