При настройке взаимодействия между «1С:Бухгалтерия государственного учреждения» (БГУ 2.0) и казначейской системой «АЦК-Финансы» пользователи часто сталкиваются с ошибками валидации файлов. Система может требовать обязательного заполнения полей бюджетной классификации (КФСР, КЦСР, КВР) или не видеть код экономической классификации (КЭК/КОСГУ), выдавая ошибки вида «Поле объекта не обнаружено» или «Обязательное поле не заполнено». Разберем подробно, как настроить форматы обмена и правила выгрузки, чтобы решить эти проблемы.
Прежде чем приступать к правке правил (например, когда требуется импорт документов из УРМ Криста), убедимся, что используются актуальные форматы. В отличие от регламентированной отчетности, форматы обмена с казначейством (включая АЦК-Финансы) не всегда обновляются автоматически вместе с релизом конфигурации.
Проверим наличие обновлений:
Типы форматов обмена или через обработку «Обмен с казначейскими системами и учреждениями банка» (через нее же настраивается загрузка из УРМ в БГУ 2.0).Использование устаревшего формата — самая частая причина отсутствия новых тегов (например, детализации по КВР или Ан.Группе).
Если при выгрузке возникают ошибки: !!! Обязательное поле > не заполнено КФСР, КЦСР, КВР, проанализируем настройки документа и возможности использования дополнительной бюджетной классификации (ДБК):
Самая сложная часть настройки — корректная выгрузка кода операции сектора государственного управления (КОСГУ) в тег KESR. Часто типовой механизм не выгружает это поле или выдает ошибку Поле объекта не обнаружено (КОСГУНазначениеПлатежа).
Разберем, как исправить это в настройках правил обмена, не изменяя код конфигурации (или с минимальными изменениями).
В БГУ 2.0 структура данных отличается от первой версии, и прямой доступ к реквизитам табличной части может быть затруднен. Для получения данных из табличной части «Расшифровка платежа» используем специальную функцию экспортного модуля.
Откроем настройку формата обмена, найдем правило для выгрузки Заявки на кассовый расход (ЗКР) и перейдем к настройке полей. Нам нужно найти или добавить поле, соответствующее пути:
/EXTRWT/WTFORMAT/DOCAZKAUBUCASHREQUESTS/DOCAZKAUBUCASHREQUEST[last]/LINES/LINE[last]/@KESR
В колонке «Значение» или «Правило» для этого поля необходимо прописать вызов функции, которая корректно извлечет КОСГУ из строки табличной части. Используем функцию ПолучитьРеквизитТабЧастиПРДокумента.
Формула для вставки:
ПолучитьРеквизитТабЧастиПРДокумента(Объект.Ссылка, "Ссылка.РасшифровкаПлатежа", ТЧ.НомерСтроки, "КОСГУНазначениеПлатежа")
Разберем параметры функции:
Объект.Ссылка — ссылка на выгружаемый документ."Ссылка.РасшифровкаПлатежа" — имя табличной части, откуда берем данные.ТЧ.НомерСтроки — текущий номер строки при обходе табличной части."КОСГУНазначениеПлатежа" — имя реквизита, содержащего КЭК.Также встречается вариант прямого обращения к коллекции, если выгрузка идет строго последовательно, но он менее надежен:
Объект.РасшифровкаПлатежа[ТЧ.номерстроки-1].КОСГУНазначениеПлатежа
Если ошибка Поле объекта не обнаружено возникает на уровне программного кода при формировании структуры, можно внести изменения в общий модуль ПлатежноРасчетныеДокументыСервер (или аналогичный, отвечающий за форматы).
Найдем функцию ЗначенияРеквизитовЗаявкаНаКассовыйРасход. В ней есть параметры по умолчанию, отключающие детализацию:
Функция ЗначенияРеквизитовЗаявкаНаКассовыйРасход(Ссылка, ИспользоватьКЭК = Ложь, ...) Экспорт
Можно принудительно установить ИспользоватьКЭК = Истина в теле функции, либо изменить вызов этой функции в обработке обмена, добавив проверку на имя табличной части:
// Пример логики в обработке обмена
Если Найти(НРег(Правило.Условие), "кэк") > 0 Тогда
ИспользоватьКЭК = Истина;
КонецЕсли;
Однако, рекомендуется использовать первый способ (настройку правил в пользовательском режиме), так как это сохраняет поддержку конфигурации и не требует вмешательства в код при обновлении релизов.
Иногда возникает ошибка при выгрузке, если платеж не налоговый и УИН равен 0. Ошибка может выглядеть как сбой заполнения поля файла передачи.
В этом случае необходимо проверить настройки обмена в самой обработке выгрузки. Часто проблема решается корректным указанием настройки «Настройка обмена», где может «слететь» галочка или путь к файлу правил. Убедитесь, что для неналоговых платежей правила допускают нулевой УИН или отсутствие тега.
Для успешной выгрузки в АЦК-Финансы из БГУ 2.0:
KESR пропишите формулу с использованием ПолучитьРеквизитТабЧастиПРДокумента.