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