helpf.pro
Регистрация

v8.2 УП: вывод печатной формы

PahaB
12.12.2016 16:32Прочитано: 1519

Здравствуйте, подскажите как реализовать вывод печатной формы? Сам сделал следующее, но последний элемент в каждом подразделении не выводит. сначала проверяю на заполненность организации и предприятия, потом сверяю текущую строку с предыдущей. Если строки одинаковы и есть "причина отказа", то в строку добавляется "причина отказа" через слэш.

Код 1C v 8.2 УП
 	
НомерСтраницы   = 1;
ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТЧ");
ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы; 
ТабДок.Вывести(ЗаголовокТаблицы);                        


ОрганизацияТЧ = Справочники.Организации.ПустаяСсылка();
ЦФОТЧ = Справочники.Подразделения.ПустаяСсылка();
НоменклатураТЧ = Справочники.Номенклатура.ПустаяСсылка();
ХарактеристикаНоменклатурыТЧ = Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка();
СтатьяЗатратТЧ = Справочники.СтатьиЗатрат.ПустаяСсылка();
    Номер = 0;
Разрыв = 1;
    КоличествоСтрок = 1;

Для Каждого Строка из ЗапросНоменклатура Цикл

Если ТабДок.КоличествоСтраниц()<>Разрыв Тогда
НомерСтраницы = НомерСтраницы + 1;
ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); 
ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
ТабДок.Вывести(ЗаголовокТаблицы);
Разрыв = ТабДок.КоличествоСтраниц();
КонецЕсли;


Если  Не ЗначениеЗаполнено(Организация) и Не ЗначениеЗаполнено(ПодразделениеЦФО) Тогда
Если ОрганизацияТЧ <> Строка.Организация Тогда
ОргТаб = Макет.ПолучитьОбласть("Организация");
ОргТаб.Параметры.ОрганизацияТаб = Строка.Организация; 
ТабДок.Вывести(ОргТаб);
КонецЕсли;
Если ЦФОТЧ <> Строка.ЦФО  Тогда
ЦФОТаб = Макет.ПолучитьОбласть("Подразделение");
ЦФОТаб.Параметры.ПодразделениеТаб = Строка.ЦФО; 
ТабДок.Вывести(ЦФОТаб);
Если КоличествоСтрок = 2 Тогда

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер-1]);

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = КоличествоСтрок;
  СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер-1].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер-1].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер-1].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер-1].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер-1].ПлановоеКоличество;
  СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер-1].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер-1].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                 = ЗапросНоменклатура[Номер-1].ПричинаОтказа;

ТабДок.Вывести(СтрокаТЧ);
КонецЕсли;


КоличествоСтрок = 1;
КонецЕсли;
ИначеЕсли ЗначениеЗаполнено(Организация) И Не ЗначениеЗаполнено(ПодразделениеЦФО) Тогда
Если ЦФОТЧ <> Строка.ЦФО  Тогда
ЦФОТаб = Макет.ПолучитьОбласть("Подразделение");
ЦФОТаб.Параметры.ПодразделениеТаб = Строка.ЦФО; 
ТабДок.Вывести(ЦФОТаб);
Если КоличествоСтрок = 2 Тогда

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер-1]);

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = КоличествоСтрок;
  СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер-1].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер-1].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер-1].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер-1].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер-1].ПлановоеКоличество;
  СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер-1].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер-1].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ЗапросНоменклатура[Номер-1].ПричинаОтказа;

ТабДок.Вывести(СтрокаТЧ);
КонецЕсли;


КоличествоСтрок = 1;
КонецЕсли;
ИначеЕсли ЗначениеЗаполнено(ПодразделениеЦФО)  И Не ЗначениеЗаполнено(Организация) Тогда
Если ОрганизацияТЧ <> Строка.Организация Тогда
ОргТаб = Макет.ПолучитьОбласть("Организация");
ОргТаб.Параметры.ОрганизацияТаб = Строка.Организация; 
ТабДок.Вывести(ОргТаб);
Если КоличествоСтрок = 2 Тогда

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер-1]);

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = КоличествоСтрок;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер-1].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер-1].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер-1].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер-1].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер-1].ПлановоеКоличество;
  СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер-1].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер-1].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ЗапросНоменклатура[Номер-1].ПричинаОтказа;

ТабДок.Вывести(СтрокаТЧ);
КонецЕсли;
КоличествоСтрок = 1;
КонецЕсли;
КонецЕсли;

Если КоличествоСтрок = 1 Тогда

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа); 

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = КоличествоСтрок;
  СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
    СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;

Иначе
Если 
 ОрганизацияТЧ = ЗапросНоменклатура[Номер].Организация 
И ЦФОТЧ = ЗапросНоменклатура[Номер].ЦФО 
И НоменклатураТЧ = ЗапросНоменклатура[Номер].Номенклатура 
И ХарактеристикаНоменклатурыТЧ = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры 
И СтатьяЗатратТЧ = ЗапросНоменклатура[Номер].СтатьяЗатрат Тогда

КоличествоСтрок = КоличествоСтрок - 1;

Если ЗапросНоменклатура[Номер].ПричинаОтказа = "" Тогда
ПричинаОтказа = Строка(ПричинаОтказа);
Иначе
ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа) + " / " + ПричинаОтказа;
КонецЕсли;

СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;
Иначе

ТабДок.Вывести(СтрокаТЧ);

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа);

СтрокаТЧ.Параметры.Номер = КоличествоСтрок;
    СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
    СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;


КонецЕсли;

КонецЕсли;

НоменклатураТЧ = Строка.Номенклатура;
ХарактеристикаНоменклатурыТЧ = Строка.ХарактеристикаНоменклатуры;
СтатьяЗатратТЧ = Строка.СтатьяЗатрат;
ОрганизацияТЧ = Строка.Организация;
ЦФОТЧ = Строка.ЦФО;

Номер = Номер + 1;
КоличествоСтрок = КоличествоСтрок + 1;
КонецЦикла;

    ТабДок.Вывести(СтрокаТЧ);
Yandex
Возможно, вас также заинтересует
Реклама на портале
all4cf
12.12.2016 19:44Ответ № 1

слишком много условий, видимо где то недоходит до последнего - проверяй отладчиком

PahaB
15.12.2016 10:15Ответ № 2

Если кому интересен будет данный вывод

Код 1C v 8.2 УП
 НомерСтраницы   = 1;
ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТЧ");
ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы; 
ТабДок.Вывести(ЗаголовокТаблицы);                        


ОрганизацияТЧ = Справочники.Организации.ПустаяСсылка();
ЦФОТЧ = Справочники.Подразделения.ПустаяСсылка();
НоменклатураТЧ = Справочники.Номенклатура.ПустаяСсылка();
ХарактеристикаНоменклатурыТЧ = Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка();
СтатьяЗатратТЧ = Справочники.СтатьиЗатрат.ПустаяСсылка();
    Номер = 0;
Разрыв = 1;
НомерСтроки = 0;
ПричинаОтказа = "";

Для Каждого Строка из ЗапросНоменклатура Цикл

Если ТабДок.КоличествоСтраниц()<>Разрыв Тогда
НомерСтраницы = НомерСтраницы + 1;
ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); 
ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
ТабДок.Вывести(ЗаголовокТаблицы);
Разрыв = ТабДок.КоличествоСтраниц();
КонецЕсли;


Если Номер = 0 Тогда

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = 1;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
СтрокаТЧ.Параметры.РезервНаСкладе = ЗапросНоменклатура[Номер].РезервНаСкладе;
СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа);

ИначеЕсли ЗапросНоменклатура.Количество() = Номер + 1 Тогда

Если  ОрганизацияТЧ = ЗапросНоменклатура[Номер].Организация 
И ЦФОТЧ = ЗапросНоменклатура[Номер].ЦФО 
И НоменклатураТЧ = ЗапросНоменклатура[Номер].Номенклатура 
И ХарактеристикаНоменклатурыТЧ = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры 
И СтатьяЗатратТЧ = ЗапросНоменклатура[Номер].СтатьяЗатрат Тогда

                Если ЗапросНоменклатура[Номер].ПричинаОтказа = "" Тогда
ПричинаОтказа = Строка(ПричинаОтказа);
Иначе
ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа) + " / " + ПричинаОтказа;
КонецЕсли;
Иначе
ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа);
КонецЕсли;

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = НомерСтроки;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
СтрокаТЧ.Параметры.РезервНаСкладе = ЗапросНоменклатура[Номер].РезервНаСкладе;
СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;

Иначе
//Сравнение с следующим элементом
Если  (ЗапросНоменклатура[Номер].Организация = ЗапросНоменклатура[Номер + 1].Организация
И ЗапросНоменклатура[Номер].ЦФО = ЗапросНоменклатура[Номер + 1].ЦФО
И ЗапросНоменклатура[Номер].СтатьяЗатрат = ЗапросНоменклатура[Номер + 1].СтатьяЗатрат
И ЗапросНоменклатура[Номер].Номенклатура = ЗапросНоменклатура[Номер + 1].Номенклатура
И ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер + 1].ХарактеристикаНоменклатуры) Тогда

Если ЗапросНоменклатура[Номер].ПричинаОтказа = "" Тогда
ПричинаОтказа = Строка(ПричинаОтказа);
Иначе
ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа) + " / " + ПричинаОтказа;
КонецЕсли;
НомерСтроки = НомерСтроки - 1;
СтрокаТЧ.Параметры.Номер = НомерСтроки;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;              
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
СтрокаТЧ.Параметры.РезервНаСкладе = ЗапросНоменклатура[Номер].РезервНаСкладе;
СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;

//Сравнение с предыдущим элементом
ИначеЕсли
       (ОрганизацияТЧ = ЗапросНоменклатура[Номер].Организация 
И ЦФОТЧ = ЗапросНоменклатура[Номер].ЦФО 
И НоменклатураТЧ = ЗапросНоменклатура[Номер].Номенклатура 
И ХарактеристикаНоменклатурыТЧ = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры 
И СтатьяЗатратТЧ = ЗапросНоменклатура[Номер].СтатьяЗатрат) Тогда

Если ЗапросНоменклатура[Номер].ПричинаОтказа = "" Тогда
ПричинаОтказа = Строка(ПричинаОтказа);
Иначе
ПричинаОтказа =ПричинаОтказа + Строка(ЗапросНоменклатура[Номер].ПричинаОтказа);
КонецЕсли;

НомерСтроки = НомерСтроки - 1;


   СтрокаТЧ.Параметры.Номер = НомерСтроки;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;              
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
СтрокаТЧ.Параметры.РезервНаСкладе = ЗапросНоменклатура[Номер].РезервНаСкладе;
СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;

НомерСтроки = НомерСтроки + 1;
ПричинаОтказа = ""
Иначе

ПричинаОтказа = Строка(ЗапросНоменклатура[Номер].ПричинаОтказа);

СтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");

СтрокаТЧ.Параметры.Номер = НомерСтроки ;
   СтрокаТЧ.Параметры.СтатьяЗатрат = ЗапросНоменклатура[Номер].СтатьяЗатрат;
СтрокаТЧ.Параметры.Номенклатура = ЗапросНоменклатура[Номер].Номенклатура;
СтрокаТЧ.Параметры.ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры;              
СтрокаТЧ.Параметры.ЕдиницаИзмерения = ЗапросНоменклатура[Номер].Номенклатура.ЕдиницаХраненияОстатков;
СтрокаТЧ.Параметры.ПлановоеКолВо = ЗапросНоменклатура[Номер].ПлановоеКоличество;
СтрокаТЧ.Параметры.РезервНаСкладе = ЗапросНоменклатура[Номер].РезервНаСкладе;
СтрокаТЧ.Параметры.ФактПолучКолВо = ЗапросНоменклатура[Номер].ФактическоеКоличество;
СтрокаТЧ.Параметры.Отклонение = ЗапросНоменклатура[Номер].Отклонение;
СтрокаТЧ.Параметры.ПричиныОтказа                = ПричинаОтказа;

КонецЕсли;

КонецЕсли;


Если  Не ЗначениеЗаполнено(Организация) и Не ЗначениеЗаполнено(ПодразделениеЦФО) Тогда
Если ОрганизацияТЧ <> Строка.Организация Тогда
ОргТаб = Макет.ПолучитьОбласть("Организация");
ОргТаб.Параметры.ОрганизацияТаб = Строка.Организация; 
ТабДок.Вывести(ОргТаб);
КонецЕсли;
Если ЦФОТЧ <> Строка.ЦФО  Тогда

ЦФОТаб = Макет.ПолучитьОбласть("Подразделение");
ЦФОТаб.Параметры.ПодразделениеТаб = Строка.ЦФО; 
ТабДок.Вывести(ЦФОТаб);
НомерСтроки = 1;
СтрокаТЧ.Параметры.Номер = НомерСтроки;
КонецЕсли;

ИначеЕсли ЗначениеЗаполнено(Организация)  И Не ЗначениеЗаполнено(ПодразделениеЦФО) Тогда
Если ЦФОТЧ <> Строка.ЦФО Тогда

ЦФОТаб = Макет.ПолучитьОбласть("Подразделение");
ЦФОТаб.Параметры.ПодразделениеТаб = Строка.ЦФО; 
ТабДок.Вывести(ЦФОТаб);
НомерСтроки = 1;
СтрокаТЧ.Параметры.Номер = НомерСтроки;
КонецЕсли;


ИначеЕсли ЗначениеЗаполнено(ПодразделениеЦФО)  И Не ЗначениеЗаполнено(Организация) Тогда
Если ОрганизацияТЧ <> Строка.Организация  Тогда

ОргТаб = Макет.ПолучитьОбласть("Организация");
ОргТаб.Параметры.ОрганизацияТаб = Строка.Организация; 
ТабДок.Вывести(ОргТаб);
НомерСтроки = 1;
СтрокаТЧ.Параметры.Номер = НомерСтроки;
КонецЕсли;
КонецЕсли;


Если ЗапросНоменклатура.Количество() <> Номер + 1 И ЗапросНоменклатура.Количество() > 1 Тогда
Если ЗапросНоменклатура[Номер].Организация = ЗапросНоменклатура[Номер +1].Организация
И ЗапросНоменклатура[Номер].ЦФО = ЗапросНоменклатура[Номер + 1].ЦФО
И ЗапросНоменклатура[Номер].СтатьяЗатрат = ЗапросНоменклатура[Номер + 1].СтатьяЗатрат
И ЗапросНоменклатура[Номер].Номенклатура = ЗапросНоменклатура[Номер + 1].Номенклатура
И ЗапросНоменклатура[Номер].ХарактеристикаНоменклатуры = ЗапросНоменклатура[Номер + 1].ХарактеристикаНоменклатуры Тогда
Иначе
ТабДок.Вывести(СтрокаТЧ);
КонецЕсли;
КонецЕсли;

Если ЗапросНоменклатура.Количество() = 1 Тогда
ТабДок.Вывести(СтрокаТЧ);
КонецЕсли;

   НоменклатураТЧ = Строка.Номенклатура;
ХарактеристикаНоменклатурыТЧ = Строка.ХарактеристикаНоменклатуры;
СтатьяЗатратТЧ = Строка.СтатьяЗатрат;
ОрганизацияТЧ = Строка.Организация;
ЦФОТЧ = Строка.ЦФО;


Номер = Номер + 1;
        НомерСтроки = НомерСтроки + 1;

КонецЦикла;

    ТабДок.Вывести(СтрокаТЧ);
Подсказка: Для редактирования своего ответа щелкните по значку (справа)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.