Настройка внешней печатной формы (Ориентация)

1. Lejte 30.10.23 13:15 Сейчас в теме
Добрый день! Впервые в жизни занимаюсь печатными формами в 1с. Путем изучения макулатуры, проб, ошибок, выкуренных сигарет, саму форму собрал, все данные подтягивает... но не могу изменить ориентацию на ландшафтную. Даже формат изменил на а5, все получилось, только не ориентация... подскажите что может быть не так?



Функция СведенияОВнешнейОбработке()Экспорт
	
	ПараметрыРегистрации = Новый Структура;
	МассивНазначений = Новый Массив;
	МассивНазначений.Добавить("Справочник.ВидыМедицинскихКарт"); //Указываем документ к которому делаем внешнюю печ. форму
	ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов... 
	ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
	ПараметрыРегистрации.Вставить("Наименование", "Мед карта стом. по форме 043/у (изменённая)"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
	ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
	ПараметрыРегистрации.Вставить("Версия", "1.0"); 
	ПараметрыРегистрации.Вставить("Информация", "Внешняя печатная форма изменённой мед. карты (по форме 043/у)"); 
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	ДобавитьКоманду(ТаблицаКоманд, "Внешняя печ. форма 043/у", "стомАмбулаторнаяКарта043УПолная_2_0", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции


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

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
	
	НоваяКоманда = ТаблицаКоманд.Добавить();
	НоваяКоманда.Представление = Представление;
	НоваяКоманда.Идентификатор = Идентификатор;
	НоваяКоманда.Использование = Использование;
	НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
	НоваяКоманда.Модификатор = Модификатор;
	
КонецПроцедуры

#КонецОбласти

Функция Печать() Экспорт //МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	
	ТабДок = Новый ТабличныйДокумент;
		ТабДок.РазмерСтраницы="A5";
   ТабДок.АвтоМасштаб             = Истина;
   ТабДок.ОриентацияСтраницы      = ОриентацияСтраницы.Ландшафт;
       
 	Макет = ПолучитьМакет("стомАмбулаторнаяКарта043УПолная_2_0"); 
	
	Область = Макет.ПолучитьОбласть("СтраницаШапка");
	Область.Параметры.ФИО = СсылкаНаОбъект.Клиент.Фамилия + " " + СсылкаНаОбъект.Клиент.Имя + " " + СсылкаНаОбъект.Клиент.Отчество; 
    Область.Параметры.ДатаРождения 	= Формат(СсылкаНаОбъект.Клиент.ДатаРождения, "ДФ=dd.MM.yyyy");//Строка(День(СсылкаНаОбъект.Клиент.ДатаРождения))+"."+Строка(Месяц(СсылкаНаОбъект.Клиент.ДатаРождения))+"."+Формат(Год(СсылкаНаОбъект.Клиент.ДатаРождения),"ЧГ=0")+"г.";
    ДатаРождения	= СсылкаНаОбъект.Клиент.ДатаРождения;
	Возраст = Год(Текущаядата()) - Год(ДатаРождения);	
	
	ДеньТекущий = День(Текущаядата());
	МесяцТекущий = Месяц(ТекущаяДата());
	
	ДеньРождения = День(ДатаРождения);
	МесяцРождения = Месяц(ДатаРождения);
	
	Если МесяцРождения < МесяцТекущий ИЛИ (МесяцРождения = МесяцТекущий И ДеньРождения < ДеньТекущий) Тогда
		Возраст = Возраст - 1;
	КонецЕсли;
	
	Область.Параметры.Пол 			= СсылкаНаОбъект.Клиент.Пол;
	Область.Параметры.Адрес 		= ПолучитьАдресКлиента(СсылкаНаОбъект.Клиент, "Прописка");   
	Область.Параметры.АдресПроживания 		= ПолучитьАдресКлиента(СсылкаНаОбъект.Клиент, "Фактический");   
	Область.Параметры.МестоРождения	= ПолучитьАдресКлиента(СсылкаНаОбъект.Клиент, "МестоРождения");   
	
	Область.Параметры.МестоРаботы	= СсылкаНаОбъект.Клиент.умцМестоРаботы;
	Телефон = ПолучитьТелефонКлиента(СсылкаНаОбъект.Клиент);
	Если ПустаяСтрока(Телефон) Тогда
		Область.Параметры.НомерТелефона = "";
	Иначе
		Область.Параметры.НомерТелефона = "тел. " + Телефон;
	КонецЕсли;

	Область.Параметры.ПредставлениеОрганизации	= СсылкаНаОбъект.Филиал.МедицинскаяОрганизация;
	Область.Параметры.НомерКарты	= Формат(СсылкаНаОбъект.НомерКарты,"ЧГ=0");
	Область.Параметры.ДатаКарты		= Формат(ТекущаяДата(),"ДФ=dd.MM.yyyy");
	Область.Параметры.СнилсНомер	= СсылкаНаОбъект.Клиент.СНИЛС;
	Область.Параметры.СтрПолис		= "серия " + СсылкаНаОбъект.Клиент.умцОсновнойСтраховойПолис.Серия +
		" № " + СсылкаНаОбъект.Клиент.умцОсновнойСтраховойПолис.Номер;
	Область.Параметры.НаименованиеСтраховойК	= СсылкаНаОбъект.Клиент.умцОсновнойСтраховойПолис.ВидПолиса.Наименование;
	Область.Параметры.ГородСело		= ПолучитьСвойстваКлиента(СсылкаНаОбъект.Клиент);
	Область.Параметры.СоцСтатус		= СсылкаНаОбъект.Клиент.СоцСтатус;
	Область.Параметры.ДокументЛичности		= ПолучитьПаспортКлиента(СсылкаНаОбъект.Клиент, "Номер");
	
	ВидДокумента		= ПолучитьПаспортКлиента(СсылкаНаОбъект.Клиент, "Вид");
	Область.Параметры.ВидДокументаЛичности	= ВидДокумента;
	ТабДок.Вывести(Область);
	ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
	Возврат	ТабДок;
КонецФункции
Показать
По теме из базы знаний
Найденные решения
2. Lejte 30.10.23 13:48 Сейчас в теме
Все работает) Оказывается всего то надо было перезапустить 1с....
NicolasCage; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Lejte 30.10.23 13:48 Сейчас в теме
Все работает) Оказывается всего то надо было перезапустить 1с....
NicolasCage; +1 Ответить
3. user2114888 20.11.24 11:23 Сейчас в теме
Добрый день! Помогите пожалуйста. Нужно изменить приказ на командировку. Хочу изменить ориентацию страницы, чтобы документ заполнялся в альбомной ориентации. При настройках принтера (ландшафт) ориентация страницы вроде меняется, но документ все равно заполняется как в книжной ориентации. Через настраиваемые печатные формы это можно изменить?
Прикрепленные файлы:
4. user2107191 20.11.24 11:29 Сейчас в теме
(3)
При настройках принтера (ландшафт) ориентация страницы вроде меняется, но документ все равно заполняется как в книжной ориентации.
Попробуй взять принтер формата А3. Тогда точно получится. Ведь именно возможности и настройки принтера определяют то, как работает 1С. А если принтер отключить - то документ вообще формироваться перестанет.
настраиваемые печатные формы
Что за зверь такой?
5. пользователь 20.11.24 12:39
Сообщение было скрыто модератором.
...
6. user2107191 20.11.24 12:49 Сейчас в теме
(5)
..
Че так засмущалась-то?
Чем требовать помощи, взяла бы да и изменила алгоритм формирования печатной формы.
Прикрепленные файлы:
7. XelOla 19 20.11.24 13:09 Сейчас в теме
(3) ручное редактирование документа.

кол-во столбцов скорее всего определено программно.
8. user2114888 20.11.24 14:57 Сейчас в теме
Оставьте свое сообщение

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