Почему в 1С:ERP не загружаются исходящие платежи из клиент-банка и как это исправить

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

Проблема с загрузкой банковской выписки — одна из самых критичных для оперативного учета. Ситуация, когда входящие платежи загружаются без проблем, а исходящие игнорируются системой без вывода явных ошибок, часто ставит в тупик даже опытных специалистов. Рассмотрим подробно, почему это происходит и как мы можем диагностировать и решить данную проблему.

Первоочередная проверка: влияние расширений и доработок

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

Если в вашей базе установлены расширения, затрагивающие форму СписаниеБезналичныхДенежныхСредств или саму обработку ОбменСБанками, это первый кандидат на проверку. Часто разработчики вносят изменения в логику формы, которые при программном создании документа вызывают исключение, перехватываемое типовым механизмом без вывода сообщения пользователю. Выясним причину, временно отключив расширения и повторив попытку загрузки.

Использование отладчика и системные флаги

Если отключение расширений не помогло, перейдем к отладке кода. Разберем ситуацию, когда при загрузке данных может быть принудительно установлен режим, блокирующий запись. В коде типовых решений часто встречается проверка флага ОбменДанными.Загрузка. Проанализируем, не установлена ли где-то в подписках на события или в расширениях логика, которая при ОбменДанными.Загрузка = Ложь прерывает запись объекта.

Также стоит обратить внимание на проверку проведения документа. Рассмотрим фрагмент кода, который часто встречается в логике загрузки и может влиять на результат:


Если Не ПодтвержденоВыпискойБанка И РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда 
    РежимЗаписи = ?(Проведен, РежимЗаписиДокумента.ОтменаПроведения, РежимЗаписиДокумента.Запись); 
    ТекстСообщения = НСтр("ru = 'Проведение документа возможно только после установки флага ""Подтверждено выпиской банка"". Документ записан без движений'"); 
    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, ЭтотОбъект, "НеПодтвержденоВыпискойБанка", "Объект", Ложь); 
КонецЕсли;

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

Настройка контроля заявок на расходование денежных средств

Одной из наиболее частых функциональных причин отсутствия исходящих платежей в 1С является включенный контроль заявок. В 1С:ERP исходящий платеж жестко привязан к операционному планированию. Разберем шаги проверки:

  1. Проверим функциональную опцию Заявки на расходование денежных средств в настройках казначейства.
  2. Если опция включена, посмотрим в настройки обмена с банком: не стоит ли там флаг Загружать только при наличии заявок? Если этот флаг активен, а в системе нет утвержденной заявки с тем же контрагентом и суммой, документ Списание безналичных денежных средств создан не будет.
  3. Проанализируем соответствие валюты и суммы. Система может не найти подходящую заявку, если в файле банка сумма отличается даже на копейку из-за банковской комиссии, которая в 1С должна отражаться отдельной строкой или через специальную настройку.

Технический анализ файла выписки (kl_to_1c.txt)

Иногда корень проблемы лежит в самом файле, который предоставляет банк. Проанализируем структуру текстового файла выписки. Каждая операция должна находиться в своей секции. Для исходящих платежей это обычно СекцияДокумент=Платежное поручение.

Рассмотрим возможные проблемы:

Сопоставление реквизитов организации и контрагентов

Выясним, как система идентифицирует организацию. Для успешной загрузки исходящего платежа необходимо 100% совпадение ИНН, КПП и номера расчетного счета. Если в карточке банковского счета в 1С затесался лишний пробел или в ИНН пропущена цифра, алгоритм загрузки не сможет определить принадлежность платежа к конкретной организации. При этом входящие платежи могут загружаться «мягче», так как для них поиск контрагента может идти по наименованию, в то время как для своих счетов проверка всегда строгая.

Контроль дублей по номеру документа банка

Система 1С:ERP обладает встроенным механизмом защиты от повторной загрузки документов. Важно понимать, что поиск дублей идет не только по внутреннему номеру 1С, но и по реквизиту Номер документа банка. Если вы ранее уже пытались загрузить этот платеж, или создали его вручную и указали банковский номер, система при повторной загрузке «молча» пропустит этот объект, считая, что он уже обработан. Проанализируем журнал документов «Списания безналичных ДС», добавив в список колонку с банковским номером, чтобы убедиться в отсутствии совпадений.

Особенности налоговых платежей

Если не загружаются именно налоговые платежи (оплата в бюджет), проанализируем реквизиты в файле выписки. Для таких операций 1С требует наличия КБК, ОКТМО и статуса составителя. Если банк не передает эти данные в структурированном виде, а пишет их только в назначении платежа, штатный механизм загрузки может споткнуться на валидации обязательных полей бюджетного платежа. В таком случае стоит проверить настройки «Вида операции по умолчанию» в обработке обмена.

Подведем итог: для решения проблемы мы должны последовательно исключить влияние расширений, проверить настройки казначейства (заявки), убедиться в корректности банковских реквизитов в карточках счетов и проанализировать структуру самого файла выписки с помощью обычного текстового редактора.

← На главную