Каждый бухгалтер или системный администратор 1С рано или поздно сталкивается с ситуацией, когда отлаженный процесс обмена данными между конфигурациями (например, из 1С:Управление торговлей (УТ) в 1С:Бухгалтерию предприятия (БП)) преподносит неприятный сюрприз. Документы, которые беспрепятственно выгрузились из управленческой базы, наотрез отказываются проводиться в бухгалтерской, выдавая пугающую системную ошибку: «Запись не верна! Не заполнен счет кредита...». Если вы автоматизируете регулярный обмен данными между базами 1С по расписанию, необходимо убедиться, что правила передачи данных корректно заполняют все счета учета в целевой базе.
Эта проблема парализует работу бухгалтерии: становится невозможно выполнить закрытие месяца, сформировать акты сверки взаиморасчетов или корректно рассчитать налоги. В этой статье мы подробно разберем природу возникновения данной ошибки, выясним, почему она чаще всего появляется именно после синхронизации, и рассмотрим пошаговые методы ее решения. Чтобы быстро обнаружить причины расхождений после выполнения синхронизации, можно автоматически сравнить бухгалтерские и налоговые проводки между базами 1С.
Ошибка «Запись не верна! Не заполнен счет кредита» является низкоуровневой ошибкой платформы «1С:Предприятие». Она возникает в момент попытки записи движений документа в регистр бухгалтерии (в журнал проводок). В соответствии с методологией двойной записи, принятой в бухгалтерском учете, каждая проводка должна содержать как счет дебета, так и счет кредита. Если в одной из формируемых проводок поле СчетКт (Счет кредита) остается пустым (содержит значение Неопределено или пустую ссылку), платформа блокирует проведение всего документа и откатывает транзакцию транзитом.
В документе «Реализация товаров и услуг» эта ошибка чаще всего возникает при попытке сформировать проводку по списанию себестоимости товаров. Ожидаемая проводка выглядит так:
Дт 90.02.1 (Себестоимость продаж) — Кт [Пусто] (вместо Кт 41.01 «Товары на складах», 10.01 «Сырье и материалы» или 43 «Готовая продукция»).
Поскольку программа не смогла определить, с какого именно счета учета нужно списать ТМЦ, поле кредита осталось пустым, что и вызвало аварийное завершение операции.
---
Многие пользователи недоумевают: при ручном создании аналогичного документа в «1С:Бухгалтерии» всё проводится идеально, но импортированные из другой базы документы выдают ошибку. Рассмотрим три основные технические причины этого явления:
ПриИзменении. В этот момент срабатывают встроенные алгоритмы, которые обращаются к регистру сведений СчетаУчетаНоменклатуры и автоматически подставляют нужные счета в табличную часть документа (даже если эти колонки скрыты от глаз пользователя). При обмене данными документы создаются и записываются программно. Стандартные интерактивные обработчики при этом игнорируются. Если правила обмена или настройки в БП не передали счета учета явно, документ записывается с пустыми значениями счетов.ТипНоменклатуры может оказаться незаполненным. В результате программа не понимает, что перед ней — товар или услуга, и не может подобрать алгоритм проведения.СчетаУчетаНоменклатуры, где все аналитики (склад, организация, группа) оставлены пустыми. Если эта критически важная строка была случайно удалена пользователями, то любая новая номенклатура, пришедшая из внешней базы, останется без счетов учета.---
Рассмотрим детальные инструкции по исправлению этой ошибки — от простых пользовательских приемов до более глубоких административных методов.
Если документ реализации содержит десятки или сотни строк, визуально найти позицию, которая вызывает сбой, практически невозможно. Проанализируем простой и эффективный способ поиска:
Выяснив, какая именно позиция номенклатуры мешает проведению, проверим правильность ее настройки:
Чтобы защитить базу данных от подобных сбоев при последующих обменах, необходимо убедиться в наличии базового (универсального) правила подстановки счетов:
Что делать, если из УТ загрузился массив документов за целый месяц, и все они содержат пустые счета учета? Исправлять каждый документ вручную — колоссальный труд. Воспользуемся стандартным инструментом групповой обработки данных:
Реализация товаров и услуг: Товары (обратите внимание, нам нужна именно табличная часть «Товары»).Проведен Равно Нет).41.0190.01.190.02.1Если визуально карточки рабочей и «сбойной» номенклатуры абсолютно идентичны, проблема кроется в реквизитах, которые не выведены на форму элемента. Проанализируем ситуацию с помощью Консоли запросов. Мы можем составить простой запрос, который наглядно покажет разницу между правильным и поврежденным элементом справочника:
ВЫБРАТЬ
Номенклатура.Ссылка КАК Товар,
Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
Номенклатура.ВидНоменклатуры.ТипНоменклатуры КАК СистемныйТип,
Номенклатура.Услуга КАК ФлагУслуги,
Номенклатура.ПометкаУдаления КАК Удален
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
Номенклатура.Ссылка В (&ПроблемныйТовар, &РабочийТовар)
Выполнив этот запрос, мы сразу увидим, какое именно скрытое поле (например, СистемныйТип или признак Услуга) очистилось или записалось некорректно в процессе работы правил обмена.
Если вам необходимо срочно провести один конкретный документ прямо сейчас, воспользуйтесь следующим приемом:
ПриИзменении, счета учета мгновенно заполнятся в табличной части, и документ проведется.В самых запутанных случаях, когда все счета визуально на месте, но проведение все равно блокируется, нам поможет режим отладки в Конфигураторе:
Подводя итог, отметим: появление ошибки «Запись не верна! Не заполнен счет кредита» — это следствие рассинхронизации настроек счетов учета и реквизитов номенклатуры между базами. Систематическая проверка регистра сведений СчетаУчетаНоменклатуры и контроль заполнения типов в справочнике Виды номенклатуры помогут вам навсегда избавиться от этой неприятности и гарантировать стабильную работу системы учета. В случае обмена данными с УНФ для устранения проблемы можно использовать расширение для автоматического заполнения счетов затрат в загружаемых документах.