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