Как сохранить настройки печатной формы в 1с
Несмотря на простоту вопроса, у пользователей программ 1С он возникает постоянно: «Как разместить документ на одной странице, если его края по ширине или длине выходят на другой лист?» или «Как распечатать два экземпляра документа на одном листе?» Ведь практически все бухгалтеры любят экономить бумагу. В этом лайфхаке раскроем все секреты!
Для этого, как и при работе с обычными текстовыми документами, в конфигурациях 1С есть настройка параметров страницы.
Рассмотрим на примерах.
Настройка ориентации и масштаба листов
Имеем документ «Расчетная ведомость».
Нажав кнопку предварительного просмотра в виде лупы, видно, что форма не «вписывается» в лист бумаги и явно выходит за ее границы. Предварительный просмотр показал форму на 9 листах, разрезав ее на куски.
Для настройки параметров листа по кнопке «Еще» выберите команду «Параметры страницы».
Для данной формы установим параметры:
• Ориентация листа – «ландшафт» - альбомная ориентация.
• Масштаб – «По ширине листа».
При таком масштабе программа автоматически выровняет печатную форму по краям листа. Нажмите «Ок» и проверьте результат.
Форма вместилась на два листа и по краям нет пустого места. Ширина автоматически подобрана.
Ведомость распечатывается с двух сторон.
При необходимости пользователь может задать произвольно масштаб документа, установив значение в процентах.
Настройка полей. Двусторонняя печать в 1С
При печати документа обратите внимание на настройку полей: с какой стороны делается отступ для подшивки, чтобы край документа не «съело».
Для этого выставьте нужный размер в настройке «Поля».
В примере с расчетной ведомостью это верхнее поле, хотя документ можно подшить и горизонтально, тогда отрегулируйте левое поле.
При двусторонней печати не забудьте про зеркальное отображение страниц – «Чередование страниц» и настройки двусторонней печати. Настройте параметры в разделе «Режимы печати».
Как распечатать два экземпляра документа в 1С на одном листе?
Рассмотрим еще один пример. Имеем документ «Расходная накладная». Документ небольшой и пользователь может распечатать на одном листе два экземпляра.
Для настройки перейдите по кнопке «Еще» - «Параметры страницы».
В настройке установите переключатель в положение – 2 экземпляра на странице. Нажмите «Ок» и распечатайте документ.
Иногда возникает необходимость быстро внести незначительные (или значительные) единичные изменения в печатную форму документа или справочника. Для этого редактируется табличный документ печатной формы, после чего форма распечатывается. Но если возникает необходимость заново распечатать форму, внесенные изменения исчезают (Вернее они исчезают в том момент, когда форма была закрыта). Можно сохранить изменения в файл, но как то надо сопоставлять файл с документом, и можно просто забыть, что и куда сохранялось.
Ниже представлен алгоритм доработки конфигурации который позволяет автоматически сохранять измененные печатные формы в конфигурации с привязкой к документу или справочнику. Для бухгалтерии 2.0
Работа алгоритма выглядит следующим образом. При внесении изменений в табличный документ и закрытии формы программа предложит сохранить внесенные изменения. При повторном формировании печатной формы, программа проверит, были ли сохранены изменения и предложит открыть сохраненный табличный документ или сформировать форму заново.
Алгоритм рассмотрим на примере документа "Счет на оплату покупателю".
Документу добавлены две печатные формы "Счет договор" и "Спецификация".
1. Добавим документу два реквизита типа "Хранилище значения" - ПечатнаяФормаСчета и ПечатнаяФормаСпецификации. В них будут храниться измененные табличные документы.
2. Создаем общий модуль или используем существующий. Добавим в него функцию:
Функция ОткрытьСохраненнуюПечатнуюФорму( п_РеквизитХранилище ) Экспорт
ТабДокумент = п_РеквизитХранилище . Получить ();
Если ТабДокумент <> Неопределено Тогда
Ответ = Вопрос ( "Печатная формы была изменена и сохранена. Открыть сохраненный вариант? Да - Открыть; Нет - Сформировать заново." , РежимДиалогаВопрос.ДаНетОтмена );
Если Ответ = КодВозвратаДиалога . Отмена Тогда
Возврат "Отмена" ;
ИначеЕсли Ответ = КодВозвратаДиалога . Нет Тогда
Возврат Неопределено;
КонецЕсли;
КонецЕсли;
Процедура проверяет наличие данных в хранилище, и если хранилище не пустое, предлагает открыть сохраненный табличный документ или сформировать его заново.
3. Вносим изменения в общую форму "ФормаПечати".
А. Изменям тип реквизита формы "Документ" на составной ДокументСсылка, СправочникСсылка (что бы можно было сохранять печатные формы справочников)
Б. Добавляем в модуль процедуру:
Процедура СохранитьПечатнуюФорму ( п_Реквизит )
Если Модифицированность Тогда
Ответ = Вопрос ( "Печатная форма была изменена. Сохранить изменения?" , РежимДиалогаВопрос.ДаНетОтмена );
Если Ответ = КодВозвратаДиалога . Отмена Тогда
Отказ = Истина;
Возврат;
КонецЕсли;
Если Ответ = КодВозвратаДиалога . Да Тогда
Объект = Документ . ПолучитьОбъект ();
ПечатныйДокумент . ВставитьОбласть ( ЭлементыФормы . ПолеДокумента . Область ());
ХЗ = Новый ХранилищеЗначения(ПечатныйДокумент , Новый СжатиеДанных ( 9 ));
Объект [ п_Реквизит ] = ХЗ ;
Объект.Записать ();
КонецЕсли;
КонецЕсли;
Процедура проверяет модифицированность формы печати и предлагает сохранить изменения.
В. и обработчик ПередЗакрытием:
Процедура ПередЗакрытием ( Отказ , СтандартнаяОбработка )
Если ТипЗнч ( Документ ) = Тип ( "СправочникСсылка.ДоговорыКонтрагентов" ) Тогда
СохранитьПечатнуюФорму ( "ПечатнаяФорма" );
ИначеЕсли ТипЗнч ( Документ ) = Тип ( "ДокументСсылка.СчетНаОплатуПокупателю" ) Тогда
Если ИмяМакета = "Спецификация" Тогда
СохранитьПечатнуюФорму ( "ПечатнаяФормаСпецификации" );
ИначеЕсли ИмяМакета = "СчетСпец" Тогда
СохранитьПечатнуюФорму ( "ПечатнаяФормаСчета" );
КонецЕсли;
КонецЕсли;
В этой процедуре по типу документа и имени макета определяется реквизит документа в которую сохраняется печатная форма.
Здесь помимо документа из примера есть проверка на справочник "Договоры контрагентов", которому была добавлена печатная форма.
4. Корректируем процедуру Печать модуля документа "Счет на оплату покупателю":
Процедура Печать ( ИмяМакета , КоличествоЭкземпляров = 1 , НаПринтер = Ложь , НепосредственнаяПечать = Ложь) Экспорт
// Получить экземпляр документа на печать
Если ИмяМакета = "Счет" Тогда
ТабДокумент = ПечатьСчетаЗаказа ( ИмяМакета );
//ИЗМЕНЕНИЯ
ИначеЕсли ИмяМакета = "СчетСпец" Тогда
ТабДокумент = СпецПечатныеФормы . ОткрытьСохраненнуюПечатнуюФорму ( ПечатнаяФормаСчета );
Если ТабДокумент = "Отмена" Тогда
Возврат;
ИначеЕсли ТабДокумент = Неопределено Тогда
ТабДокумент = ПечатьСчета ( ИмяМакета );
КонецЕсли;
ИначеЕсли ИмяМакета = "Спецификация" Тогда
ТабДокумент = СпецПечатныеФормы . ОткрытьСохраненнуюПечатнуюФорму ( ПечатнаяФормаСпецификации );
Если ТабДокумент = "Отмена" Тогда
Возврат;
ИначеЕсли ТабДокумент = Неопределено Тогда
ТабДокумент = ПечатьСпецификации ();
КонецЕсли;
//ИЗМЕНЕНИЯ
//ИЗМЕНЕНИЯ
//УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект, ""), НепосредственнаяПечать);
УниверсальныеМеханизмы . НапечататьДокумент(ТабДокумент , КоличествоЭкземпляров , НаПринтер , ОбщегоНазначения . СформироватьЗаголовокДокумента ( ЭтотОбъект , "" ), НепосредственнаяПечать , Ссылка , ИмяМакета );
//ИЗМЕНЕНИЯ
Здесь видно как используется процедура ОткрытьСохраненнуюПечатнуюФорму которая, в данном примере, описана в общем модуле СпецПечатныеФормы.
Обратите внимание, что в процедуру "НапечататьДокумент" так же передаются Ссылка и ИмяМакета.
Иногда бывают такие ситуации, когда необходимо разово менять печатную форму документа, и после закрытия этой формы внесенные изменения не сохраняются. Но что же делать, если требуется повторно распечатать измененный документ, когда он уже закрыт, а все изменения утеряны?
Ответ на этот вопрос вы получите в нашей новой публикации.
Иногда бывают такие ситуации, когда необходимо разово менять печатную форму документа, и после закрытия этой формы внесенные изменения не сохраняются. Но что же делать, если требуется повторно распечатать измененный документ, когда он уже закрыт, а все изменения утеряны?
Вот как сохранить измененную печатную форму
К примеру, необходимо внести изменения в печатную форму Акта об оказании услуг.
Продажи > Реализация (акты, накладные).
В открывшемся окне нужно проследить, чтобы была нажата решетка. Ее нажатие позволяет редактировать печатную форму документа.
А теперь представим ситуацию, что нужно отредактировать открывшуюся форму и дописать в поле «Основание» необходимые данные.
После того, как измененная форма документа будет закрыта, все внесенные исправления будут утеряны, и повторно напечатать измененный документ или продолжить его редактирование невозможно.
Но существует решение этой проблемы можно сохранить измененную печатную форму документа! Это не составляет большого труда: в открытой печатной форме требуется зайти во вкладку «Еще» и выбрать строку «Сохранить».
После нажатия на строку «Сохранить» в появившемся окне можно выбрать формат, в котором сохранится печатная форма.
Стоит обратить внимание на то, что сохранить печатную форму можно как в выбранную папку на компьютере, так и прикрепить к документу.
Рекомендуется сохранять путем присоединения к документу, ведь на компьютере файл может затеряться, а в программе он будет храниться в определенном месте, к которому у пользователя всегда есть доступ. Просмотреть сохраненный файл в программе можно путем нажатия на скрепку (см. изображение ниже):
В открывшемся окне можно посмотреть все файлы, которые прикреплены к данному документу.
Таким же образом к документам можно прикреплять любые другие файлы, такие как:
- сканированные копии первичных документов, договоров
- спецификации, дополнительные соглашения
- образцы рекламной продукции (для подтверждения по налогу на прибыль).
От простой для отдельных компаний до комплексной автоматизации крупных холдингов.
Сдача регламентированной отчетности в соответствии с законодательством РФ.
Печать документов в программах «1С:Предприятие» осуществляется аналогично другим программам, но у пользователей могут возникать вопросы, связанные со спецификой настроек, например, печатной формы или параметров страницы, а также о выводе на печать необходимых реквизитов и т.п. Рассмотрим настройку и печать документов на примере программы «1С:Бухгалтерия предприятия 3.0».
Настройка печатного документа
Собравшись распечатать документы, первое, что необходимо сделать – сформировать печатную форму со всеми заполненными реквизитами. Большинство документов имеют обязательные реквизиты, например, подписи ответственных лиц. Для того чтобы они проставлялись в печатной форме по умолчанию, их необходимо заполнить в сведениях об организации через «Главное» - «Реквизиты организации».
Рис.1 Настройка печатного документа
Открыв раздел «Подписи», необходимо указать данные руководителя, главного бухгалтера и кассира. Если ответственные лица меняются, историю их изменения можно посмотреть, нажав гиперссылку «История». Это актуально, если нужно распечатать документы до определенного числа за подписью одного ответственного лица, а после определенной даты должна проставляться подпись другого ответственного лица.
Рис.2 Открыв раздел «Подписи», необходимо указать данные руководителя, главного бухгалтера и кассира
Также необходимо заполнить данные ответственных лиц за подготовку отчетов через гиперссылку «Ответственные лица за подготовку отчетов». Эти данные будут автоматически попадать в сформированную печатную форму отчета.
Рис.3 «Ответственные лица за подготовку отчетов»
Например, в печатной форме документа «Расходный кассовый ордер» отразились заполненные ранее данные ответственных лиц.
Рис.4 Расходный кассовый ордер
При заполнении документов важно обратить внимание на то, что для формирования печатной формы могут быть предусмотрены отдельные закладки, где вносят дополнительные данные. Например, в инвентаризационной описи или в актах на списание членов комиссии необходимо указать на отдельной закладке.
Рис.5 Отдельные закладки, где вносят дополнительные данные
Если данные не будут заполнены, поля в печатной форме останутся пустыми.
Печать табличного документа 1С. Параметры печати
Все печатные формы документов или отчетов в 1С представлены в виде таблиц, и зачастую пользователь сталкивается с тем, что документ не помещается на лист, выходит за границы печати, разделяет отчет на два листа. В таких случаях перед печатью рекомендуется воспользоваться кнопкой «Предварительный просмотр документа». Она есть в любой печатной форме документа или отчета. Нажав ее, можно увидеть, как документ будет располагаться на листе бумаги и, допустим, сменить ориентацию документа.
Рис.6 Печать табличного документа
Рис.7 Печать табличного документа
В нижней части листа при этом можно увидеть, на скольких страницах помещается отчет или документ. Бывает, что за пределы листа выходит одна колонка, и пользователю было бы удобнее, если бы документ влезал полностью на один лист. Для настройки параметров в любой печатной форме имеется кнопка «Параметры страницы». Нажав ее, мы сможем настроить параметры для вывода на печать формы документа или отчета.
Рис.8 Параметры печати
- Масштаб. Первая настройка, на которую следует обратить внимание. Автоматически программа устанавливает масштаб 100%, но при необходимости мы можем установить переключатель в положение «По ширине листа». В этом случае наша печатная форма автоматически разместится по ширине листа.
- Ориентация. При необходимости пользователь может задать ориентацию «Портрет» – вертикальное размещение, или «Альбомная» – горизонтальное размещение, для оптимального размещения документа на печатном листе.
- Поля. Бывает, что документ выходит за пределы полей немного, и чтобы не изменять масштаб документа, можно попробовать уменьшить отступы полей или увеличить отступ поля слева. Это поле необходимо для подшивки документов. Если оно будет сильно уменьшено, часть документа в подшивке окажется нечитаемой. Рекомендуется левое поле устанавливать примерно 3 сантиметра (поля в настройке указаны в миллиметрах).
- Экземпляров на странице. В этой настройке можно задать, сколько экземпляров разместить на одной странице. Установка переключателя в положение «Авто» приведет к автоматическому подбору, иначе – на лист будет выводиться по одному экземпляру. Этой настройкой удобно пользоваться при выводе на печать небольших документов, например расчетные листки сотрудников.
- Колонтитулы. Определяют размер печатной области листа. При необходимости мы можем уменьшить их размер.
- Чередование страниц и двусторонняя печать. Данные параметры позволяют распечатать документы с двух сторон листа. Актуально при больших объемах информации.
Рис.9 Параметры печати
«Предварительный просмотр. » и «Параметры страницы. » доступны в главном меню программы в пункте «Файл». Для доступа к ним надо находиться в печатной форме документа. Но способ открыть их непосредственно из формы более простой.
Рис.10 «Предварительный просмотр. » и «Параметры страницы. »
Настроив параметры страницы и нажав «Печать», мы выбираем принтер, задаем количество экземпляров и, если надо, диапазон печати.
Рис.12 Как распечатать только одну страницу документа или несколько листов из него
В данном примере на печать выводятся страницы с 3 по 5 и 10 страница.
Ошибки печати
Бывает, пользователь отправляет на печать документ, а программа или выдает ошибку, или вообще ничего не происходит. Причиной этому может быть то, что у пользователя изменился принтер, например, его переустановили. Программа по умолчанию обращается к тому принтеру, на который ранее отправляли печатать документы. Изменение принтера в параметрах печати может не дать результата и выдавать ошибку печати. В этом случае необходимо сбросить настройки печати. Для этого зайдем в пункт меню «Администрирование» - «Настройки пользователей и прав».
Рис.13 Настройки пользователей и прав
Переходим по гиперссылке «Настройки пользователей».
Рис.14 Гиперссылка «Настройки пользователей»
На закладке «Прочие настройки» для выбранного пользователя выделить строку «Настройки печати табличных документов» и нажать кнопку «Очистить».
Рис.15 Прочие настройки
После сброса настроек следует еще раз изменить принтер в меню «Параметры страницы».
При работе с программой 1С через браузер может возникнуть ситуация, когда вместо печати документ сохраняется в формат PDF. В некоторых браузерах такое бывает, когда принтер не подключен. В этом случае необходимо проверить установлен ли принтер. При нажатии на «Печать» или «Предварительный просмотр» появится окно печати документа, где, нажав кнопку «Изменить», указываем нужный принтер. Окно выглядит иначе, чем в программе 1С, так как браузер имеет свои настройки печати.
Рис.16 Прочие настройки
Зачастую ошибки, возникающие при печати документов из 1С, непосредственно с работой программы не связаны. Их самой частой причиной становятся сбои в работе сети, неверные настройки принтера или сетевого доступа к принтерам. Реже проблемы печати возникают из-за ошибок в коде программы, но разработчики сразу их ликвидируют.
В случае, если необходимо добавить какую-либо печатную форму в систему, то отличным вариантом это сделать является создание дополнительной печатной формы. При использовании дополнительной печатной формы нет никакой необходимости вносить изменения в конфигурацию.
Часто пользователям необходимо внести небольшие изменения в печатную форму, уже существующую. В этом случае также лучше использовать дополнительную форму, а не вносить поправки в стандартную, т.к. при последующих обновлениях системы могут возникнуть серьёзные проблемы.
Для примера возьмём печатную форму «Унифицированная форма №Т-61» или по-другому «Записка-расчет при прекращении (расторжении) трудового договора с работником (увольнении)». Будем использовать конфигурацию 1С Управление производственным предприятием.
Пользователи попросили добавить в документ «Увольнение из организаций» данную печатную форму. Рассмотрим процесс создания печатной формы, заполнение её макета и подключения печатной формы.
Создание и настройка печатной формы в 1С
Для создания новой обработки в 1С необходимо запустить 1С в режиме «Конфигуратор».
В Конфигураторе в меню «Файл» необходимо выбрать пункт «Новый», так же можно воспользоваться комбинацией клавиш Ctrl+N или кнопкой на панели быстрого доступа.
По сути внешняя печатная форма – это внешняя обработка, предназначенная для формирования печатной формы, поэтому в появившемся окне выбираем вариант «Внешняя обработка» и нажимаем «ОК».
В открывшемся окне новой обработки необходимо задать ей имя. Назовём нашу обработку «УвольнениеТ61», автоматически формируется синоним, который будет виден пользователям.
Добавим реквизит «СсылкаНаОбъект» и укажем тип «ДокументСсылка.УвольнениеИзОрганизаций» т.к. мы собираемся подключать обработку именно к данному документу.
Теперь необходимо создать форму для нашей обработки. Выбираем в списке «Формы» и нажимаем «Добавить».
В появившемся окне формы выбираем параметры для формы нашей обработки. Тип формы установим «Форма обработки», проконтролируем флаг «Назначить форму основной». Можно задать форме имя, но мы оставим стандартное. В данном примере оно не играет никакой роли. Нажимаем «Далее».
На данной вкладке установим флаг у реквизита «СсылкаНаОбъект» для того, чтобы он появился на форме, затем нажимаем «Готово».
Нажимаем правой кнопкой мыши на кнопку «Выполнить» и выбираем пункт «КнопкаВыполнитьНажатие».
В процедуру выполнить нажатие добавим следующий код:
Так же нам понадобятся две переменные «ВалютаРегламентированногоУчета» и «ВалютаУправленческогоУчёта».
В модуле формы больше никакого кода писать не нужно. Следующим шагом создадим макет печатной формы. Выберем «Макет» и нажмём кнопку «Добавить»
В появившемся окне необходимо установить имя макета. Назовём макет «Т_61» и установим тип макета «Табличный документ».
Перед нами откроется окно пустого табличного документа, которое необходимо заполнить в соответствии с внешним видом «Унифицированной формы №Т-61». Опустим шаги по заполнению макета, покажем только конечный результат.
Заполнение макета печатной формы
Код для заполнения макета необходимо расположить в «Модуле объекта». Для этого нажмём на кнопку «Действия» нашей обработки и выберем пункт «Открыть модуль объекта».
Процесс написания кода аналогичен процессу заполнения обычного табличного документа, поэтому приведём готовый листинг кода, разобраться в котором начинающим программистам не составит никакого труда.
Запрос = Новый Запрос;
// Установим параметры запроса
Если Режим = «ПоРеквизитамДокумента» Тогда
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
| УвольнениеИзОрганизаций.Номер КАК НомерДок,
| УвольнениеИзОрганизаций.Дата КАК ДатаДок,
| УвольнениеИзОрганизаций.Организация.НаименованиеПолное КАК НазваниеОрганизации,
| УвольнениеИзОрганизаций.Организация.КодПоОКПО КАК КодПоОКПО,
| ОтветственныеЛицаОрганизаций.Должность КАК ДолжностьРуководителя,
| ОтветственныеЛицаОрганизаций.НаименованиеОтветственногоЛица КАК ФИОРуководителя,
| Документ.УвольнениеИзОрганизаций КАК УвольнениеИзОрганизаций
| ЛЕВОЕ СОЕДИНЕНИЕ ВТДанныеОбОтветственномЛице КАК ОтветственныеЛицаОрганизаций
| ПО УвольнениеИзОрганизаций.Организация = ОтветственныеЛицаОрганизаций.СтруктурнаяЕдиница
ИначеЕсли Режим = «ПоТабличнойЧастиДокумента» Тогда
| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + «» «» + ФИОФизЛицСрезПоследних.Имя + «» «» + ФИОФизЛицСрезПоследних.Отчество, УвольнениеИзОрганизацииРаботники.Сотрудник.Наименование) КАК Работник,
| УвольнениеИзОрганизацииРаботники.Сотрудник.ДатаДоговора КАК ТрудовойДоговорДата,
| УвольнениеИзОрганизацииРаботники.Сотрудник.НомерДоговора КАК ТрудовойДоговорНомер,
| УвольнениеИзОрганизацииРаботники.НомерСтроки КАК НомерСтроки,
| УвольнениеИзОрганизацииРаботники.СтатьяТКРФ.Наименование КАК СтатьяТКРФ,
| УвольнениеИзОрганизацииРаботники.ОснованиеУвольнения КАК ОснованиеУвольнения,
| И Работники.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| КОНЕЦ КАК Подразделение,
| И Работники.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| КОНЕЦ КАК ОЦРВ_Подразделение,
| И Работники.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| КОНЕЦ КАК Должность,
| УвольнениеИзОрганизацииРаботники.Сотрудник.Код КАК ТабельныйНомер,
| УвольнениеИзОрганизацииРаботники.ДнейЧасовКомпенсацииУдержанияОтпуска КАК Компенс,
| Документ.УвольнениеИзОрганизаций.РаботникиОрганизации КАК УвольнениеИзОрганизацииРаботники
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| СписокДат.Сотрудник КАК Сотрудник,
| РаботникиОрганизации.ПодразделениеОрганизации.Наименование КАК ПодразделениеОрганизации,
| РаботникиОрганизации.Должность.Наименование КАК Должность,
| РаботникиОрганизации.ПодразделениеОрганизацииЗавершения.Наименование КАК ПодразделениеОрганизацииЗавершения,
| РаботникиОрганизации.ОЦРВ_ПодразделениеОрганизации.Наименование КАК ОЦРВ_ПодразделениеОрганизации,
| РаботникиОрганизации.ОЦРВ_ПодразделениеОрганизацииЗавершения.Наименование КАК ОЦРВ_ПодразделениеОрганизацииЗавершения,
| РаботникиОрганизации.ДолжностьЗавершения.Наименование КАК ДолжностьЗавершения,
| РаботникиОрганизации.ПериодЗавершения КАК ПериодЗавершения
| РаботникиВнутри.Сотрудник КАК Сотрудник,
| МАКСИМУМ(РаботникиВнутри.Период) КАК ДатаПоследнегоИзменения
| РегистрСведений.РаботникиОрганизаций КАК РаботникиВнутри
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.УвольнениеИзОрганизаций.РаботникиОрганизации КАК Док
| И РаботникиВнутри.Сотрудник = Док.Сотрудник
| РаботникиВнутри.Сотрудник) КАК СписокДат
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизации
| ПО СписокДат.ДатаПоследнегоИзменения = РаботникиОрганизации.Период
| И СписокДат.Сотрудник = РаботникиОрганизации.Сотрудник) КАК Работники
| ПО УвольнениеИзОрганизацииРаботники.Сотрудник = Работники.Сотрудник
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(
| Документ.УвольнениеИзОрганизаций.РаботникиОрганизации КАК УвольнениеИзОрганизацииРаботники
| УвольнениеИзОрганизацииРаботники.Ссылка = &ДокументСсылка)) КАК ФИОФизЛицСрезПоследних
| ПО УвольнениеИзОрганизацииРаботники.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо
| И НЕ УвольнениеИзОрганизацииРаботники.Сторно
Функция ПечатьТ61() Экспорт
ТабДокумент = Новый ТабличныйДокумент;
// получаем данные для печати
// Начинаем формировать выходной документ
Пока ВыборкаРаботники.Следующий() Цикл
//Получаем области макета
// выводим данные о руководителях организации
Если ВыборкаДляШапки.Следующий() Тогда
СекцияЛицеваяСторона.Параметры.Заполнить(ВыборкаДляШапки); // Шапка документа.
СекцияПодвал.Параметры.Заполнить(ВыборкаДляШапки); // Для подвала.
ВыводитьДатуОзнакомленияСПриказом = ПроцедурыУправленияПерсоналом.ЗначениеУчетнойПолитикиПоПерсоналуОрганизации(глЗначениеПеременной(«глУчетнаяПолитикаПоПерсоналуОрганизации»), СсылкаНаОбъект.Организация, «ПроставлятьАвтоматическиДатуОзнакомленияВКадровыхПриказах»);
// Каждый приказ на отдельной странице.
Если ТабДокумент.ВысотаТаблицы > 0 Тогда
ПредставлениеДатыДоговора = Формат(ВыборкаРаботники.ТрудовойДоговорДата, «ДЛФ=DD»);
ПредставлениеДатыУвольнения = Формат(ВыборкаРаботники.ДатаУвольнения, «ДЛФ=DD»);
СекцияЛицеваяСторона.Параметры.ДатаУвольнения = ?(ЗначениеЗаполнено(ВыборкаРаботники.ДатаУвольнения), ПредставлениеДатыУвольнения, » «);
СекцияЛицеваяСторона.Параметры.ОснованиеУвольнения = ?(ВыборкаРаботники.СтатьяТКРФ = NULL, «», ВыборкаРаботники.СтатьяТКРФ) + «. » + ВыборкаРаботники.СтатьяТКРФТекстОснования;
Читайте также: