При переходе с устаревшей версии «1С:Зарплата и управление персоналом» редакции 2.5 на современную редакцию 3.1 многие пользователи и кадровики сталкиваются с неожиданной проблемой. В печатных формах (например, в трудовых договорах, справках с места работы или произвольных справках о доходах) присутствуют поля для вывода банковских реквизитов компании, однако на печать они выводятся пустыми или в виде прочерков. При попытке найти, где заполнить расчетный счет в карточке организации, выясняется, что этого поля там просто нет. Для подготовки к такой миграции можно изучить раздел с решениями для перехода на новые редакции ЗУП.
Давайте подробно разберем, почему так происходит, проанализируем архитектурные изменения программы и рассмотрим несколько практических способов решения этой задачи в зависимости от особенностей вашей базы данных.
Разработчики фирмы «1С» при проектировании редакции 3.1 приняли принципиальное решение позиционировать программу исключительно как кадровую и расчетную систему. В отличие от версии 2.5, из структуры метаданных новой конфигурации был полностью удален справочник банковских счетов для собственных организаций. Считается, что полноценный регламентированный учет с платежными поручениями и банковскими выписками должен вестись в «1С:Бухгалтерии», а в кадровой программе эти данные не требуются.
Тем не менее, параметры расчетного счета остались заложены в стандартных макетах печатных форм. Так как хранить эти данные в карточке организации Справочник.Организации физически негде, программа оставляет соответствующие поля пустыми. Даже при настроенной синхронизации с «1С:Бухгалтерией» банковские счета не переносятся в ЗУП.
Ниже мы разберем несколько эффективных методов вывода банковских реквизитов в печатные формы, начиная от простых пользовательских настроек и заканчивая программными доработками.
Если в вашей информационной базе ведется учет только по одной организации, то проще и быстрее всего отредактировать шаблон печатной формы напрямую. Это можно сделать прямо в пользовательском режиме без привлечения программистов.
Рассмотрим этот процесс по шагам:
Справка с места работы или Справка о доходах (произвольная форма)).[НомерСчета].Важное ограничение: этот способ категорически не подходит, если в одной базе ведется многофирменный учет. Измененный макет применяется ко всей базе, и при печати документов от имени второй организации в форму все равно будут подставляться реквизиты первой.
Если у вас несколько организаций и вы хотите решить проблему стандартными средствами без изменения конфигурации и снятия ее с поддержки, идеальным решением станет использование механизма дополнительных реквизитов.
Давайте проанализируем, как это настроить:
Номер расчетного счетаНаименование банкаБИК банкаКорреспондентский счетОрганизации. На вкладке Дополнительные реквизиты заполним созданные поля актуальными банковскими данными.После этого созданные реквизиты можно связать с печатными формами. В версиях ЗУП КОРП это делается в пользовательском режиме через механизм «Настраиваемые печатные формы». В базовой версии или версии ПРОФ для автоматического вывода созданных полей на печать потребуется создать простую внешнюю печатную форму, которая будет обращаться к табличной части дополнительных реквизитов объекта. При необходимости можно использовать универсальный конструктор печатных форм для разработки шаблонов без программирования.
В ЗУП 3.1 банковские реквизиты легально хранятся в справочнике Зарплатные проекты. Если ваша организация выплачивает зарплату на карты сотрудников через определенный банк, эти данные уже занесены в систему.
Вы можете использовать расчетный счет зарплатного проекта в качестве основного счета организации для печатных форм. Это решение имеет право на жизнь, однако оно не всегда универсально. Например, если у вашей организации открыто несколько зарплатных проектов в разных банках (для удобства сотрудников), программе будет сложно «понять», какой именно счет нужно вывести в справке. Тем не менее, для простых конфигураций с одним банком этот метод существенно экономит время.
Для программистов 1С существует красивое и технологичное решение, которое позволяет автоматизировать заполнение реквизитов и не требует изменения типового кода. В ЗУП 3.1 присутствует справочник Контрагенты, у которого сохранен подчиненный справочник Банковские счета контрагентов.
Разберем логику реализации этого метода по шагам:
В модуле расширения мы можем написать несложный запрос, который при выводе печатной формы будет определять ИНН текущей организации, находить контрагента с аналогичным ИНН и подставлять его расчетный счет в макет. Пример кода для интеграции в расширение:
Функция ПолучитьРеквизитыБанкаОрганизации(ИННОрганизации) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| БанковскиеСчета.НомерСчета КАК НомерСчета,
| БанковскиеСчета.Банк.Наименование КАК НаименованиеБанка,
| БанковскиеСчета.Банк.Код КАК БИК,
| БанковскиеСчета.Банк.КоррСчет КАК КоррСчет
|ИЗ
| Справочник.БанковскиеСчетаКонтрагентов КАК БанковскиеСчета
|ГДЕ
| БанковскиеСчета.Владелец.ИНН = &ИНН";
Запрос.УстановитьПараметр("ИНН", ИННОрганизации);
Выборка = Запрос.Выполнить().Выбрать();
СтруктураРеквизитов = Новый Структура("НомерСчета, Банк, БИК, КоррСчет", "", "", "", "");
Если Выборка.Следующий() Тогда
ЗаполнитьЗначенияСвойств(СтруктураРеквизитов, Выборка);
СтруктураРеквизитов.Банк = Выборка.НаименованиеБанка;
КонецЕсли;
Возврат СтруктураРеквизитов;
КонецФункции
Этот способ позволяет гибко управлять реквизитами для любого количества организаций в базе данных и гарантирует автоматическое заполнение форм без ручного вмешательства пользователей.
Самым безопасным методом доработки, исключающим любые проблемы при последующих обновлениях программы, является регистрация внешней печатной формы. Вы можете выгрузить типовой макет нужной справки или договора в качестве внешней обработки, прописать логику заполнения банковских полей (например, жестко связав ИНН конкретной организации со строкой реквизитов прямо в коде или обращаясь к основному зарплатному проекту) и подключить ее через механизм дополнительных отчетов и обработок. Для этой задачи можно использовать инструмент постобработки печатных форм на БСП с помощью расширения и внешней обработки.
Выбор оптимального пути зависит от масштаба вашей компании: