При работе в 1С:Бухгалтерия 3.0 (БП 3.0) пользователи и технические специалисты часто сталкиваются с вопросом: почему регламентных заданий по банкам несколько, и какое из них отвечает за актуальность БИК и корреспондентских счетов? В современных редакциях конфигураций на базе Библиотеки стандартных подсистем (БСП) механизм работы с банками претерпел значительные изменения по сравнению со старыми версиями. Проанализируем ситуацию и разберем по шагам, как устроена эта система.
Первое, что нам необходимо понять — это архитектурное разделение данных. В программе существуют два разных справочника, которые тесно связаны между собой:
Справочник.КлассификаторБанков). Это своего рода «телефонная книга» всех банков России. В нем содержатся официальные данные от ЦБ РФ: БИК, название, город, корр. счет. Мы не используем элементы этого справочника напрямую в платежных поручениях.Справочник.Банки). Здесь находятся только те банки, которые вы реально используете в своей работе — например, те, в которых открыты счета у вашей организации или у ваших контрагентов. Каждая запись здесь «привязана» к записи в классификаторе.Рассмотрим ситуацию, когда банк меняет название. Сначала обновляется Классификатор, а затем эти изменения должны «перетечь» в справочник Банки. Рассмотрим, как это происходит в автоматическом режиме.
Часто возникает путаница с заданием, которое называется «Обновление списка банков, поддерживающих обмен с сервисом 1С:DirectBank» (в конфигураторе ЗагрузкаСпискаБанковОбменСБанками). Выясним причину этого заблуждения.
Многие ошибочно полагают, что это и есть основное задание для обновления всех банков. На самом деле это не так. Данное задание:
bankslist.mxl на серверах DirectBank).Основное регламентное задание, которое нас интересует, называется «Обновление классификаторов». Проанализируем его работу подробнее.
Это задание является универсальным «комбайном». Оно последовательно проверяет обновления для множества справочников:
Важный нюанс: для успешной работы этого задания должна быть подключена Интернет-поддержка пользователей (логин и пароль от Портала 1С:ИТС). Без этого программа не сможет авторизоваться на серверах 1С и скачать свежий файл bnk.zip или его аналоги в формате XML.
Допустим, регламентное задание обновило «Классификатор банков РФ». Почему же в справочнике «Банки» данные остались старыми? Это сделано намеренно, чтобы не изменять реквизиты в документах «задним числом» без контроля пользователя. Рассмотрим, как принудительно синхронизировать эти данные.
В форме списка справочника Банки предусмотрена команда «Синхронизировать» (или аналогичная кнопка обновления из классификатора). При её нажатии происходит следующее:
Если мы заглянем «под капот» конфигурации, мы увидим, что ссылки на источники данных жестко прописаны в коде или берутся из настроек интернет-поддержки. Ранее основным источником был bankregister.1c.ru/bankregister/v1/bnk.zip. Сейчас механизмы БСП чаще используют программный интерфейс (API) портала 1С:ИТС.
Разберем пример логики сопоставления, которую использует система при обновлении данных (упрощенно):
// Пример логики поиска обновлений в классификаторе
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Банки.Ссылка КАК СсылкаНаБанк,
| Классификатор.Наименование КАК НовоеНаименование,
| Классификатор.КоррСчет КАК НовыйКоррСчет
|ИЗ
| Справочник.Банки КАК Банки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КлассификаторБанков КАК Классификатор
| ПО Банки.БИК = Классификатор.БИК
|ГДЕ
| (Банки.Наименование <> Классификатор.Наименование
| ИЛИ Банки.КоррСчет <> Классификатор.КоррСчет)";
РезультатЗапроса = Запрос.Выполнить();
// Далее следует цикл обновления найденных ссылок
Важно помнить, что КлассификаторБанков также содержит информацию об отзыве лицензий. Если банк прекратил деятельность, в классификаторе ставится соответствующая отметка. При попытке создать платежное поручение на такой банк, 1С выдаст предупреждение, что банк является недействующим.
Подведем итог нашему анализу. Чтобы ваши банки всегда были актуальны, выполните следующие шаги:
Обновление классификаторов включено и выполняется успешно (без ошибок в колонке «Состояние»).Таким образом, современная 1С:Бухгалтерия берет на себя большую часть работы по отслеживанию изменений в банковской системе РФ, требуя от нас лишь контроля за состоянием интернет-поддержки и регламентных операций.