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

v8.3:

RinatSibay
03.01.2025 05:46Прочитано: 139

Здравствуйте. Помогите пожалуйста с таким вопросом. Изучал вопрос в интернете, не получилось адаптировать коды под своб задачу.

Дано: Документ: ЛистНазначения

Дано: Справочник: Проживающие

Вопрос: 1. Как сделать чтобы Подвал печатался в конце каждой страницы? 

2. Возможно ли сделать так, чтобы распечатывалась информация одним документом из двух справочников? (второй справочник: Документы)

&НаКлиенте

Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

//{{_КОНСТРУКТОР_ПЕЧАТИ(ПечатьЛН)

ТабДок = Новый ТабличныйДокумент;

ПечатьЛН(ТабДок, ПараметрКоманды);

ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;

ТабДок.МасштабПечати = 100;

ТабДок.ПолеСверху = 5;

ТабДок.ПолеСлева =5;

ТабДок.ПолеСправа = 5;

ТабДок.ПолеСнизу =10;

//ТабДок.РазмерКолонтитулаСверху =1;

//ТабДок.РазмерКолонтитулаСнизу =10;

ТабДок.ПовторятьПриПечатиСтроки = ТабДок.Область(1, , 5);

ТабДок.ОтображатьСетку = Ложь;

ТабДок.Защита = Ложь;

ТабДок.ТолькоПросмотр = Ложь;

ТабДок.ОтображатьЗаголовки = Ложь;

ТабДок.Показать();

//}}

КонецПроцедуры

&НаСервере

Процедура ПечатьЛН(ТабДок, ПараметрКоманды)

Документы.Документ_ЛистНазначений.ПечатьЛН(ТабДок, ПараметрКоманды);

КонецПроцедуры

Процедура ПечатьЛН(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(ПечатьЛН)

Макет = Документы.Документ_ЛистНазначений.ПолучитьМакет("ПечатьЛН");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

|Документ_ЛистНазначений.Месяц,

|Документ_ЛистНазначений.ПСУ,

|Документ_ЛистНазначений.ЛекарственныеНазначения.(

|ДатаНазначения,

|ДатаОтмены,

|Наименование,

|Доза,

|Прием,

|Число1,

|Число2,

|Число3,

|Число4,

|Число5,

|Число6,

|Число7,

|Число8,

|Число9,

|Число10,

|Число11,

|Число12,

|Число13,

|Число14,

|Число15,

|Число16,

|Число17,

|Число18,

|Число19,

|Число20,

|Число21,

|Число22,

|Число23,

|Число24,

|Число25,

|Число26,

|Число27,

|Число28,

|Число29,

|Число30,

|Число31

|)

|ИЗ

|Документ.Документ_ЛистНазначений КАК Документ_ЛистНазначений

|ГДЕ

|Документ_ЛистНазначений.Ссылка В (&Ссылка)";

Запрос.Параметры.Вставить("Ссылка", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

Шапка = Макет.ПолучитьОбласть("Шапка");

ОбластьЛекарственныеНазначенияШапка = Макет.ПолучитьОбласть("ЛекарственныеНазначенияШапка");

ОбластьЛекарственныеНазначения = Макет.ПолучитьОбласть("ЛекарственныеНазначения");

ОбластьМакетаПодвал = Макет.ПолучитьОбласть("Подвал");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;

Пока Выборка.Следующий() Цикл

Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьЛекарственныеНазначенияШапка);

ВыборкаЛекарственныеНазначения = Выборка.ЛекарственныеНазначения.Выбрать();

Пока ВыборкаЛекарственныеНазначения.Следующий() Цикл

ОбластьЛекарственныеНазначения.Параметры.Заполнить(ВыборкаЛекарственныеНазначения);

ТабДок.Вывести(ОбластьЛекарственныеНазначения, ВыборкаЛекарственныеНазначения.Уровень());

КонецЦикла;

Подвал = ТабДок.Вывести(ОбластьМакетаПодвал);

ТабДок.ПовторятьПриПечатиСтроки = ТабДок.Область("Подвал");

ТабДок.ПроверитьПрисоединение (ОбластьМакетаПодвал);

КонецЦикла;

//}}

КонецПроцедуры

Yandex
Возможно, вас также заинтересует
Реклама на портале
RinatSibay
03.01.2025 05:48Ответ № 1

Дополню. Так выглядит документ при предварительном осмотре, перед печатью. 

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