Общее количество позиций и склад в форму печать

1. seregapplk 11.09.21 10:11 Сейчас в теме
Доброго времени суток.
Конфигурация Управление торговлей для Украины, редакция 3.1 (3.1.8.1) то же что и УТ11
Подскажите пожалуйста как добавить сумму колонки количество, общее количество позиций в форму печать. В обработке печать общих форм.
И нужно создать строку с отображением склада с которого отпускается товар.
Помогите пож.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
8. anykey_vrn 13.09.21 12:03 Сейчас в теме +1 $m
Самый простой способ перед циклом вывода строк ТЧ сделать счетчики и в цикле их переопределять.
ИтогКоличество = 0;
ИтогВес = 0
Для Каждого Стр из Товары Цикл
//Запоняем параметры строки
ИтогКоличество = ИтогКоличество + Стр.Количество;
ИтогВес  = ИтогВес + Стр.Вес;
КонецЦикла;


Еще как вариант:
Табличная часть (Tabular section)
Итог (Total)
Синтаксис:
Итог(<Колонка>)
Параметры:
<Колонка> (обязательный)
Тип: Число, Строка.
Индекс либо имя колонки, по которой подсчитывается итог.
Возвращаемое значение:
Тип: Число, Неопределено.
Описание:
Суммирует значения всех строк в указанной колонке.
Если в колонке установлен тип и он единственный, то при суммировании будет предприниматься попытка преобразования значения к типу Число.
Если колонке не присвоены типы, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них есть тип Число, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них нет типа Число, то результатом будет значение Неопределено.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Пример:
ВсегоПоДокументу = Состав.Итог("Всего");
Использование в версии:
Доступен, начиная с версии 8.0.
seregapplk; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. seregapplk 11.09.21 12:25 Сейчас в теме
сделал ("Склад", ДанныеПечати.Ссылка.Склад);

как проще сделать итог по количеству позиций?
3. seregapplk 11.09.21 13:46 Сейчас в теме
Не выводит в печатную форму.
Сообщение выводит если "Сообщить(ДанныеПечати.Ссылка.Склад);"
В форму нет.
В области "покупатель" создал ячейку с параметром "склад", что не так.
ОбластьМакета                                   = Макет.ПолучитьОбласть("Покупатель");
		ПредставлениеПолучателя                         = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ПолноеНаименование",,КодЯзыкаПечать);
		РеквизитыПокупателя                             = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ФактическийАдрес,Телефоны,",,КодЯзыкаПечать);
		 Склад                                          = ДанныеПечати.Ссылка.Склад;
		СтруктураДанныхПокупатель = Новый Структура;
		СтруктураДанныхПокупатель.Вставить("ПредставлениеПолучателя", ПредставлениеПолучателя);
		СтруктураДанныхПокупатель.Вставить("Получатель", ДанныеПечати.Получатель);
		СтруктураДанныхПокупатель.Вставить("РеквизитыПокупателя", РеквизитыПокупателя);
		СтруктураДанныхПокупатель.Вставить("Склад", ДанныеПечати.Ссылка.Склад);
		Сообщить(ДанныеПечати.Ссылка.Склад);
		ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПокупатель);
Показать
4. seregapplk 12.09.21 09:45 Сейчас в теме
удалось, нужно редактировать форму в самой программе.
как проще сделать итог по количеству позиций номенклатуры?
5. seregapplk 12.09.21 10:54 Сейчас в теме
ВсегоКлво = ВыборкаПоТоварам.Количество(); это количество наименований, как выбрать количество штук?
опять же как вывести в ячейку на форме?
6. seregapplk 12.09.21 11:29 Сейчас в теме
еще задачка, вес (
нужно добавить общее количество и вес
7. seregapplk 12.09.21 11:48 Сейчас в теме
Подскажите пожалуйста как добавить сумму колонки количество, общее количество позиций в форму печать. В обработке печать общих форм.
И нужно создать строку c общим Весом из карточки номенклатуры.
8. anykey_vrn 13.09.21 12:03 Сейчас в теме +1 $m
Самый простой способ перед циклом вывода строк ТЧ сделать счетчики и в цикле их переопределять.
ИтогКоличество = 0;
ИтогВес = 0
Для Каждого Стр из Товары Цикл
//Запоняем параметры строки
ИтогКоличество = ИтогКоличество + Стр.Количество;
ИтогВес  = ИтогВес + Стр.Вес;
КонецЦикла;


Еще как вариант:
Табличная часть (Tabular section)
Итог (Total)
Синтаксис:
Итог(<Колонка>)
Параметры:
<Колонка> (обязательный)
Тип: Число, Строка.
Индекс либо имя колонки, по которой подсчитывается итог.
Возвращаемое значение:
Тип: Число, Неопределено.
Описание:
Суммирует значения всех строк в указанной колонке.
Если в колонке установлен тип и он единственный, то при суммировании будет предприниматься попытка преобразования значения к типу Число.
Если колонке не присвоены типы, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них есть тип Число, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них нет типа Число, то результатом будет значение Неопределено.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Пример:
ВсегоПоДокументу = Состав.Итог("Всего");
Использование в версии:
Доступен, начиная с версии 8.0.
seregapplk; +1 Ответить
9. seregapplk 13.09.21 18:11 Сейчас в теме
Веса нет в таблице. Не получить его так просто.
10. anykey_vrn 14.09.21 09:21 Сейчас в теме
(9)Откуда тогда планируется получать вес?
11. seregapplk 14.09.21 09:53 Сейчас в теме +1 $m
из карточки номенклатуры
13. anykey_vrn 14.09.21 11:07 Сейчас в теме
(11) а таблица с номенклатурой для заполнения каким образом получается?

ИтогВес = ИтогВес + (Стр.Номенклатура.Вес*Стр.Количество);

Это вариант со счетчиком, если таблица с номенклатурой получается запросом, можно переделать запрос и в запросе напрямую получать и вычислять весь для строки
14. seregapplk 14.09.21 11:17 Сейчас в теме
о
(13)Спасибо я понял, тут хотя бы с количеством разобраться ))
12. seregapplk 14.09.21 10:55 Сейчас в теме
Вес ладно не до него пока
Для Каждого Стр из Товары Цикл
//Запоняем параметры строки
ИтогКоличество = ИтогКоличество + Стр.Количество;


Товары - Переменная не определена (Товары)


Функция ЗаполнитьТабличныйДокументРасходнаяНакладная(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати, КомплектыПечати, ПараметрыПечати, ПараметрыВывода)

	Перем КомплектПечатиПоСсылке;
	
	КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;	
	
	ДанныеПечати      	= ДанныеДляПечати.РезультатПоШапке.Выбрать();
	ВыборкаПоДокументам = ДанныеДляПечати.РезультатПоТабличнойЧасти.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);


	Если ПараметрыПечати <> Неопределено И ПараметрыПечати.Свойство("ОтображатьСкидки") Тогда
		ОтображатьСкидки = ПараметрыПечати.ОтображатьСкидки;
	Иначе
		ОтображатьСкидки = (Константы.ОтображениеСкидокВПечатныхФормахДокументовПродажи.Получить()
			<> Перечисления.ВариантыВыводаСкидокВПечатныхФормах.НеВыводитьСкидки);
	КонецЕсли; 
	
	КолонкаКодов = ФормированиеПечатныхФорм.ИмяДополнительнойКолонки();
	ВыводитьКоды = ЗначениеЗаполнено(КолонкаКодов);
	
	ИспользоватьРучныеСкидки         = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВПродажах");
	ИспользоватьАвтоматическиеСкидки = ПолучитьФункциональнуюОпцию("ИспользоватьАвтоматическиеСкидкиВПродажах");
	
	ПоказыватьНДС = Константы.ВыводитьДопКолонкиНДС.Получить();	
		
	ПервыйДокумент = Истина;
	
	Пока ДанныеПечати.Следующий() Цикл
		
		//Для печати комплектов
		Отказ = Ложь;
		
		ПодготовкаДляПечатиКомплектов(ДанныеПечати, КомплектыПечати, КомплектПечатиПоСсылке, Отказ);
		Если Отказ Тогда
			Продолжить;
		КонецЕсли;
		
		// Найдем в выборке товары по текущему документу
		СтруктураПоиска = Новый Структура("Ссылка", ДанныеПечати.Ссылка);
		НайденСледующий = ВыборкаПоДокументам.НайтиСледующий(СтруктураПоиска);
		
        // В одном вызове этой функции обрабатываются документы одного типа
		Если ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.РеализацияУслугПрочихАктивов")
		 ИЛИ ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.ВыкупВозвратнойТарыКлиентом") 
		 ИЛИ ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.ПередачаТоваровМеждуОрганизациями") Тогда
			ИспользоватьРучныеСкидки = Ложь;
			ИспользоватьАвтоматическиеСкидки = Ложь;
		КонецЕсли;
		
		Если ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.РеализацияУслугПрочихАктивов") Тогда
			ВыводитьКоды = Ложь;
		КонецЕсли;

		// Если в накладной только услуги - перейдем к следующему документу
		Если НайденСледующий Тогда
			ВыборкаПоТоварам = ВыборкаПоДокументам.Выбрать();			
			ЗаголовокСкидки = ФормированиеПечатныхФорм.НужноВыводитьСкидки(ВыборкаПоТоварам, ИспользоватьРучныеСкидки Или ИспользоватьАвтоматическиеСкидки, КодЯзыкаПечать);
			ЕстьСкидки = ЗаголовокСкидки.ЕстьСкидки;
			ЕстьНДС = ДанныеПечати.УчитыватьНДС;
			ВыборкаПоТоварам.Сбросить();
		Иначе
			Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
				НСтр("ru='В документе %1 отсутствуют товары. Печать накладной не требуется';uk='У документі %1 відсутні товари. Друк накладної не потрібний'"),
				ДанныеПечати.Ссылка
				);
				
			ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
				Текст,
				ДанныеПечати.Ссылка
			);
			Продолжить;
		КонецЕсли;
		
		// Макет необходимо получать для каждого документа, т.к. размеры колонок изменяются динамически
		Макет = УправлениеПечатью.ПолучитьМакет("Обработка.ПечатьОбщихФорм.ПФ_MXL_РасходнаяНакладная", КодЯзыкаПечать);
		
		Если Не ПервыйДокумент Тогда
			ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
		КонецЕсли;
		
		ПервыйДокумент    = Ложь;
		НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
		
		// Выводим шапку накладной
		
		ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
		ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, ОбластьМакета, ДанныеПечати.Ссылка);
		
		ТекстЗаголовка = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(ДанныеПечати, НСтр("ru='Расходная накладная';uk='Видаткова накладна'",КодЯзыкаПечать), КодЯзыкаПечать);
		
		СтруктураДанныхШапки = Новый Структура;
		СтруктураДанныхШапки.Вставить("ТекстЗаголовка", ТекстЗаголовка);
		ОбластьМакета.Параметры.Заполнить(СтруктураДанныхШапки);
		ТабличныйДокумент.Вывести(ОбластьМакета);
		
		СведенияОПоставщике	= ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Организация, ДанныеПечати.Дата,,ДанныеПечати.БанковскийСчетОрганизации);	
		СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Получатель,  ДанныеПечати.Дата,,ДанныеПечати.БанковскийСчетКонтрагента);

		ОбластьМакета                                   = Макет.ПолучитьОбласть("Поставщик");
		ПредставлениеПоставщика                         = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "ПолноеНаименование",,КодЯзыкаПечать);
		РеквизитыПоставщика                             = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "НомерСчета,Банк,МФО,/,ЮридическийАдрес,Телефоны,/,КодПоЕДРПОУ,КодПоДРФО,ИНН,НомерСвидетельства,/,ИнформацияОСтатусеПлательщикаНалогов,",,КодЯзыкаПечать);
		
		СтруктураДанныхПоставщик = Новый Структура;
		СтруктураДанныхПоставщик.Вставить("ПредставлениеПоставщика", ПредставлениеПоставщика);
		СтруктураДанныхПоставщик.Вставить("Поставщик", ДанныеПечати.Организация);
		СтруктураДанныхПоставщик.Вставить("РеквизитыПоставщика", РеквизитыПоставщика);
		СтруктураДанныхПоставщик.Вставить("Склад", ДанныеПечати.Ссылка.Склад);
		ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПоставщик);
				ТабличныйДокумент.Вывести(ОбластьМакета);
		
		ОбластьМакета                                   = Макет.ПолучитьОбласть("Покупатель");
		ПредставлениеПолучателя                         = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ПолноеНаименование",,КодЯзыкаПечать);
		РеквизитыПокупателя                             = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ФактическийАдрес,Телефоны,",,КодЯзыкаПечать);
		 Склад                                          = ДанныеПечати.Ссылка.Склад;
		СтруктураДанныхПокупатель = Новый Структура;
		СтруктураДанныхПокупатель.Вставить("ПредставлениеПолучателя", ПредставлениеПолучателя);
		СтруктураДанныхПокупатель.Вставить("Получатель", ДанныеПечати.Получатель);
		СтруктураДанныхПокупатель.Вставить("РеквизитыПокупателя", РеквизитыПокупателя);
		ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПокупатель);
		Запрос2 = Новый Запрос(

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

        Если ВыборкаДетальныеЗаписи2.Следующий() Тогда
            КонечныйДолг = ВыборкаДетальныеЗаписи2.СуммаКонечныйОстаток;
            Если КонечныйДолг < 0 Тогда
                ОбластьМакета.Параметры.ДолгИнфа = "Передоплата контрагента з урахуванням цієї накладної становить  " + (-1)*КонечныйДолг + " грн.";
            Иначе
                ОбластьМакета.Параметры.ДолгИнфа = "Заборгованість контрагента з урахуванням цієї накладної становить  " + КонечныйДолг + " грн.";

            КонецЕсли;    
        Иначе
            ОбластьМакета.Параметры.ДолгИнфа = "";
        КонецЕсли;
		ТабличныйДокумент.Вывести(ОбластьМакета);
		
		// Выводим дополнительно информацию о договоре и заказе
		СписокДополнительныхПараметров = "ДоговорНаименованиеДляПечати,";
		Если ДанныеПечати.ПечататьЗаказ Тогда
			// Реализацию и договор уже вывели
			СписокДополнительныхПараметров = СписокДополнительныхПараметров + "Заказ,";
		КонецЕсли;
		СписокДополнительныхПараметров = СписокДополнительныхПараметров + "АдресДоставки,";
		
		МассивСтруктурСтрок = ФормированиеПечатныхФорм.ДополнительнаяИнформация(ДанныеПечати, СписокДополнительныхПараметров, КодЯзыкаПечать);
		ОбластьМакета = Макет.ПолучитьОбласть("ДопИнформация");
		Для каждого СтруктураСтроки Из МассивСтруктурСтрок Цикл
			ОбластьМакета.Параметры.Заполнить(СтруктураСтроки);
			ТабличныйДокумент.Вывести(ОбластьМакета);
		КонецЦикла;		

		// Выводим заголовок таблицы Товары
		
		СуффиксОбластиСтроки = ?(ЕстьСкидки, "СоСкидкой", "") + ?(ЕстьНДС И ПоказыватьНДС, "СНДС", "");
		СуффиксОбластиКолонки = ?(ЕстьСкидки И ЕстьНДС И ПоказыватьНДС, "СоСкидкойСНДС", ?(ЕстьСкидки Или (ЕстьНДС И ПоказыватьНДС), "СоСкидкойИлиСНДС", ""));
		
		ОбластьКолонкаТовар = Макет.Область("ПерваяКолонкаТовара");
		ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки
			+ ?(ВыводитьКоды, 0, Макет.Область("КолонкаКодов").ШиринаКолонки)
		;
		
		ОбластьНомера  = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодов   = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТовар   = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанных  = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ТабличныйДокумент.Вывести(ОбластьНомера);
			
		Если ВыводитьКоды Тогда
			ОбластьКодов.Параметры.ИмяКолонкиКодов = КолонкаКодов;
			ТабличныйДокумент.Присоединить(ОбластьКодов);
		КонецЕсли;
		
		ЗаполнитьЗначенияСвойств(ОбластьДанных.Параметры, ФормированиеПечатныхФорм.СформироватьЗаголовкиДляСуммовыхПоказателей(ДанныеПечати, КодЯзыкаПечать));
		
		Если ЕстьСкидки Тогда
			СтруктураЗаголовокСкидки = Новый Структура("Скидка, СуммаБезСкидки", 
				ЗаголовокСкидки.Скидка,
				ЗаголовокСкидки.СуммаСкидки);
			ОбластьДанных.Параметры.Заполнить(СтруктураЗаголовокСкидки);
		КонецЕсли; 
		
		ТабличныйДокумент.Присоединить(ОбластьТовар);
		ТабличныйДокумент.Присоединить(ОбластьДанных);
		
		ОбластьНомераСтрокиСтандарт = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодовСтрокиСтандарт  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТоварСтрокиСтандарт  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанныхСтрокиСтандарт = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ИспользоватьНаборы = Ложь;
		Если ОбщегоНазначенияУТКлиентСервер.ЕстьРеквизитОбъекта(ВыборкаПоДокументам, "ЭтоНабор") Тогда
			ИспользоватьНаборы = Истина;
			ОбластьНомераСтрокиНабор         = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|НомерСтроки");
			ОбластьНомераСтрокиКомплектующие = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|НомерСтроки");
			ОбластьКодовСтрокиНабор          = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|КолонкаКодов");
			ОбластьКодовСтрокиКомплектующие  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|КолонкаКодов");
			ОбластьТоварСтрокиНабор          = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|Товар"  + СуффиксОбластиКолонки);
			ОбластьТоварСтрокиКомплектующие  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|Товар"  + СуффиксОбластиКолонки);
			ОбластьДанныхСтрокиНабор         = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|Данные" + СуффиксОбластиКолонки);
			ОбластьДанныхСтрокиКомплектующие = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|Данные" + СуффиксОбластиКолонки);
		КонецЕсли;
		
		Сумма          = 0;
		СуммаНДС       = 0;
		ВсегоСкидок    = 0;
		НомерСтроки    = 0;
		ВсегоБезСкидок = 0;
		
		ПустыеДанные = НаборыСервер.ПустыеДанные();
		
		// Выводим строки таблицы Товары
			
		Пока ВыборкаПоТоварам.Следующий() Цикл
			
			Если НаборыСервер.ИспользоватьОбластьНабор(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьКодовСтроки   = ОбластьКодовСтрокиНабор;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиНабор;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиНабор;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиНабор;
			ИначеЕсли НаборыСервер.ИспользоватьОбластьКомплектующие(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьКодовСтроки   = ОбластьКодовСтрокиКомплектующие;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиКомплектующие;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиКомплектующие;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиКомплектующие;
			Иначе
				ОбластьКодовСтроки   = ОбластьКодовСтрокиСтандарт;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиСтандарт;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиСтандарт;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиСтандарт;
			КонецЕсли;
			
			Если НаборыСервер.ВыводитьТолькоЗаголовок(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", Неопределено);
			Иначе
				НомерСтроки = НомерСтроки + 1;
				УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", НомерСтроки);
			КонецЕсли;
			ТабличныйДокумент.Вывести(ОбластьНомераСтроки);
			
			Если ВыводитьКоды Тогда
				СтруктураДанныхКоды = Новый Структура("Артикул", ВыборкаПоТоварам[КолонкаКодов]);
				ОбластьКодовСтроки.Параметры.Заполнить(СтруктураДанныхКоды);
				ТабличныйДокумент.Присоединить(ОбластьКодовСтроки);
			КонецЕсли;
			
			ПрефиксИПостфикс = НаборыСервер.ПолучитьПрефиксИПостфикс(ВыборкаПоТоварам, ИспользоватьНаборы);
			
			ОбластьТоварСтроки.Параметры.Заполнить(ВыборкаПоТоварам);
			Если ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.РеализацияУслугПрочихАктивов") Тогда	
            	Товар = ВыборкаПоТоварам.Содержание;
				СтруктураДанныхТовар = Новый Структура("Товар", Товар);
				ОбластьТоварСтроки.Параметры.Заполнить(СтруктураДанныхТовар);
			Иначе	
				Товар = ПрефиксИПостфикс.Префикс + НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
					ВыборкаПоТоварам.ТоварНаименованиеПолное,
					ВыборкаПоТоварам.Характеристика,
					,
					,
					,
					ВыборкаПоТоварам.ЭтоВозвратнаяТара, 
					КодЯзыкаПечать) + ПрефиксИПостфикс.Постфикс;
				СтруктураДанныхТовар = Новый Структура("Товар", Товар);
				ОбластьТоварСтроки.Параметры.Заполнить(СтруктураДанныхТовар);
			КонецЕсли;
			
			ТабличныйДокумент.Присоединить(ОбластьТоварСтроки);
			
			Если ЗаголовокСкидки.ЕстьСкидки Тогда
				СтруктураДанныхСуммаСкидки = Новый Структура("СуммаСкидки", 
					?(ЗаголовокСкидки.ТолькоНаценка,- ВыборкаПоТоварам.СуммаСкидки,ВыборкаПоТоварам.СуммаСкидки));
				ОбластьДанныхСтроки.Параметры.Заполнить(СтруктураДанныхСуммаСкидки);
			КонецЕсли;
			
			Если НаборыСервер.ВыводитьТолькоЗаголовок(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьДанныхСтроки.Параметры.Заполнить(ПустыеДанные);
			Иначе
				ОбластьДанныхСтроки.Параметры.Заполнить(ВыборкаПоТоварам);
			КонецЕсли;
			
			ТабличныйДокумент.Присоединить(ОбластьДанныхСтроки);
			
			Если Не НаборыСервер.ИспользоватьОбластьКомплектующие(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				Сумма          = Сумма          + ВыборкаПоТоварам.Сумма;
				СуммаНДС       = СуммаНДС       + ВыборкаПоТоварам.СуммаНДС;
				
				Если ЕстьСкидки Тогда
					ВсегоСкидок    = ВсегоСкидок    + ВыборкаПоТоварам.СуммаСкидки;
					ВсегоБезСкидок = ВсегоБезСкидок + ВыборкаПоТоварам.СуммаБезСкидки;
				КонецЕсли;
			КонецЕсли;
			
		КонецЦикла;
		   
		
		
		// Выводим подвал
		
		ОбластьНомера  = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодов   = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТовар   = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанных  = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ТабличныйДокумент.Вывести(ОбластьНомера);
		
		Если ВыводитьКоды Тогда
			ТабличныйДокумент.Присоединить(ОбластьКодов);
		КонецЕсли;
		
		ТабличныйДокумент.Присоединить(ОбластьТовар);
		
		СтруктураДанныхВсегоСкидки = Новый Структура;
		Если ЕстьСкидки Тогда
			СтруктураДанныхВсегоСкидки.Вставить("ВсегоСкидок", ?(ЗаголовокСкидки.ТолькоНаценка,-ВсегоСкидок, ВсегоСкидок));
			СтруктураДанныхВсегоСкидки.Вставить("ВсегоБезСкидок", ВсегоБезСкидок);
		КонецЕсли;
		СтруктураДанныхВсегоСкидки.Вставить("Всего",  ФормированиеПечатныхФорм.ФорматСумм(Сумма));
		ОбластьДанных.Параметры.Заполнить(СтруктураДанныхВсегоСкидки);
		ТабличныйДокумент.Присоединить(ОбластьДанных);
		
		// Выводим ИтогоНДС
		
		Область = Макет.ПолучитьОбласть("ПодвалНДС");
		СтруктураДанныхПодвалНДС = Новый Структура;
		СтруктураДанныхПодвалНДС.Вставить("ВсегоНДС", СуммаНДС);
		Если ЕстьНДС Тогда
			СтруктураДанныхПодвалНДС.Вставить("НДС", ?(ДанныеПечати.ЦенаВключаетНДС, НСтр("ru='В том числе НДС:';uk='У тому числі ПДВ:'",КодЯзыкаПечать), НСтр("ru='Сумма НДС:';uk='Сума ПДВ:'",КодЯзыкаПечать)));
			Если Не ДанныеПечати.ЦенаВключаетНДС Тогда
				Область.Параметры.Заполнить(СтруктураДанныхПодвалНДС);
				ТабличныйДокумент.Вывести(Область);
				СтруктураДанныхПодвалНДС = Новый Структура;
				СтруктураДанныхПодвалНДС.Вставить("НДС", НСтр("ru='Всего с НДС:';uk='Всього із ПДВ:'",КодЯзыкаПечать));
				СтруктураДанныхПодвалНДС.Вставить("ВсегоНДС", Сумма + СуммаНДС);
			КонецЕсли;
		Иначе
			СтруктураДанныхПодвалНДС.Вставить("НДС", НСтр("ru='Без налога (НДС)';uk='Без податку (ПДВ)'",КодЯзыкаПечать));
		КонецЕсли;
		Область.Параметры.Заполнить(СтруктураДанныхПодвалНДС);
		ТабличныйДокумент.Присоединить(Область);
		
		// Выводим Сумму прописью
		
		ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
		СуммаКПрописи = Сумма + ?(ДанныеПечати.ЦенаВключаетНДС, 0, СуммаНДС);
		СтруктураДанныхСуммаПрописью = Новый Структура;
		
		ИтоговаяСтрока = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru='Всего наименований %1, на сумму %2';uk='Всього найменувань %1, на суму %2'",КодЯзыкаПечать),
			ВыборкаПоТоварам.Количество(),
			ФормированиеПечатныхФорм.ФорматСумм(СуммаКПрописи, ДанныеПечати.Валюта));
		
		СтруктураДанныхСуммаПрописью.Вставить("ИтоговаяСтрока", ИтоговаяСтрока);
		СтруктураДанныхСуммаПрописью.Вставить("СуммаПрописью", РаботаСКурсамиВалют.СформироватьСуммуПрописью(СуммаКПрописи, ДанныеПечати.Валюта, , КодЯзыкаПечать));
		ОбластьМакета.Параметры.Заполнить(СтруктураДанныхСуммаПрописью);
		ТабличныйДокумент.Вывести(ОбластьМакета);
		
		Если ЗначениеЗаполнено(ДанныеПечати.МестоСоставленияДокумента) Тогда
			ОбластьМакета = Макет.ПолучитьОбласть("МестоСоставления");
			СтруктураДанныхМестоСоставления = Новый Структура;
			СтруктураДанныхМестоСоставления.Вставить("МестоСоставления", СокрЛП(ДанныеПечати.МестоСоставленияДокумента));
			ОбластьМакета.Параметры.Заполнить(СтруктураДанныхМестоСоставления);
			ТабличныйДокумент.Вывести(ОбластьМакета);
		КонецЕсли;
		
		// Выводим подписи
		ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
		
	    ОбластьМакета.Параметры.Заполнить(ФормированиеПечатныхФорм.СведенияОбОтветсвенныхЛицах(ДанныеПечати, КодЯзыкаПечать));
		
		ТабличныйДокумент.Вывести(ОбластьМакета);
		
		ЗавершениеДляПечатиКомплектов(КомплектыПечати, КомплектПечатиПоСсылке, ТабличныйДокумент, НомерСтрокиНачало);
		
		УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ДанныеПечати.Ссылка);
		
	КонецЦикла;
	 
КонецФункции

#КонецОбласти
Показать
26. seregapplk 17.09.21 09:57 Сейчас в теме
Все получилось, спасибо
(12)anykey_vrn
15. anykey_vrn 14.09.21 12:17 Сейчас в теме
Сумма          = 0;
		СуммаНДС       = 0;
		ВсегоСкидок    = 0;
		НомерСтроки    = 0;
		ВсегоБезСкидок = 0;
ИтогКоличество = 0; 
ИтогВес  = 0;


Тут добавляешь счетчики.

В конце Цикла переопределяешь значения счетчиков

Пока ВыборкаПоТоварам.Следующий() Цикл
//Тут все тело цикла
ИтогКоличество = ИтогКоличество + ВыборкаПоТоварам.Количество;
ИтогВес  = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
КонецЦикла;


Определить в какой области у тебя находятся параметры с этими итогами и заполнить.
будет что то потипу:

ОбластьТоварСтроки.Параметры.ИтогВес = ИтогВес  //вместо ИтогВес название твоего параметра на макете, название области тоже будет другое, по коду не понятно в какой области расположены эти параметры
ОбластьТоварСтроки.Параметры.ИтогКоличество = ИтогКоличество //вместо ИтогКоличество название твоего параметра на макете, название области тоже будет другое, по коду не понятно в какой области расположены эти параметры
16. seregapplk 15.09.21 15:00 Сейчас в теме
ох жесть какая

Сумма          = 0;
		СуммаНДС       = 0;
		ВсегоСкидок    = 0;
		НомерСтроки    = 0;
		ВсегоБезСкидок = 0;
		ИтогКоличество = 0; 
        ИтогВес  = 0;
		
	    		Пока ВыборкаПоТоварам.Следующий() Цикл
//Тут все тело цикла
ИтогКоличество = ИтогКоличество + ВыборкаПоТоварам.Количество;
ИтогВес  = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
КонецЦикла;
ОбластьПодвалТаблицы.Параметры.ИтогВес = ИтогВес;  
ОбластьПодвалТаблицы.Параметры.ИтогКоличество = ИтогКоличество; 
        
		ПустыеДанные = НаборыСервер.ПустыеДанные();
		
		// Выводим строки таблицы Товары
Показать

{Обработка.ПечатьОбщихФорм.МодульМенеджера(1017,1)}: Переменная не определена (ОбластьПодвалТаблицы)
<<?>>ОбластьПодвалТаблицы.Параметры.ИтогВес = ИтогВес; (Проверка: Сервер)
{Обработка.ПечатьОбщихФорм.МодульМенеджера(1018,1)}: Переменная не определена (ОбластьПодвалТаблицы)
<<?>>ОбластьПодвалТаблицы.Параметры.ИтогКоличество = ИтогКоличество; (Проверка: Сервер)
https://drive.google.com/file/d/1JLYnLH37PAAFjvaGbEIfsJLEAAWdGNen/view?usp=sharing
17. seregapplk 15.09.21 17:13 Сейчас в теме
Как обозначить переменную, чтоб не накосячить

заполняется она
// Выводим подвал
		
		ОбластьНомера  = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодов   = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТовар   = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанных  = Макет.ПолучитьОбласть("ПодвалТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ТабличныйДокумент.Вывести(ОбластьНомера);
		
		Если ВыводитьКоды Тогда
			ТабличныйДокумент.Присоединить(ОбластьКодов);
		КонецЕсли;
		
		ТабличныйДокумент.Присоединить(ОбластьТовар);
		
		СтруктураДанныхВсегоСкидки = Новый Структура;
		Если ЕстьСкидки Тогда
			СтруктураДанныхВсегоСкидки.Вставить("ВсегоСкидок", ?(ЗаголовокСкидки.ТолькоНаценка,-ВсегоСкидок, ВсегоСкидок));
			СтруктураДанныхВсегоСкидки.Вставить("ВсегоБезСкидок", ВсегоБезСкидок);
		КонецЕсли;
		СтруктураДанныхВсегоСкидки.Вставить("Всего",  ФормированиеПечатныхФорм.ФорматСумм(Сумма));
		ОбластьДанных.Параметры.Заполнить(СтруктураДанныхВсегоСкидки);
		ТабличныйДокумент.Присоединить(ОбластьДанных);
Показать
18. seregapplk 15.09.21 17:22 Сейчас в теме
ОбластьПодвалТаблицы = макет.ПолучитьОбласть("ПодвалТаблицы");
19. seregapplk 15.09.21 17:26 Сейчас в теме
Пока ВыборкаПоТоварам.Следующий() Цикл
//Тут все тело цикла

ИтогКоличество = ИтогКоличество + ВыборкаПоТоварам.Количество;
ИтогВес  = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
КонецЦикла;
ОбластьПодвалТаблицы = макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьПодвалТаблицы.Параметры.ИтогВес = ИтогВес;  
ОбластьПодвалТаблицы.Параметры.ИтогКоличество = ИтогКоличество;
Показать


ругается
{Обработка.ПечатьОбщихФорм.МодульМенеджера(1019)}: Поле объекта не обнаружено (ИтогКоличество)
ОбластьПодвалТаблицы.Параметры.ИтогКоличество = ИтогКоличество;
20. seregapplk 15.09.21 17:36 Сейчас в теме
ПодвалТаблицы в коде не выводиться, нужно через присоединить, как правильно присоединить?
21. seregapplk 16.09.21 09:46 Сейчас в теме
все считает, через сообщить выводит,
не могу вывести правильно в товар на форму
22. seregapplk 16.09.21 10:23 Сейчас в теме
с этим кодом пусто в строке товары

Сумма          = 0;
		СуммаНДС       = 0;
		ВсегоСкидок    = 0;
		НомерСтроки    = 0;
		ВсегоБезСкидок = 0;
		ПустыеДанные = НаборыСервер.ПустыеДанные();
		 // вес 
		 ИтогКоличество = 0; 
         ИтогВес  = 0;
		  Пока ВыборкаПоТоварам.Следующий() Цикл
//Тут все тело цикла
ИтогКоличество = ИтогКоличество + ВыборкаПоТоварам.Количество;
ИтогВес  = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
КонецЦикла;
Сообщить(ИтогКоличество);
Сообщить(ИтогВес);
Показать




// Выводим заголовок таблицы Товары
		
		СуффиксОбластиСтроки = ?(ЕстьСкидки, "СоСкидкой", "") + ?(ЕстьНДС И ПоказыватьНДС, "СНДС", "");
		СуффиксОбластиКолонки = ?(ЕстьСкидки И ЕстьНДС И ПоказыватьНДС, "СоСкидкойСНДС", ?(ЕстьСкидки Или (ЕстьНДС И ПоказыватьНДС), "СоСкидкойИлиСНДС", ""));
		
		ОбластьКолонкаТовар = Макет.Область("ПерваяКолонкаТовара");
		ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки
			+ ?(ВыводитьКоды, 0, Макет.Область("КолонкаКодов").ШиринаКолонки)
		;
		
		ОбластьНомера  = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодов   = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТовар   = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанных  = Макет.ПолучитьОбласть("ШапкаТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ТабличныйДокумент.Вывести(ОбластьНомера);
			
		Если ВыводитьКоды Тогда
			ОбластьКодов.Параметры.ИмяКолонкиКодов = КолонкаКодов;
			ТабличныйДокумент.Присоединить(ОбластьКодов);
		КонецЕсли;
		
		ЗаполнитьЗначенияСвойств(ОбластьДанных.Параметры, ФормированиеПечатныхФорм.СформироватьЗаголовкиДляСуммовыхПоказателей(ДанныеПечати, КодЯзыкаПечать));
		
		Если ЕстьСкидки Тогда
			СтруктураЗаголовокСкидки = Новый Структура("Скидка, СуммаБезСкидки", 
				ЗаголовокСкидки.Скидка,
				ЗаголовокСкидки.СуммаСкидки);
			ОбластьДанных.Параметры.Заполнить(СтруктураЗаголовокСкидки);
		КонецЕсли; 
		
		ТабличныйДокумент.Присоединить(ОбластьТовар);
		ТабличныйДокумент.Присоединить(ОбластьДанных);
		
		ОбластьНомераСтрокиСтандарт = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|НомерСтроки");
		ОбластьКодовСтрокиСтандарт  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|КолонкаКодов");
		ОбластьТоварСтрокиСтандарт  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|Товар" + СуффиксОбластиКолонки);
		ОбластьДанныхСтрокиСтандарт = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "|Данные" + СуффиксОбластиКолонки);
		
		ИспользоватьНаборы = Ложь;
		Если ОбщегоНазначенияУТКлиентСервер.ЕстьРеквизитОбъекта(ВыборкаПоДокументам, "ЭтоНабор") Тогда
			ИспользоватьНаборы = Истина;
			ОбластьНомераСтрокиНабор         = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|НомерСтроки");
			ОбластьНомераСтрокиКомплектующие = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|НомерСтроки");
			ОбластьКодовСтрокиНабор          = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|КолонкаКодов");
			ОбластьКодовСтрокиКомплектующие  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|КолонкаКодов");
			ОбластьТоварСтрокиНабор          = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|Товар"  + СуффиксОбластиКолонки);
			ОбластьТоварСтрокиКомплектующие  = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|Товар"  + СуффиксОбластиКолонки);
			ОбластьДанныхСтрокиНабор         = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Набор"         + "|Данные" + СуффиксОбластиКолонки);
			ОбластьДанныхСтрокиКомплектующие = Макет.ПолучитьОбласть("СтрокаТаблицы" + СуффиксОбластиСтроки + "Комплектующие" + "|Данные" + СуффиксОбластиКолонки);
		КонецЕсли;
		
		Сумма          = 0;
		СуммаНДС       = 0;
		ВсегоСкидок    = 0;
		НомерСтроки    = 0;
		ВсегоБезСкидок = 0;
		ПустыеДанные = НаборыСервер.ПустыеДанные();
		 // вес 
		 ИтогКоличество = 0; 
         ИтогВес  = 0;
		  Пока ВыборкаПоТоварам.Следующий() Цикл
//Тут все тело цикла
ИтогКоличество = ИтогКоличество + ВыборкаПоТоварам.Количество;
ИтогВес  = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
КонецЦикла;
Сообщить(ИтогКоличество);
Сообщить(ИтогВес);
		
		
		
		// Выводим строки таблицы Товары
			
		Пока ВыборкаПоТоварам.Следующий() Цикл
			
			Если НаборыСервер.ИспользоватьОбластьНабор(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьКодовСтроки   = ОбластьКодовСтрокиНабор;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиНабор;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиНабор;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиНабор;
			ИначеЕсли НаборыСервер.ИспользоватьОбластьКомплектующие(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьКодовСтроки   = ОбластьКодовСтрокиКомплектующие;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиКомплектующие;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиКомплектующие;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиКомплектующие;
			Иначе
				ОбластьКодовСтроки   = ОбластьКодовСтрокиСтандарт;
				ОбластьНомераСтроки  = ОбластьНомераСтрокиСтандарт;
				ОбластьДанныхСтроки  = ОбластьДанныхСтрокиСтандарт;
				ОбластьТоварСтроки   = ОбластьТоварСтрокиСтандарт;
			КонецЕсли;
			
			Если НаборыСервер.ВыводитьТолькоЗаголовок(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", Неопределено);
			Иначе
				НомерСтроки = НомерСтроки + 1;
				УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", НомерСтроки);
			КонецЕсли;
			ТабличныйДокумент.Вывести(ОбластьНомераСтроки);
			
			Если ВыводитьКоды Тогда
				СтруктураДанныхКоды = Новый Структура("Артикул", ВыборкаПоТоварам[КолонкаКодов]);
				ОбластьКодовСтроки.Параметры.Заполнить(СтруктураДанныхКоды);
				ТабличныйДокумент.Присоединить(ОбластьКодовСтроки);
			КонецЕсли;
			
			ПрефиксИПостфикс = НаборыСервер.ПолучитьПрефиксИПостфикс(ВыборкаПоТоварам, ИспользоватьНаборы);
			
			ОбластьТоварСтроки.Параметры.Заполнить(ВыборкаПоТоварам);
			Если ТипЗнч(ДанныеПечати.Ссылка) = Тип("ДокументСсылка.РеализацияУслугПрочихАктивов") Тогда	
            	Товар = ВыборкаПоТоварам.Содержание;
				СтруктураДанныхТовар = Новый Структура("Товар", Товар);
				ОбластьТоварСтроки.Параметры.Заполнить(СтруктураДанныхТовар);
			Иначе	
				Товар = ПрефиксИПостфикс.Префикс + НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
					ВыборкаПоТоварам.ТоварНаименованиеПолное,
					ВыборкаПоТоварам.Характеристика,
					,
					,
					,
					ВыборкаПоТоварам.ЭтоВозвратнаяТара, 
					КодЯзыкаПечать) + ПрефиксИПостфикс.Постфикс;
				СтруктураДанныхТовар = Новый Структура("Товар", Товар);
				ОбластьТоварСтроки.Параметры.Заполнить(СтруктураДанныхТовар);
			КонецЕсли;
			
			ТабличныйДокумент.Присоединить(ОбластьТоварСтроки);
			
			Если ЗаголовокСкидки.ЕстьСкидки Тогда
				СтруктураДанныхСуммаСкидки = Новый Структура("СуммаСкидки", 
					?(ЗаголовокСкидки.ТолькоНаценка,- ВыборкаПоТоварам.СуммаСкидки,ВыборкаПоТоварам.СуммаСкидки));
				ОбластьДанныхСтроки.Параметры.Заполнить(СтруктураДанныхСуммаСкидки);
			КонецЕсли;
			
			Если НаборыСервер.ВыводитьТолькоЗаголовок(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				ОбластьДанныхСтроки.Параметры.Заполнить(ПустыеДанные);
			Иначе
				ОбластьДанныхСтроки.Параметры.Заполнить(ВыборкаПоТоварам);
			КонецЕсли;
			
			ТабличныйДокумент.Присоединить(ОбластьДанныхСтроки);
			
			Если Не НаборыСервер.ИспользоватьОбластьКомплектующие(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
				Сумма          = Сумма          + ВыборкаПоТоварам.Сумма;
				СуммаНДС       = СуммаНДС       + ВыборкаПоТоварам.СуммаНДС;
				
				Если ЕстьСкидки Тогда
					ВсегоСкидок    = ВсегоСкидок    + ВыборкаПоТоварам.СуммаСкидки;
					ВсегоБезСкидок = ВсегоБезСкидок + ВыборкаПоТоварам.СуммаБезСкидки;
				КонецЕсли;
			КонецЕсли;
			
		КонецЦикла;
Показать
23. seregapplk 16.09.21 12:23 Сейчас в теме
Пока ВыборкаПоТоварам.Следующий() Цикл
куда то ни туда я его сделал
24. seregapplk 16.09.21 12:27 Сейчас в теме
все разобрался, я протупил)) Всем Спасибо огромное!
25. seregapplk 16.09.21 12:51 Сейчас в теме
ИтогВес = ИтогВес + ВыборкаПоТоварам.Номенклатура.Вес;
получаем вес по количеству строк,
как получить вес по количеству номенклатуры?
Оставьте свое сообщение

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