Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 мая 2025, 05:59

Печатная форма 1С на английском языке

Автор sali, 14 мая 2025, 11:24

0 Пользователей и 2 гостей просматривают эту тему.

antoneus

Если ничего - значит, он и не нужен вообще? Зачем мы тогда тут смотрим, как он заполняется?

sali

antoneus, МассивОбластейМакета = Новый Массив;

МассивОбластейМакета.Добавить("Заголовок");
МассивОбластейМакета.Добавить("ШапкаТаблицы");
МассивОбластейМакета.Добавить("Строка");       
Если Шапка.СкидкаСсылка <> NULL Тогда//ЗначениеЗаполнено(Шапка.СкидкаСсылка) Тогда
МассивОбластейМакета.Добавить("СтрокаСкидка");   
КонецЕсли; 
МассивОбластейМакета.Добавить("СтрокаПоле");
Если ЗначениеЗаполнено(Шапка.СрокОплаты) Тогда 
МассивОбластейМакета.Добавить("ИтогПродленный");   
Иначе
МассивОбластейМакета.Добавить("Итог"); 
КонецЕсли;

МассивОбластейМакета.Добавить("Подвал");
Для Каждого ИмяОбласти Из МассивОбластейМакета Цикл
ОбластьМакета = Макет.ПолучитьОбласть(ИмяОбласти);
Если СтрЧислоВхождений(ИмяОбласти, "Строка") > 0 Тогда

Для Каждого СтрокаТаблицы Из ТаблицаУслуги Цикл
ОбластьМакета.Параметры.Заполнить(СтрокаТаблицы);
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЦикла;

Иначе
ЗаполнитьЗначенияСвойств(ОбластьМакета.Параметры, ДанныеПечати);
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЕсли;

КонецЦикла;
это код с другой ПФ немного изменен под английскую версию

antoneus

Теперь смотрим. Цикл по массиву областей. Мы доходим до имени области "СтрокаСкидка". Есть в этом имени "Строка"? Есть. Значит, идем по таблице услуг и заполняем из нее эту область и выводим. Но данные для этой области у нас находятся в поле переменной Шапка - ведь мы проверяем заполнение Шапка.СкидкаСсылка. И почему же не выводится скидка?

sali

antoneus, спасибо вам , я просто оставил в имени области "Скидка" и она появилась

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск