ВПФ. Вывести массив документов в одну таблицу
Здравствуйте, сейчас у меня выбирается список документов через форму и выводится на печать, но через разделительную линию печати каждый документ в своей таблице. Подскажите, как переделать запрос, чтобы все данные шли в одну таблицу и группировались по наименованию?
На всякий случай прикрепил код ниже:
На всякий случай прикрепил код ниже:
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт
ТабличныйДокумент = Новый ТабличныйДокумент;
СвойствоДоговорДата = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Дата");
СвойствоДоговорНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Номер");
СвойствоФИООтветственного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ФИО Ответственного");
СвойствоДолжностьОтветсвенного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Должность ответсвенного");
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваров_Спецификация";
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Документ.Ссылка КАК Ссылка,
| Документ.Дата КАК Дата,
| Документ.Организация КАК Поставщик,
| Документ.Контрагент КАК Получатель,
| Документ.УчитыватьНДС КАК УчитыватьНДС,
| Документ.ЦенаВключаетНДС КАК ЦенаВключаетНДС
|ИЗ
| Документ.РеализацияТоваров КАК Документ
|ГДЕ
| Документ.Ссылка В(&МассивОбъектов)
| И Документ.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| Дата
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ТаблицаТовары.НомерСтроки КАК НомерСтроки,
| ТаблицаТовары.Номенклатура КАК Номенклатура,
| ТаблицаТовары.Номенклатура.Представление КАК Товар,
| ТаблицаТовары.Номенклатура.НаименованиеПолное КАК НоменклатураПредставление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика) КАК ХарактеристикаПредставление,
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ КАК ЕдиницаИзмерения,
| ТаблицаТовары.Количество КАК Количество,
| ТаблицаТовары.КоличествоУпаковок КАК КоличествоУпаковок,
| ВЫБОР
| КОГДА ТаблицаТовары.Количество = 0
| ТОГДА ТаблицаТовары.Количество
| ИНАЧЕ ТаблицаТовары.Сумма / ТаблицаТовары.Количество
| КОНЕЦ КАК Цена,
| ТаблицаТовары.Сумма КАК Сумма,
| ТаблицаТовары.Ссылка КАК Ссылка,
| ТаблицаТовары.СуммаНДС КАК СуммаНДС,
| ТаблицаТовары.СтавкаНДС КАК СтавкаНДС
|ИЗ
| Документ.РеализацияТоваров.Товары КАК ТаблицаТовары
|ГДЕ
| ТаблицаТовары.Ссылка В(&МассивОбъектов)
| И ТаблицаТовары.Ссылка.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| НомерСтроки
|ИТОГИ ПО
| Ссылка");
Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
Результаты = Запрос.ВыполнитьПакет();
Макет = ПолучитьМакет("Макет");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ВыборкаПоДокументам = Результаты[0].Выбрать();
ВыборкаПоТабличнымЧастям = Результаты[1].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ПервыйДокумент = Истина;
Пока ВыборкаПоДокументам.Следующий() Цикл
Если НЕ ВыборкаПоТабличнымЧастям.НайтиСледующий(Новый Структура("Ссылка",ВыборкаПоДокументам.Ссылка)) Тогда
Продолжить;
КонецЕсли;
ВыборкаПоСтрокамТЧ = ВыборкаПоТабличнымЧастям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Если НЕ ПервыйДокумент Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ПервыйДокумент = Ложь;
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
ТЗ_ДоговорДата = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорДата);
Если ТЗ_ДоговорДата.Количество() Тогда
ОбластьШапка.Параметры.ДоговорДата = Формат(ТЗ_ДоговорДата[0].Значение,"ДЛФ=DD");
КонецЕсли;
ТЗ_ДоговорНомер = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорНомер);
Если ТЗ_ДоговорНомер.Количество() Тогда
ОбластьШапка.Параметры.ДоговорНомер = ТЗ_ДоговорНомер[0].Значение;
КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьШапка);
ИтогоСуммаБезНДС = 0;
ИтогоСуммаСНДС = 0;
ИтогоНДС = 0;
// СТРОКИ ТЧ
Пока ВыборкаПоСтрокамТЧ.Следующий() Цикл
Если НЕ ЗначениеЗаполнено(ВыборкаПоСтрокамТЧ.Номенклатура) Тогда
Продолжить;
КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаПоСтрокамТЧ);
ОбластьСтрока.Параметры.Товар = ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(ВыборкаПоСтрокамТЧ.НоменклатураПредставление,ВыборкаПоСтрокамТЧ.ХарактеристикаПредставление);
//ОбластьСтрока.Параметры.Производитель = ВыборкаПоСтрокамТЧ.Номенклатура.Производитель;
//ОбластьСтрока.Параметры.НТД = ВыборкаПоСтрокамТЧ.Номенклатура.Артикул;
СтавкаНДСЧисло = ОбработкаТабличнойЧастиТоварыКлиентСерверПовтИсп.ПолучитьСтавкуНДСЧислом(ВыборкаПоСтрокамТЧ.СтавкаНДС) * 100;
Если ВыборкаПоДокументам.ЦенаВключаетНДС Тогда
ЦенаБезНдс = окр(ВыборкаПоСтрокамТЧ.Цена * 100 / (100 + СтавкаНДСЧисло),2);
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма - ВыборкаПоСтрокамТЧ.СуммаНДС;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма;
Иначе
ЦенаБезНдс = ВыборкаПоСтрокамТЧ.Цена;
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма + ВыборкаПоСтрокамТЧ.СуммаНДС;
КонецЕсли;
ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНдс;
ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНдс;
ИтогоНДС = ИтогоНДС + ВыборкаПоСтрокамТЧ.СуммаНДС;
ОбластьСтрока.Параметры.ЦенаБезНдс = ЦенаБезНдс;
ОбластьСтрока.Параметры.СуммаБезНдс = СуммаБезНдс;
ОбластьСтрока.Параметры.СуммаСНдс = СуммаСНдс;
ТабличныйДокумент.Вывести(ОбластьСтрока);
ПоказатьПо теме из базы знаний
- Внешние печатные формы для нетиповой конфигурации (управляемое приложение)
- [БП 3.0, УТ 11.2][БДРС] Печать пакета документов ТОРГ-12 и Счет-фактура из документа РТиУ с настройкой индивидуального макета для любого контрагента
- Создаем печатную форму "Заказ клиента" для УТ 11.2
- Конструктор внешних печатных форм NEW beta (обычные и управляемые приложения!)
- Корректная двусторонняя печать табличных документов + Простой пример создания внешней печатной формы
Найденные решения
(10) Примерно так, особо не проверял, должно взлететь (плюс там момент один указал в коменте) :
зы: по ошибке сумму(цены) написал, исправил на максимум
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт
ТабличныйДокумент = Новый ТабличныйДокумент;
СвойствоДоговорДата = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Дата");
СвойствоДоговорНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Номер");
СвойствоФИООтветственного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ФИО Ответственного");
СвойствоДолжностьОтветсвенного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Должность ответсвенного");
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваров_СпецификацияЮжКузбассУго ль";
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Документ.Ссылка КАК Ссылка,
| Документ.Дата КАК Дата,
| Документ.Организация КАК Поставщик,
| Документ.Контрагент КАК Получатель,
| Документ.УчитыватьНДС КАК УчитыватьНДС,
| Документ.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
| Документ.Номер КАК Номер
|ИЗ
| Документ.РеализацияТоваров КАК Документ
|ГДЕ
| Документ.Ссылка В(&МассивОбъектов)
| И Документ.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| Дата
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ТаблицаТовары.Номенклатура КАК Номенклатура,
| ТаблицаТовары.Номенклатура.Представление КАК Товар,
| ВЫРАЗИТЬ(ТаблицаТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(200)) КАК НоменклатураПредставление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика) КАК ХарактеристикаПредставление,
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ КАК ЕдиницаИзмерения,
| СУММА(ТаблицаТовары.Количество) КАК Количество,
| СУММА(ТаблицаТовары.КоличествоУпаковок) КАК КоличествоУпаковок,
| МАКСИМУМ(ВЫБОР
| КОГДА ТаблицаТовары.Количество = 0
| ТОГДА ТаблицаТовары.Количество
| ИНАЧЕ ТаблицаТовары.Сумма / ТаблицаТовары.Количество
| КОНЕЦ) КАК Цена,
| СУММА(ТаблицаТовары.Сумма) КАК Сумма,
| СУММА(ТаблицаТовары.СуммаНДС) КАК СуммаНДС,
| ТаблицаТовары.СтавкаНДС КАК СтавкаНДС
|ИЗ
| Документ.РеализацияТоваров.Товары КАК ТаблицаТовары
|ГДЕ
| ТаблицаТовары.Ссылка В(&МассивОбъектов)
| И ТаблицаТовары.Ссылка.Проведен
|
|СГРУППИРОВАТЬ ПО
| ТаблицаТовары.Номенклатура,
| ТаблицаТовары.Номенклатура.Представление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика),
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ,
| ВЫРАЗИТЬ(ТаблицаТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(200)),
| ТаблицаТовары.СтавкаНДС
|
|УПОРЯДОЧИТЬ ПО
| Номенклатура
|АВТОУПОРЯДОЧИВАНИЕ");
Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
Результаты = Запрос.ВыполнитьПакет();
Макет = ПолучитьМакет("Макет");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ВыборкаПоДокументам = Результаты[0].Выбрать();
ВыборкаПоТабличнымЧастям = Результаты[1].Выбрать();
ВыборкаПоДокументам.Следующий();
//Если НЕ ВыборкаПоТабличнымЧастям.НайтиСледующий(Новый Структура("Ссылка",ВыборкаПоДокументам.Ссылка)) Тогда
// Продолжить;
//КонецЕсли;
//ВыборкаПоТабличнымЧастям = ВыборкаПоТабличнымЧастям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
//НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
//ТЗ_ДоговорДата = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорДата);
//Если ТЗ_ДоговорДата.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорДата = Формат(ТЗ_ДоговорДата[0].Значение,"ДЛФ=DD");
//КонецЕсли;
//
//ТЗ_ДоговорНомер = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорНомер);
//Если ТЗ_ДоговорНомер.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорНомер = ТЗ_ДоговорНомер[0].Значение;
//КонецЕсли;
ОбластьШапка.Параметры.Номер = ВыборкаПоДокументам.Номер;
ОбластьШапка.Параметры.Дата = Формат(ВыборкаПоДокументам.Дата,"ДЛФ=DD");
ТабличныйДокумент.Вывести(ОбластьШапка);
ИтогоСуммаБезНДС = 0;
ИтогоСуммаСНДС = 0;
ИтогоНДС = 0;
// СТРОКИ ТЧ
Пока ВыборкаПоТабличнымЧастям.Следующий() Цикл
//Если НЕ ЗначениеЗаполнено(ВыборкаПоТабличнымЧастям.Номенклатура) Тогда
// Продолжить;
//КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаПоТабличнымЧастям);
ОбластьСтрока.Параметры.Товар = ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(ВыборкаПоТабличнымЧастям.НоменклатураПредставление,ВыборкаПоТабличнымЧастям.ХарактеристикаПредставление);
//ОбластьСтрока.Параметры.Производитель = ВыборкаПоТабличнымЧастям.Номенклатура.Производитель;
//ОбластьСтрока.Параметры.НТД = ВыборкаПоТабличнымЧастям.Номенклатура.Артикул;
СтавкаНДСЧисло = ОбработкаТабличнойЧастиТоварыКлиентСерверПовтИсп.ПолучитьСтавкуНДСЧислом(ВыборкаПоТабличнымЧастям.СтавкаНДС) * 100;
Если ВыборкаПоДокументам.ЦенаВключаетНДС Тогда // ! тут момент с проверкой включения НДС для каждого документа (упрощаем до одного документа)
ЦенаБезНдс = окр(ВыборкаПоТабличнымЧастям.Цена * 100 / (100 + СтавкаНДСЧисло),2);
СуммаБезНдс = ВыборкаПоТабличнымЧастям.Сумма - ВыборкаПоТабличнымЧастям.СуммаНДС;
СуммаСНдс = ВыборкаПоТабличнымЧастям.Сумма;
Иначе
ЦенаБезНдс = ВыборкаПоТабличнымЧастям.Цена;
СуммаБезНдс = ВыборкаПоТабличнымЧастям.Сумма;
СуммаСНдс = ВыборкаПоТабличнымЧастям.Сумма + ВыборкаПоТабличнымЧастям.СуммаНДС;
КонецЕсли;
ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНдс;
ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНдс;
ИтогоНДС = ИтогоНДС + ВыборкаПоТабличнымЧастям.СуммаНДС;
ОбластьСтрока.Параметры.ЦенаБезНдс = ЦенаБезНдс;
ОбластьСтрока.Параметры.СуммаБезНдс = СуммаБезНдс;
ОбластьСтрока.Параметры.СуммаСНдс = СуммаСНдс;
ТабличныйДокумент.Вывести(ОбластьСтрока);
КонецЦикла;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДС = ИтогоСуммаБезНДС;
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоСуммаСНДС);
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
//ОбластьПодвал.Параметры.ИтогоНДС = ИтогоНДС;
//ОбластьПодвал.Параметры.ИтогоНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоНДС);
Руководители = ФормированиеПечатныхФормСервер.ОтветственныеЛицаОрганизаций(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата);
//ОбластьМакета.Параметры.ДолжностьРуководителя = Руководители.РуководительДолжность;
ОбластьПодвал.Параметры.ПостДиректор = ФормированиеПечатныхФормСервер.ФамилияИнициалыФизЛица(Руководители.Руководитель);
ПредставлениеПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Поставщик = ПредставлениеПоставщика;
ПредставлениеПолучателя = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Получатель, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Покупатель = ПредставлениеПолучателя;
//ОбластьПодвал.Параметры.АдресПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ФактическийАдрес,");
//ТЗ_ПокДиректор = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоФИООтветственного);
//Если ТЗ_ПокДиректор.Количество() Тогда
// ОбластьПодвал.Параметры.ПокДиректор = ТЗ_ПокДиректор[0].Значение;
//КонецЕсли;
//
//ТЗ_ДолжностьДиректора = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДолжностьОтветсвенного);
//Если ТЗ_ДолжностьДиректора.Количество() Тогда
// ОбластьПодвал.Параметры.ДолжностьДиректора = ТЗ_ДолжностьДиректора[0].Значение;
//КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьПодвал);
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ВыборкаПоДокументам.Ссылка);
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции
Показатьзы: по ошибке сумму(цены) написал, исправил на максимум
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
Подскажите, куда копать..
Как я понял, надо этот цикл убрать
а этот закинуть в цикл?
Как я понял, надо этот цикл убрать
Пока ВыборкаПоДокументам.Следующий() Цикл
Если НЕ ВыборкаПоТабличнымЧастям.НайтиСледующий(Новый Структура("Ссылка",ВыборкаПоДокументам.Ссылка)) Тогда
Продолжить;
КонецЕсли;
а этот закинуть в цикл?
Пока ВыборкаПоСтрокамТЧ.Следующий() Цикл
Если НЕ ЗначениеЗаполнено(ВыборкаПоСтрокамТЧ.Номенклатура) Тогда
Продолжить;
КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаПоСтрокамТЧ);
ОбластьСтрока.Параметры.Товар = ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(ВыборкаПоСтрокамТЧ.НоменклатураПредставление,ВыборкаПоСтрокамТЧ.ХарактеристикаПредставление);
//ОбластьСтрока.Параметры.Производитель = ВыборкаПоСтрокамТЧ.Номенклатура.Производитель;
//ОбластьСтрока.Параметры.НТД = ВыборкаПоСтрокамТЧ.Номенклатура.Артикул;
СтавкаНДСЧисло = ОбработкаТабличнойЧастиТоварыКлиентСерверПовтИсп.ПолучитьСтавкуНДСЧислом(ВыборкаПоСтрокамТЧ.СтавкаНДС) * 100;
Если ВыборкаПоДокументам.ЦенаВключаетНДС Тогда
ЦенаБезНдс = окр(ВыборкаПоСтрокамТЧ.Цена * 100 / (100 + СтавкаНДСЧисло),2);
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма - ВыборкаПоСтрокамТЧ.СуммаНДС;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма;
Иначе
ЦенаБезНдс = ВыборкаПоСтрокамТЧ.Цена;
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма + ВыборкаПоСтрокамТЧ.СуммаНДС;
КонецЕсли;
ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНдс;
ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНдс;
ИтогоНДС = ИтогоНДС + ВыборкаПоСтрокамТЧ.СуммаНДС;
ОбластьСтрока.Параметры.ЦенаБезНдс = ЦенаБезНдс;
ОбластьСтрока.Параметры.СуммаБезНдс = СуммаБезНдс;
ОбластьСтрока.Параметры.СуммаСНдс = СуммаСНдс;
ТабличныйДокумент.Вывести(ОбластьСтрока);
КонецЦикла;
Показать
(5) если убрать кусок кода из первого моего поста, то не будет разбивки между новыми документами. Правда вы не полностью скопировали код, там должно быть еще подвал выходит после вывода табличной части (и так для каждого документа). Как именно вы хотите " вывести все в одну таблицу" ? Шапка - строки1-строки2-стоки3 - подвал ?
(7) Видно что шапка и подвал, как и строки, заполняются для каждого документа свои ? какие же тогда будут эти "общие" шапка и подвал? Браться из первого документа ?
Вообще надо убрать номера строк из запроса(из полей и из сортировки), добавить группировки, добавить сортировку по номенклатуре, убрать Итоги по, убрать обход по группировкам, убрать практически весь кусок с циклом по ВыборкаПоДокументам и обход делать уже по нему, а не по строкамТч. Вот ) Скопируйте весь текст процедуры лушче
Вообще надо убрать номера строк из запроса(из полей и из сортировки), добавить группировки, добавить сортировку по номенклатуре, убрать Итоги по, убрать обход по группировкам, убрать практически весь кусок с циклом по ВыборкаПоДокументам и обход делать уже по нему, а не по строкамТч. Вот ) Скопируйте весь текст процедуры лушче
(9) Шапка и подвал потом можно сделать, чтобы заполнялся из формы печатной формы, самое главное для меня строки:)
Вот полный код:
Вот полный код:
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт
ТабличныйДокумент = Новый ТабличныйДокумент;
СвойствоДоговорДата = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Дата");
СвойствоДоговорНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Номер");
СвойствоФИООтветственного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ФИО Ответственного");
СвойствоДолжностьОтветсвенного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Должность ответсвенного");
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваров_СпецификацияЮжКузбассУго ль";
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Документ.Ссылка КАК Ссылка,
| Документ.Дата КАК Дата,
| Документ.Организация КАК Поставщик,
| Документ.Контрагент КАК Получатель,
| Документ.УчитыватьНДС КАК УчитыватьНДС,
| Документ.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
| Документ.Номер КАК Номер
|ИЗ
| Документ.РеализацияТоваров КАК Документ
|ГДЕ
| Документ.Ссылка В(&МассивОбъектов)
| И Документ.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| Дата
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ТаблицаТовары.НомерСтроки КАК НомерСтроки,
| ТаблицаТовары.Номенклатура КАК Номенклатура,
| ТаблицаТовары.Номенклатура.Представление КАК Товар,
| ТаблицаТовары.Номенклатура.НаименованиеПолное КАК НоменклатураПредставление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика) КАК ХарактеристикаПредставление,
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ КАК ЕдиницаИзмерения,
| ТаблицаТовары.Количество КАК Количество,
| ТаблицаТовары.КоличествоУпаковок КАК КоличествоУпаковок,
| ВЫБОР
| КОГДА ТаблицаТовары.Количество = 0
| ТОГДА ТаблицаТовары.Количество
| ИНАЧЕ ТаблицаТовары.Сумма / ТаблицаТовары.Количество
| КОНЕЦ КАК Цена,
| ТаблицаТовары.Сумма КАК Сумма,
| ТаблицаТовары.Ссылка КАК Ссылка,
| ТаблицаТовары.СуммаНДС КАК СуммаНДС,
| ТаблицаТовары.СтавкаНДС КАК СтавкаНДС
|ИЗ
| Документ.РеализацияТоваров.Товары КАК ТаблицаТовары
|ГДЕ
| ТаблицаТовары.Ссылка В(&МассивОбъектов)
| И ТаблицаТовары.Ссылка.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| НомерСтроки
|ИТОГИ ПО
| Ссылка");
Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
Результаты = Запрос.ВыполнитьПакет();
Макет = ПолучитьМакет("Макет");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ВыборкаПоДокументам = Результаты[0].Выбрать();
ВыборкаПоТабличнымЧастям = Результаты[1].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
// ПервыйДокумент = Истина;
Пока ВыборкаПоДокументам.Следующий() Цикл
Если НЕ ВыборкаПоТабличнымЧастям.НайтиСледующий(Новый Структура("Ссылка",ВыборкаПоДокументам.Ссылка)) Тогда
Продолжить;
КонецЕсли;
ВыборкаПоСтрокамТЧ = ВыборкаПоТабличнымЧастям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
// ПервыйДокумент = Ложь;
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
//ТЗ_ДоговорДата = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорДата);
//Если ТЗ_ДоговорДата.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорДата = Формат(ТЗ_ДоговорДата[0].Значение,"ДЛФ=DD");
//КонецЕсли;
//
//ТЗ_ДоговорНомер = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорНомер);
//Если ТЗ_ДоговорНомер.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорНомер = ТЗ_ДоговорНомер[0].Значение;
//КонецЕсли;
ОбластьШапка.Параметры.Номер = ВыборкаПоДокументам.Номер;
ОбластьШапка.Параметры.Дата = Формат(ВыборкаПоДокументам.Дата,"ДЛФ=DD");
ТабличныйДокумент.Вывести(ОбластьШапка);
ИтогоСуммаБезНДС = 0;
ИтогоСуммаСНДС = 0;
ИтогоНДС = 0;
// СТРОКИ ТЧ
Пока ВыборкаПоСтрокамТЧ.Следующий() Цикл
Если НЕ ЗначениеЗаполнено(ВыборкаПоСтрокамТЧ.Номенклатура) Тогда
Продолжить;
КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаПоСтрокамТЧ);
ОбластьСтрока.Параметры.Товар = ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(ВыборкаПоСтрокамТЧ.НоменклатураПредставление,ВыборкаПоСтрокамТЧ.ХарактеристикаПредставление);
//ОбластьСтрока.Параметры.Производитель = ВыборкаПоСтрокамТЧ.Номенклатура.Производитель;
//ОбластьСтрока.Параметры.НТД = ВыборкаПоСтрокамТЧ.Номенклатура.Артикул;
СтавкаНДСЧисло = ОбработкаТабличнойЧастиТоварыКлиентСерверПовтИсп.ПолучитьСтавкуНДСЧислом(ВыборкаПоСтрокамТЧ.СтавкаНДС) * 100;
Если ВыборкаПоДокументам.ЦенаВключаетНДС Тогда
ЦенаБезНдс = окр(ВыборкаПоСтрокамТЧ.Цена * 100 / (100 + СтавкаНДСЧисло),2);
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма - ВыборкаПоСтрокамТЧ.СуммаНДС;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма;
Иначе
ЦенаБезНдс = ВыборкаПоСтрокамТЧ.Цена;
СуммаБезНдс = ВыборкаПоСтрокамТЧ.Сумма;
СуммаСНдс = ВыборкаПоСтрокамТЧ.Сумма + ВыборкаПоСтрокамТЧ.СуммаНДС;
КонецЕсли;
ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНдс;
ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНдс;
ИтогоНДС = ИтогоНДС + ВыборкаПоСтрокамТЧ.СуммаНДС;
ОбластьСтрока.Параметры.ЦенаБезНдс = ЦенаБезНдс;
ОбластьСтрока.Параметры.СуммаБезНдс = СуммаБезНдс;
ОбластьСтрока.Параметры.СуммаСНдс = СуммаСНдс;
ТабличныйДокумент.Вывести(ОбластьСтрока);
КонецЦикла;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДС = ИтогоСуммаБезНДС;
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоСуммаСНДС);
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
//ОбластьПодвал.Параметры.ИтогоНДС = ИтогоНДС;
//ОбластьПодвал.Параметры.ИтогоНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоНДС);
Руководители = ФормированиеПечатныхФормСервер.ОтветственныеЛицаОрганизаций(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата);
//ОбластьМакета.Параметры.ДолжностьРуководителя = Руководители.РуководительДолжность;
ОбластьПодвал.Параметры.ПостДиректор = ФормированиеПечатныхФормСервер.ФамилияИнициалыФизЛица(Руководители.Руководитель);
ПредставлениеПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Поставщик = ПредставлениеПоставщика;
ПредставлениеПолучателя = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Получатель, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Покупатель = ПредставлениеПолучателя;
//ОбластьПодвал.Параметры.АдресПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ФактическийАдрес,");
//ТЗ_ПокДиректор = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоФИООтветственного);
//Если ТЗ_ПокДиректор.Количество() Тогда
// ОбластьПодвал.Параметры.ПокДиректор = ТЗ_ПокДиректор[0].Значение;
//КонецЕсли;
//
//ТЗ_ДолжностьДиректора = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДолжностьОтветсвенного);
//Если ТЗ_ДолжностьДиректора.Количество() Тогда
// ОбластьПодвал.Параметры.ДолжностьДиректора = ТЗ_ДолжностьДиректора[0].Значение;
//КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьПодвал);
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ВыборкаПоДокументам.Ссылка);
КонецЦикла;
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции
Показать
(10) Примерно так, особо не проверял, должно взлететь (плюс там момент один указал в коменте) :
зы: по ошибке сумму(цены) написал, исправил на максимум
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт
ТабличныйДокумент = Новый ТабличныйДокумент;
СвойствоДоговорДата = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Дата");
СвойствоДоговорНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Договор Номер");
СвойствоФИООтветственного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ФИО Ответственного");
СвойствоДолжностьОтветсвенного = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Должность ответсвенного");
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваров_СпецификацияЮжКузбассУго ль";
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Документ.Ссылка КАК Ссылка,
| Документ.Дата КАК Дата,
| Документ.Организация КАК Поставщик,
| Документ.Контрагент КАК Получатель,
| Документ.УчитыватьНДС КАК УчитыватьНДС,
| Документ.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
| Документ.Номер КАК Номер
|ИЗ
| Документ.РеализацияТоваров КАК Документ
|ГДЕ
| Документ.Ссылка В(&МассивОбъектов)
| И Документ.Проведен
|
|УПОРЯДОЧИТЬ ПО
| Ссылка,
| Дата
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ТаблицаТовары.Номенклатура КАК Номенклатура,
| ТаблицаТовары.Номенклатура.Представление КАК Товар,
| ВЫРАЗИТЬ(ТаблицаТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(200)) КАК НоменклатураПредставление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика) КАК ХарактеристикаПредставление,
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ КАК ЕдиницаИзмерения,
| СУММА(ТаблицаТовары.Количество) КАК Количество,
| СУММА(ТаблицаТовары.КоличествоУпаковок) КАК КоличествоУпаковок,
| МАКСИМУМ(ВЫБОР
| КОГДА ТаблицаТовары.Количество = 0
| ТОГДА ТаблицаТовары.Количество
| ИНАЧЕ ТаблицаТовары.Сумма / ТаблицаТовары.Количество
| КОНЕЦ) КАК Цена,
| СУММА(ТаблицаТовары.Сумма) КАК Сумма,
| СУММА(ТаблицаТовары.СуммаНДС) КАК СуммаНДС,
| ТаблицаТовары.СтавкаНДС КАК СтавкаНДС
|ИЗ
| Документ.РеализацияТоваров.Товары КАК ТаблицаТовары
|ГДЕ
| ТаблицаТовары.Ссылка В(&МассивОбъектов)
| И ТаблицаТовары.Ссылка.Проведен
|
|СГРУППИРОВАТЬ ПО
| ТаблицаТовары.Номенклатура,
| ТаблицаТовары.Номенклатура.Представление,
| ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Характеристика),
| ВЫБОР
| КОГДА ТаблицаТовары.Упаковка <> ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
| ТОГДА ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Упаковка.ЕдиницаИзмерения)
| ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ТаблицаТовары.Номенклатура.ЕдиницаИзмерения)
| КОНЕЦ,
| ВЫРАЗИТЬ(ТаблицаТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(200)),
| ТаблицаТовары.СтавкаНДС
|
|УПОРЯДОЧИТЬ ПО
| Номенклатура
|АВТОУПОРЯДОЧИВАНИЕ");
Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
Результаты = Запрос.ВыполнитьПакет();
Макет = ПолучитьМакет("Макет");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ВыборкаПоДокументам = Результаты[0].Выбрать();
ВыборкаПоТабличнымЧастям = Результаты[1].Выбрать();
ВыборкаПоДокументам.Следующий();
//Если НЕ ВыборкаПоТабличнымЧастям.НайтиСледующий(Новый Структура("Ссылка",ВыборкаПоДокументам.Ссылка)) Тогда
// Продолжить;
//КонецЕсли;
//ВыборкаПоТабличнымЧастям = ВыборкаПоТабличнымЧастям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
//НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
//ТЗ_ДоговорДата = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорДата);
//Если ТЗ_ДоговорДата.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорДата = Формат(ТЗ_ДоговорДата[0].Значение,"ДЛФ=DD");
//КонецЕсли;
//
//ТЗ_ДоговорНомер = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДоговорНомер);
//Если ТЗ_ДоговорНомер.Количество() Тогда
// ОбластьШапка.Параметры.ДоговорНомер = ТЗ_ДоговорНомер[0].Значение;
//КонецЕсли;
ОбластьШапка.Параметры.Номер = ВыборкаПоДокументам.Номер;
ОбластьШапка.Параметры.Дата = Формат(ВыборкаПоДокументам.Дата,"ДЛФ=DD");
ТабличныйДокумент.Вывести(ОбластьШапка);
ИтогоСуммаБезНДС = 0;
ИтогоСуммаСНДС = 0;
ИтогоНДС = 0;
// СТРОКИ ТЧ
Пока ВыборкаПоТабличнымЧастям.Следующий() Цикл
//Если НЕ ЗначениеЗаполнено(ВыборкаПоТабличнымЧастям.Номенклатура) Тогда
// Продолжить;
//КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаПоТабличнымЧастям);
ОбластьСтрока.Параметры.Товар = ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(ВыборкаПоТабличнымЧастям.НоменклатураПредставление,ВыборкаПоТабличнымЧастям.ХарактеристикаПредставление);
//ОбластьСтрока.Параметры.Производитель = ВыборкаПоТабличнымЧастям.Номенклатура.Производитель;
//ОбластьСтрока.Параметры.НТД = ВыборкаПоТабличнымЧастям.Номенклатура.Артикул;
СтавкаНДСЧисло = ОбработкаТабличнойЧастиТоварыКлиентСерверПовтИсп.ПолучитьСтавкуНДСЧислом(ВыборкаПоТабличнымЧастям.СтавкаНДС) * 100;
Если ВыборкаПоДокументам.ЦенаВключаетНДС Тогда // ! тут момент с проверкой включения НДС для каждого документа (упрощаем до одного документа)
ЦенаБезНдс = окр(ВыборкаПоТабличнымЧастям.Цена * 100 / (100 + СтавкаНДСЧисло),2);
СуммаБезНдс = ВыборкаПоТабличнымЧастям.Сумма - ВыборкаПоТабличнымЧастям.СуммаНДС;
СуммаСНдс = ВыборкаПоТабличнымЧастям.Сумма;
Иначе
ЦенаБезНдс = ВыборкаПоТабличнымЧастям.Цена;
СуммаБезНдс = ВыборкаПоТабличнымЧастям.Сумма;
СуммаСНдс = ВыборкаПоТабличнымЧастям.Сумма + ВыборкаПоТабличнымЧастям.СуммаНДС;
КонецЕсли;
ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНдс;
ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНдс;
ИтогоНДС = ИтогоНДС + ВыборкаПоТабличнымЧастям.СуммаНДС;
ОбластьСтрока.Параметры.ЦенаБезНдс = ЦенаБезНдс;
ОбластьСтрока.Параметры.СуммаБезНдс = СуммаБезНдс;
ОбластьСтрока.Параметры.СуммаСНдс = СуммаСНдс;
ТабличныйДокумент.Вывести(ОбластьСтрока);
КонецЦикла;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДС = ИтогоСуммаБезНДС;
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
ОбластьПодвал.Параметры.ИтогоСуммаБезНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоСуммаСНДС);
ОбластьПодвал.Параметры.ИтогоСуммаСНДС = ИтогоСуммаСНДС;
//ОбластьПодвал.Параметры.ИтогоНДС = ИтогоНДС;
//ОбластьПодвал.Параметры.ИтогоНДСПрописью = ФормированиеПечатныхФормСервер.СформироватьСуммуПрописью(ИтогоНДС);
Руководители = ФормированиеПечатныхФормСервер.ОтветственныеЛицаОрганизаций(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата);
//ОбластьМакета.Параметры.ДолжностьРуководителя = Руководители.РуководительДолжность;
ОбластьПодвал.Параметры.ПостДиректор = ФормированиеПечатныхФормСервер.ФамилияИнициалыФизЛица(Руководители.Руководитель);
ПредставлениеПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Поставщик = ПредставлениеПоставщика;
ПредставлениеПолучателя = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Получатель, ВыборкаПоДокументам.Дата), "ПолноеНаименование,");
ОбластьПодвал.Параметры.Покупатель = ПредставлениеПолучателя;
//ОбластьПодвал.Параметры.АдресПоставщика = ФормированиеПечатныхФормСервер.ОписаниеОрганизации(ФормированиеПечатныхФормСервер.СведенияОЮрФизЛице(ВыборкаПоДокументам.Поставщик, ВыборкаПоДокументам.Дата), "ФактическийАдрес,");
//ТЗ_ПокДиректор = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоФИООтветственного);
//Если ТЗ_ПокДиректор.Количество() Тогда
// ОбластьПодвал.Параметры.ПокДиректор = ТЗ_ПокДиректор[0].Значение;
//КонецЕсли;
//
//ТЗ_ДолжностьДиректора = УправлениеСвойствами.ПолучитьЗначенияСвойств(ВыборкаПоДокументам.Получатель,Истина,ложь,СвойствоДолжностьОтветсвенного);
//Если ТЗ_ДолжностьДиректора.Количество() Тогда
// ОбластьПодвал.Параметры.ДолжностьДиректора = ТЗ_ДолжностьДиректора[0].Значение;
//КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьПодвал);
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ВыборкаПоДокументам.Ссылка);
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции
Показатьзы: по ошибке сумму(цены) написал, исправил на максимум
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)