Почему в 1С:УТ 11.4 в счете на оплату не печатается банковский счет и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

При работе в программе 1С:Управление торговлей редакции 11.4 пользователи часто сталкиваются с неприятной проблемой: при печати документа «Счет на оплату» (из документа Заказ клиента) табличная часть «Образец заполнения платежного поручения» выводится пустой. Поля с БИК, корреспондентским счетом, банком и номером расчетного счета организации просто отсутствуют на бланке. При этом в базе заведена всего одна организация и у нее точно создан один действующий банковский счет.

В этой статье мы подробно разберем, почему возникает эта техническая коллизия, проанализируем внутреннее устройство справочников конфигурации и предоставим пошаговое руководство, как исправить эту ошибку без программирования и изменения конфигурации.

Выясняем причину: как устроен механизм подбора счета

Для начала проанализируем, как система 1С:УТ 11 определяет, какие именно банковские реквизиты выводить на печать в счете на оплату. Реквизиты берутся не напрямую из карточки организации, а из самого документа-основания Заказ клиента.

В документе Заказ клиента на вкладке Основное присутствует гиперссылка К оплате (или «Правила оплаты»). При нажатии на нее открывается диалоговое окно настройки этапов оплаты. Именно там находится реквизит Банковский счет:

  1. Если это поле пустое, программа считает, что способ оплаты еще не согласован или будет наличным, поэтому печатная форма счета не заполняет банковские реквизиты.
  2. Чтобы реквизиты появились в печатной форме, банковский счет должен быть явно выбран в правилах оплаты, а сам документ после этого обязательно перепроведен.

Проблема заключается в том, что в некоторых базах при попытке выбрать расчетный счет в правилах оплаты список выбора оказывается абсолютно пустым, несмотря на то, что в справочнике БанковскиеСчетаОрганизаций расчетный счет заведен и активен.

Технический разбор бага с скрытой Управленческой организацией

В конфигурациях на платформе 1С:ERP (включая «Управление торговлей» и «Комплексную автоматизацию») в справочнике Организации существует предопределенный элемент — Управленческая организация. Она необходима для ведения обособленного управленческого учета, разделения контуров и оформления внутренних операций, которые не должны отражаться в регламентированной (бухгалтерской) отчетности.

Если в настройках программы отключена функциональная опция ИспользоватьНесколькоОрганизаций (то есть учет ведется по одной организации), система автоматически скрывает «Управленческую организацию» из видимости пользователя с помощью интерфейсных фильтров. Посмотрим на фрагмент программного кода, который за это отвечает при создании формы:


Если Не ПолучитьФункциональнуюОпцию("ИспользоватьУправленческуюОрганизацию") Тогда
    Параметры.Отбор.Вставить("Предопределенный", Ложь);
КонецЕсли;

В релизах линейки 11.4.11 (в частности, в релизе 11.4.11.106) разработчиками была допущена программная ошибка в процедурах автоматического заполнения реквизитов при создании новых объектов:

  1. Когда пользователь заводит в базе первый и единственный банковский счет для своей реальной организации, система пытается автоматически определить владельца счета.
  2. Из-за некорректного запроса к базе данных (который берет первый элемент справочника без учета его доступности и предопределенности) программа в качестве владельца подставляет скрытую Управленческую организацию вместо реально созданной рабочей фирмы.
  3. В результате банковский счет записывается в базу данных с привязкой к невидимой организации.
  4. При заполнении документа Заказ клиента от лица вашей основной рабочей организации система пытается отфильтровать доступные банковские счета по владельцу. Поскольку ваш расчетный счет числится за скрытой «Управленческой организацией», список доступных счетов для рабочей организации оказывается пустым. Выбрать его в правилах оплаты становится невозможно, и на печать он не выводится.

Пошаговое решение проблемы через интерфейс программы

Для исправления этой коллизии нам не потребуется открывать конфигуратор или писать обработку. Достаточно выполнить последовательность действий под правами Администратора системы. Для планового технического сопровождения и обслуживания баз можно использовать программу для автоматического архивирования и обновления 1С.

Рассмотрим по шагам процесс восстановления правильной привязки банковского счета:

  1. Перейдем в раздел НСИ и администрирование, далее выберем пункт Настройка НСИ и разделов и откроем подраздел Предприятие.
  2. В открывшемся окне временно установим флажок напротив опции Несколько организаций. Это действие позволит нам увидеть скрытые системные элементы справочника.
  3. Теперь перейдем в раздел НСИ и администрирование -> группа НСИ -> справочник Организации.
  4. В списке организаций мы увидим как нашу основную рабочую организацию, так и ранее скрытую Управленческую организацию. Для очистки базы от ошибочно созданных фирм применяется обработка для выборочного удаления организаций в 1С.
  5. Перейдем в список банковских счетов. Для этого можно открыть карточку «Управленческой организации» и перейти по гиперссылке Банковские счета на панели навигации (или открыть общий список через «Банковские счета организаций»).
  6. Мы увидим наш реальный расчетный счет, ошибочно привязанный к «Управленческой организации». Откроем его карточку двойным щелчком мыши.
  7. В поле Организация заменим владельца: выберем нашу реальную рабочую организацию вместо управленческой. Нажмем кнопку Записать и закрыть.
  8. Вернемся в настройки предприятия (НСИ и администрирование -> Предприятие) и снимем флажок Несколько организаций, чтобы вернуть интерфейс в исходное состояние (если ведение учета по нескольким фирмам действительно не требуется).
  9. Откроем наш проблемный документ Заказ клиента, перейдем по ссылке К оплате. Теперь в поле выбора банковского счета будет доступен наш расчетный счет. Выберем его, сохраним изменения в правилах оплаты и проведем документ.

После выполнения этих действий при выводе на печать формы «Счет на оплату» все реквизиты банка, БИК и расчетный счет будут отображаться корректно и в полном объеме. При необходимости расширить стандартные возможности оформления бланка можно использовать внешнюю печатную форму счета на оплату с гибкими настройками отображения реквизитов.

Особенности заполнения реквизитов по статистике

Важно также упомянуть еще один механизм, который присутствует в линейке 1С:УТ 11.4 — это заполнение реквизитов «по статистике». Программа анализирует последние 5 документов, созданных текущим пользователем, и автоматически подставляет тот банковский счет, который использовался чаще всего.

Если в базе долгое время существовала ошибка привязки счета или вы пользовались временными обходными путями, этот алгоритм может продолжать подставлять неверные данные при создании новых заказов. Чтобы «переучить» программу, достаточно вручную заполнить правильный банковский счет в пяти последовательно созданных документах Заказ клиента. После этого система запомнит ваш выбор и начнет подставлять нужный счет по умолчанию автоматически. Для более новых версий конфигурации при необходимости можно использовать расширение для автоматического заполнения основного банковского счета в Заказе клиента.

Как этот механизм доработан в новых версиях (УТ 11.5 и выше)

Разработчики фирмы «1С» учли многочисленные обращения партнеров и пользователей по поводу этой проблемы. В последующих редакциях (включая 1С:УТ 11.5 и 1С:КА 2.5) логика работы с банковскими счетами была существенно модернизирована:

← На главную