Вывод областей печатных форм по условию

1. AleksandrLeshkov 19.03.21 08:57 Сейчас в теме
Добрый день! Я начинающий программист. Пытаюсь создать печатную форму, в которой области будут подключаться по условию. Для того, чтобы не плодить кучу параметров, так как они почти в каждой области одинаковые решил прописать их сразу и по условию подключать область. Проблема заключается в том, что не происходит заполнение области. Выводится на печать только текст без параметров, однако если условие о подключении следующей области поставить после параметров, всё работает. Подскажите, пожалуйста, где ошибка. В типовых видел, что условия о подключении областей идут друг за другом списком и всё работает

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

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

	
	
	
	Возврат ТабличныйДокумент;
	
Показать
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
16. eliseev112 22.03.21 21:16 Сейчас в теме +0.03 $m
Вот ваш кусок кода переведенный в заполнение из структуры

СтруктураОбласти = Новый Структура;
СтруктураОбласти.Вставить("Заголовок", Запрос.Заголовок);
СтруктураОбласти.Вставить("Формулировка", Запрос.Формулировка);
СтруктураОбласти.Вставить("ТекущийГод", СтрЗаменить(Год(ТекущаяДата()), символы.нпп,""));
СтруктураОбласти.Вставить("Дата", Формат(Запрос.Дата,"ДЛФ = ДД"));
СтруктураОбласти.Вставить("НомерГруппы", Запрос.УчебнаяГруппа);
СтруктураОбласти.Вставить("Курс", Запрос.Курс);

Если Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Зачисление Тогда
ОбластьМакета = Макет.ПолучитьОбласть("Зачисление");
ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Восстановление Тогда
ОбластьМакета = Макет.ПолучитьОбласть("Восстановление");
ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.ВосстановлениеИзАкадемическогоОтпуска И Запрос.Причина = Перечисления.ПричиныДвиженияКонтингента.УходЗаРебенкомДо1_5лет Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ВосстановлениеИзОтпускаРебёнок");

ЗаполнитьСтудентов = Запрос.СписокСтудентов.Выбрать();
// Вот тут не уверен в правильности вашего кода, так как парамерт или в текущей реализации будет все перезатерто последней выборкой, если ее несколько.
Пока ЗаполнитьСтудентов.Следующий() Цикл
СтруктураОбласти.Вставить("ФИОСтудента", ЗаполнитьСтудентов.СтудентФизЛицоФИОВинительныйПадеж);
Если ЗаполнитьСтудентов.СтудентФизЛицоПол = Перечисления.ПолФизическогоЛица.Женский Тогда
СтруктураОбласти.Вставить("Пол", "её");
Иначе
СтруктураОбласти.Вставить("Пол", "его");
КонецЕсли;
КонецЦикла;

Если Запрос.УчебнаяГруппаПрограммаСПОБазовоеОбразование = Перечисления.ОбразовательныеУровни.ОсновноеОбщее Тогда
СтруктураОбласти.Вставить("ПолученноеОбразование","основого общего образования");
Иначе
СтруктураОбласти.Вставить("ПолученноеОбразование","среднего общего образования");
КонецЕсли;

СтруктураОбласти.Вставить("Специальность",Запрос.УчебнаяГруппаСпециальность);
Если Запрос.УчебнаяГруппаФормаОбучения = Перечисления.ФормыОбучения.Очная Тогда
СтруктураОбласти.Вставить("ФормаОбучения", "очную");
Иначе
СтруктураОбласти.Вставить("ФормаОбучения", "заочную");
КонецЕсли;
Если Запрос.УчебнаяГруппаОсновнойВидФинансирования = Перечисления.ВидыФинансирования.Бюджетное Тогда
СтруктураОбласти.Вставить("ВидФинансирования","бюджетную");
Иначе
СтруктураОбласти.Вставить("ВидФинансирования","бюджетную");
КонецЕсли;

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

ТабличныйДокумент.Вывести(СписокСтудентов);
КонецЕсли;

КонецЕсли;
// Вывод Ваших всех параметров
областьМакета.Параметры.Заполнить(СтруктураОбласти);

ТабличныйДокумент.Вывести(ОбластьМакета);
Показать
ILEO_911; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. DenisCh 19.03.21 08:58 Сейчас в теме
        ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Восстановление Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("Восстановление");
        ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.ВосстановлениеИзАкадемическогоОтпуска И Запрос.Причина = Перечисления.ПричиныДвиженияКонтингента.УходЗаРебенкомДо1_5лет Тогда 
        


Где заполнение области Восстановление:?
3. AleksandrLeshkov 19.03.21 09:05 Сейчас в теме
(2) Там дальше идёт ОбластьМакета.Параметры и вот в них она заполняется. Если убираю ИначеЕсли про следующую область, всё начинает работать
5. glek 119 19.03.21 09:10 Сейчас в теме
(3) Вам правильно задали вопрос:
Если Условие Тогда
Область = 
ИначеЕсли Условие Тогда
Область = 
Область.параметры = 
КонецЕсли

Т.е. для области восстановление у Вас нет заполнение параметров
4. DenisCh 19.03.21 09:10 Сейчас в теме
Так оно идет после ИначеЕсли и никак не попадает в твою область.
6. AleksandrLeshkov 19.03.21 09:12 Сейчас в теме
(4) То есть получается после каждого ИначеЕсли надо выводить параметры для области? Если одинаковые, то в последующих Иначе Если подхватятся с тех, что выше? Просто думал, что платформа сначала подхватывает условие о выводе области и потом идёт его заполнять, игнорируя остальное.
7. DenisVol 3 19.03.21 09:12 Сейчас в теме
Вы должны заполнить параметры и выводить область
8. Gerts 12 19.03.21 09:26 Сейчас в теме
Поменяй код на этот




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

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

    
    
    
    Возврат ТабличныйДокумент;
Показать
9. AleksandrLeshkov 19.03.21 10:18 Сейчас в теме
(8)Две последние области из примера стали заполняться, но первая, которая Зачисление, теперь ругается, что ей неизвестны параметры, которые находятся в двух других областях
10. just_junior 19.03.21 10:48 Сейчас в теме
(9) Попробуй так

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

ТабличныйДокумент.Вывести(ОбластьМакета);
Показать
11. AleksandrLeshkov 19.03.21 11:49 Сейчас в теме
(10)Так не ругается, но Зачисление теперь почему-то вообще не выводится
12. just_junior 19.03.21 12:07 Сейчас в теме
(11) Выводится не заполненной или в принципе не выводится?
13. AleksandrLeshkov 19.03.21 12:24 Сейчас в теме
(12) в принципе не выводится
14. bmk74 234 19.03.21 12:40 Сейчас в теме
(11)Дам бесплатный совет, не заполняйте таким способом параметры, сначала создайте структуру, и заполните ее, ключи структуры ,это имена параметров в области, значение и так понятно,
И уже после после когда получите область просто делаете
 областьМакета.Параметры.Заполнить(СтруктураПараметров)

Во первых никогда не получите ошибок при заполнении, да и проще чем писать одно и тоже сто раз. да и области можно уменьшить
в ваше случае например
ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Восстановление ИЛИ
           
      (Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.ВосстановлениеИзАкадемическогоОтпуска И Запрос.Причина = Перечисления.ПричиныДвиженияКонтингента.УходЗаРебенкомДо1_5лет Тогда
Заполняем структурупараметрами
.....
а в конце
Если Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Восстановление Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("Восстановление");
        ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.ВосстановлениеИзАкадемическогоОтпуска И Запрос.Причина = Перечисления.ПричиныДвиженияКонтингента.УходЗаРебенкомДо1_5лет Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ВосстановлениеИзОтпускаРебёнок");
КонецЕсли;
областьМакета.Параметры.Заполнить(СтруктураПараметров);
Показать


Надеюсь понятно, а то лень все печатать
15. Gerts 12 19.03.21 18:24 Сейчас в теме
(11) Вот на каких строках ругается, туда впишите условие "Если Запрос.ВидПриказа <> Перечисления.ВидыПриказовДвиженияКонтингента.Зачисление Тогда ... КонецЕсли"

Или воспользуйтесь советом

(14)
Дам бесплатный совет, не заполняйте таким способом параметры, сначала создайте структуру, и заполните ее, ключи структуры ,это имена параметров в области, значение и так понятно,
И уже после после когда получите область просто делаете
16. eliseev112 22.03.21 21:16 Сейчас в теме +0.03 $m
Вот ваш кусок кода переведенный в заполнение из структуры

СтруктураОбласти = Новый Структура;
СтруктураОбласти.Вставить("Заголовок", Запрос.Заголовок);
СтруктураОбласти.Вставить("Формулировка", Запрос.Формулировка);
СтруктураОбласти.Вставить("ТекущийГод", СтрЗаменить(Год(ТекущаяДата()), символы.нпп,""));
СтруктураОбласти.Вставить("Дата", Формат(Запрос.Дата,"ДЛФ = ДД"));
СтруктураОбласти.Вставить("НомерГруппы", Запрос.УчебнаяГруппа);
СтруктураОбласти.Вставить("Курс", Запрос.Курс);

Если Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Зачисление Тогда
ОбластьМакета = Макет.ПолучитьОбласть("Зачисление");
ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.Восстановление Тогда
ОбластьМакета = Макет.ПолучитьОбласть("Восстановление");
ИначеЕсли Запрос.ВидПриказа = Перечисления.ВидыПриказовДвиженияКонтингента.ВосстановлениеИзАкадемическогоОтпуска И Запрос.Причина = Перечисления.ПричиныДвиженияКонтингента.УходЗаРебенкомДо1_5лет Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ВосстановлениеИзОтпускаРебёнок");

ЗаполнитьСтудентов = Запрос.СписокСтудентов.Выбрать();
// Вот тут не уверен в правильности вашего кода, так как парамерт или в текущей реализации будет все перезатерто последней выборкой, если ее несколько.
Пока ЗаполнитьСтудентов.Следующий() Цикл
СтруктураОбласти.Вставить("ФИОСтудента", ЗаполнитьСтудентов.СтудентФизЛицоФИОВинительныйПадеж);
Если ЗаполнитьСтудентов.СтудентФизЛицоПол = Перечисления.ПолФизическогоЛица.Женский Тогда
СтруктураОбласти.Вставить("Пол", "её");
Иначе
СтруктураОбласти.Вставить("Пол", "его");
КонецЕсли;
КонецЦикла;

Если Запрос.УчебнаяГруппаПрограммаСПОБазовоеОбразование = Перечисления.ОбразовательныеУровни.ОсновноеОбщее Тогда
СтруктураОбласти.Вставить("ПолученноеОбразование","основого общего образования");
Иначе
СтруктураОбласти.Вставить("ПолученноеОбразование","среднего общего образования");
КонецЕсли;

СтруктураОбласти.Вставить("Специальность",Запрос.УчебнаяГруппаСпециальность);
Если Запрос.УчебнаяГруппаФормаОбучения = Перечисления.ФормыОбучения.Очная Тогда
СтруктураОбласти.Вставить("ФормаОбучения", "очную");
Иначе
СтруктураОбласти.Вставить("ФормаОбучения", "заочную");
КонецЕсли;
Если Запрос.УчебнаяГруппаОсновнойВидФинансирования = Перечисления.ВидыФинансирования.Бюджетное Тогда
СтруктураОбласти.Вставить("ВидФинансирования","бюджетную");
Иначе
СтруктураОбласти.Вставить("ВидФинансирования","бюджетную");
КонецЕсли;

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

ТабличныйДокумент.Вывести(СписокСтудентов);
КонецЕсли;

КонецЕсли;
// Вывод Ваших всех параметров
областьМакета.Параметры.Заполнить(СтруктураОбласти);

ТабличныйДокумент.Вывести(ОбластьМакета);
Показать
ILEO_911; +1 Ответить
17. AleksandrLeshkov 29.03.21 11:16 Сейчас в теме
Всем большое спасибо за помощь, благодаря вам разобрался!
Оставьте свое сообщение

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