При переходе с устаревших систем, таких как 1С:Управление производственным предприятием (УПП) или Бухгалтерия предприятия 2.0, на современные платформы (1С:Комплексная автоматизация 2.4 или ERP), пользователи и администраторы часто сталкиваются с аномалиями в плане счетов. Одной из наиболее заметных проблем является «исчезновение» базовых счетов, таких как 90.01.1 «Выручка по деятельности с основной системой налогообложения».
Ситуация выглядит парадоксально: в Конфигураторе счет присутствует как предопределенный, функциональные опции включены, но в режиме «1С:Предприятие» в справочнике «План счетов» объект просто не виден. В этой статье мы подробно разберем, почему это происходит, проанализируем технические причины и рассмотрим методы восстановления данных.
Разберем ситуацию, которая часто встречается при использовании стандартных обработок переноса данных. Основная причина того, что счет не отображается — это нарушение логической связи между метаданными конфигурации (тем, что прописано разработчиками в дереве объектов) и записями в базе данных.
Выясним, какие технические факторы приводят к такому результату:
ПланСчетов.Хозрасчетный.ВыручкаПоДеятельностиСОсновнойСистемойНалогообложения.Прежде всего, нам необходимо убедиться, что проблема не связана с изменением самой конфигурации. Рассмотрим алгоритм проверки:
Планы счетов — Хозрасчетный.ВыручкаПоДеятельностиСОсновнойСистемойНалогообложения и кодом 90.01.1.Если в Конфигураторе счет на месте, а в режиме Предприятия его нет (даже при отсутствии установленных фильтров в списке), значит, проблема кроется в данных.
Посмотрим на стандартный механизм платформы, который позволяет восстановить связи предопределенных данных. Проанализируем возможности утилиты «Тестирование и исправление» (ТиИ).
Для запуска процедуры:
Этот процесс заставит систему сопоставить объекты в таблице плана счетов с описанием в конфигурации. Если связь была потеряна, платформа попытается создать новый элемент или восстановить имя предопределенного у существующего.
Если счет «наложился» на другой, как в описанном случае с переносом из УПП, нам необходимо проанализировать план счетов на наличие дубликатов по коду. Рассмотрим, как это сделать:
План счетов (Хозрасчетный).Коду.Если поиск выдаст два элемента с кодом 90.01.1, необходимо определить, какой из них является «настоящим» (предопределенным). В списке предопределенный элемент обычно помечен специальной иконкой (желтый шар). Объединим их, выбрав предопределенный счет в качестве оригинала.
В некоторых случаях стандартные средства не помогают, и требуется программное вмешательство. Рассмотрим пример кода, который позволяет принудительно установить имя предопределенных данных для счета, если он «потерялся».
Проанализируем следующий алгоритм:
// Пример кода для восстановления связи счета
ПланыСчетовМенеджер = ПланыСчетов.Хозрасчетный;
НайденныйСчет = ПланыСчетовМенеджер.НайтиПоКоду("90.01.1");
Если Не НайденныйСчет.Пустая() Тогда
ОбъектСчета = НайденныйСчет.ПолучитьОбъект();
// Устанавливаем соответствие с именем в конфигураторе
ОбъектСчета.ИмяПредопределенныхДанных = "ВыручкаПоДеятельностиСОсновнойСистемойНалогообложения";
Попытка
ОбъектСчета.Записать();
Сообщить("Связь для счета 90.01.1 успешно восстановлена");
Исключение
Сообщить("Ошибка при записи: " + ОписаниеОшибки());
КонецПопытки;
КонецЕсли;
Этот метод позволяет «подсказать» системе, что данный элемент справочника в базе данных соответствует конкретному узлу метаданных.
Хотя чаще всего проблема носит технический характер, не лишним будет проверить настройки самой КА 2.4. Выясним, не скрыт ли счет настройками интерфейса:
Проблема исчезновения счета 90.01.1 в 1С:Комплексная автоматизация 2.4 после переноса из УПП — это классический случай конфликта данных при миграции. Мы выяснили, что наиболее вероятной причиной является «затирание» предопределенного элемента пользовательским при загрузке данных через универсальные обработки обмена.
Рекомендуемая последовательность действий: сначала выполните Тестирование и исправление, затем проверьте базу на дубли. Если это не помогло, используйте программную установку свойства ИмяПредопределенныхДанных. Это гарантированно вернет счет в пользовательский интерфейс и позволит корректно настраивать правила отражения документов в регламентированном учете.