Что делать, если в 1С перестали загружаться выписки из СУФД и возникает ошибка уникальности лицевого счета?

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

При работе в программе 1С:Бухгалтерия государственного учреждения (БГУ) пользователи часто сталкиваются с проблемой, когда привычный процесс импорта выписок из системы СУФД (Система удаленного финансового документооборота) внезапно прерывается ошибкой. Типичная ситуация выглядит так: вы создаете Задание на импорт, выбираете файлы выписок, нажимаете кнопку Загрузить, и система выдает сообщение: "в ИБ отсутствует л/с №..., указанный в файле передачи". При попытке проверить карточку лицевого счета в справочнике или пересохранить её, программа выдает новую ошибку: "Значение поля 'Код' не уникально". В этой статье мы подробно разберем, почему это происходит и как восстановить работоспособность обмена.

Причина 1: Скрытые дубликаты и помеченные на удаление объекты

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

Рассмотрим порядок действий для поиска "невидимых" счетов:

  1. Откроем справочник Лицевые счета.
  2. Проверим установленные фильтры. Нажмем "Еще" — "Установить стандартные настройки", чтобы убедиться, что мы видим все элементы.
  3. Включим отображение помеченных на удаление объектов. Если в справочнике есть лицевой счет с таким же номером, но он помечен на удаление (перечеркнут красным крестиком), система все равно будет считать его код занятым.
  4. Воспользуемся глобальным поиском по конфигурации или поиском в списке (Ctrl+F), введя номер счета без пробелов.

Если дубль найден и он помечен на удаление, необходимо либо окончательно удалить его через Удаление помеченных объектов, либо изменить ему код на произвольный (например, добавить в конец символы "_старый"), чтобы освободить нужный номер для актуальной записи.

Причина 2: Проблема невидимых пробелов и спецсимволов

Выясним причину, по которой 1С может "не узнавать" номер счета в файле, даже если визуально он совпадает с тем, что заведен в программе. Часто это связано с лишними пробелами. Пробел в начале или в конце строки для программы является самостоятельным символом. Номер " 0354210101" и "0354210101" — это разные значения.

Проанализируем ситуацию по шагам:

  1. Откроем файл выписки из СУФД (обычно это формат .vyp) с помощью текстового редактора, например, Notepad++.
  2. Найдем строку, содержащую номер лицевого счета. Посмотрим, нет ли перед номером или после него лишних пробелов или знаков табуляции.
  3. Вернемся в 1С в карточку лицевого счета. Установим курсор в поле Номер счета и Код. Проверим, нет ли там случайного пробела в конце. Нажмем клавишу Backspace в конце строки, чтобы убедиться, что лишних знаков нет.

Важный момент: Иногда проблема кроется в "неразрывном пробеле", который визуально не отличим от обычного, но имеет другой код символа. Если вы копировали номер счета из письма или Excel, лучше перепечатать его вручную.

Причина 3: Актуальность форматов обмена

Если лицевой счет заведен верно, дублей нет, а ошибка "отсутствует в ИБ" сохраняется, проанализируем настройки импорта. Форматы обмена с Федеральным казначейством постоянно меняются. Если ваше УФК обновило требования к файлам, а вы используете старые Форматы обмена, 1С может неправильно парсить (считывать) данные из файла.

Разберем процесс обновления форматов:

  1. Перейдем в раздел Настройка обмена данными — Настройка поставок форматов обмена.
  2. Посмотрим версию загруженных форматов. Если они датированы прошлым годом или более ранним периодом, их необходимо обновить.
  3. Загрузим актуальные файлы форматов (расширение .fk), которые поставляются вместе с обновлениями конфигурации БГУ или скачиваются с сайта поддержки 1С.
  4. В Задании на импорт убедимся, что выбран правильный тип формата, соответствующий версии файла из СУФД.

Причина 4: Использование консоли запросов для поиска "фантомных" данных

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

Посмотрим на пример запроса, который поможет найти все объекты с похожим кодом:


ВЫБРАТЬ
    ЛицевыеСчета.Ссылка КАК СсылкаНаСчет,
    ЛицевыеСчета.Код КАК КодСчета,
    ЛицевыеСчета.Владелец КАК Учреждение,
    ЛицевыеСчета.ПометкаУдаления КАК Удален
ИЗ
    Справочник.ЛицевыеСчета КАК ЛицевыеСчета
ГДЕ
    ЛицевыеСчета.Код ПОДОБНО "%0354210101%"

Обратите внимание на использование символа % в условии ПОДОБНО. Это позволит найти номер счета, даже если в нем есть скрытые префиксы или пробелы. Если запрос выдаст две строки — значит, у вас действительно есть дубль, который нужно устранить.

Причина 5: Кэш конфигурации и тестирование базы

Иногда ошибка уникальности является ложной и возникает из-за сбоя индексов базы данных или некорректного кэша на компьютере пользователя. Если тестирование в конфигураторе не помогло, выполним следующие действия:

  1. Очистим кэш 1С. Самый простой способ — удалить базу из списка и добавить её заново.
  2. В режиме Конфигуратор запустим процедуру "Тестирование и исправление". Обязательно выберем пункты "Реиндексация таблиц информационной базы" и "Пересчет итогов".
  3. Если используется клиент-серверный вариант (SQL), можно выполнить DBCC CHECKDB средствами СУБД, чтобы исключить физическое повреждение таблиц.

Шаг 6: Проверка привязки к Учреждению

Ошибка "в ИБ отсутствует л/с" может возникать, если счет заведен правильно, но привязан к другому элементу справочника Учреждения. В 1С:БГУ поиск лицевого счета при импорте идет строго в контексте владельца. Если в Задании на импорт выбрано "Учреждение А", а лицевой счет в справочнике по ошибке привязан к "Учреждению Б" (даже если названия похожи), программа его не найдет. Проверьте поле Владелец в карточке лицевого счета.

Резюме: В большинстве случаев проблема решается либо удалением скрытых дублей через обработку Удаление помеченных объектов, либо тщательной очисткой поля Код от пробелов. Всегда начинайте с проверки файла выписки в текстовом редакторе — это самый быстрый способ понять, какой именно номер счета ожидает увидеть программа.

← На главную