Как настроить перенос субконто при конвертации плана счетов в 1С:Конвертация данных

Программист 1С v8.3 (Обычные формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

Перенос бухгалтерских проводок и документов типа ОперацияБух (или ОперацияБухгалтерскийУчет) между конфигурациями с различной структурой — одна из самых сложных и нетривиальных задач при работе с конфигурацией «1С:Конвертация данных 2.1» (КД 2.1). Часто разработчики сталкиваются с ситуацией, когда сам документ переносится, а аналитика по счетам (субконто) либо теряется, либо при загрузке данных возникает критическая ошибка платформы:

«Вид субконто [ИмяВидаСубконто] не доступен для данного счета!»

В этой статье мы подробно разберем причины возникновения этой ошибки, изучим специфику работы с планами счетов и планами видов характеристик, а также пошагово настроим правила конвертации объектов для корректного переноса субконто. В качестве примера рассмотрим перенос данных из конфигурации «Бухгалтерия для Казахстана» редакции 1.1 в редакцию 3.0, так как она отлично иллюстрирует особенности работы с локализованными базами.

Выясняем причины возникновения ошибки

Прежде чем переходить к настройке правил в КД 2.1, давайте проанализируем физический смысл ошибки. Платформа «1С:Предприятие» жестко контролирует состав аналитики для каждого бухгалтерского счета. В регистре бухгалтерии субконто хранится в виде связки «Ключ-Значение», где ключом выступает элемент Плана видов характеристик (например, Контрагенты, Номенклатура или Договоры), а значением — ссылка на соответствующий объект базы данных (справочник, документ и т.д.).

Ошибка несоответствия видов субконто чаще всего возникает по двум причинам:

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

Специфика конфигурации «Бухгалтерия для Казахстана»

В типовых российских конфигурациях (например, «Бухгалтерия предприятия, ред. 3.0») основной план видов характеристик для аналитики называется ВидыСубконтоХозрасчетные, а основной регистр бухгалтерии — Хозрасчетный. Большинство примеров в сети Интернет и демо-базах КД ориентировано именно на эти метаданные.

Однако в «Бухгалтерии для Казахстана» (БК) архитектура имеет свои особенности:

Попытка использовать стандартные шаблоны кода вроде ИмяПКОВидСубконто = "ВидыСубконтоХозрасчетные" в данном случае неизбежно приведет к ошибке, так как в казахстанской базе такого объекта просто не существует. Мы должны ориентироваться исключительно на структуру нашей конкретной конфигурации.

Пошаговый алгоритм настройки правил конвертации

Рассмотрим подробнее процесс настройки правил обмена в конфигурации «Конвертация данных 2.1» для корректного переноса движений документа ОперацияБух.

Шаг 1. Настройка ПКО для Плана счетов

Первое и самое главное правило — никогда не оставляйте сопоставление бухгалтерских счетов на автоматику КД 2.1. План счетов должен быть сопоставлен вручную и однозначно.

  1. Создайте новое Правило конвертации объектов (ПКО). Источник: ПланСчетовСсылка.Типовой, Приемник: ПланСчетовСсылка.Типовой. Назовем его, например, ТиповойПланСчетов.
  2. В настройках свойств ПКО (ПКС) добавьте свойство Код и установите для него флаг «Поиск». Это обеспечит первичный поиск счетов по их кодам.
  3. Перейдите на вкладку «Конвертация значений». Здесь необходимо вручную сопоставить счета источника и приемника. Особенно это актуально, если в базах используются разные редакции плана счетов (например, при переходе с БК 1.1 на БК 3.0 коды некоторых счетов или их субсчетов могли измениться). Четко свяжите каждую строку (например, счет источника 1210 со счетом приемника 1210).

Шаг 2. Настройка ПКО для Плана видов характеристик

Теперь нам нужно объяснить конвертации, как переносить сами виды субконто (метаданные аналитики).

  1. Создайте ПКО. Источник: ПланВидовХарактеристикСсылка.ВидыСубконтоТиповые, Приемник: ПланВидовХарактеристикСсылка.ВидыСубконтоТиповые. Присвойте правилу идентификатор: ВидыСубконтоТиповые.
  2. Перейдите на вкладку «Конвертация значений».
  3. Сделайте сопоставление предопределенных элементов. Для каждого предопределенного элемента ПВХ источника (Контрагенты, Договоры, Номенклатура, СтатьиДвиженияДенежныхСредств и т.д.) укажите соответствующий предопределенный элемент приемника.
  4. Важно: Настройку синхронизации для этих значений лучше выполнять по свойству «Имя предопределенного элемента». Это гарантирует стабильность сопоставления независимо от того, как элементы называются на уровне интерфейса (представления) в разных базах.

Шаг 3. Настройка ПКС для свойств субконто в Регистре бухгалтерии

При переносе документа ОперацияБух переносятся его движения по регистру бухгалтерии. В КД 2.1 для этого создается группа правил конвертации свойств (ПКГС) для коллекции движений.

Внутри этой группы правил найдите свойства СубконтоДт и СубконтоКт. Нам необходимо указать системе, какое ПКО использовать для конвертации видов субконто.

  1. Откройте свойства ПКС для СубконтоДт.
  2. Перейдите к обработчику события «Перед выгрузкой».
  3. Пропишите в нем следующую строку кода:

ИмяПКОВидСубконто = "ВидыСубконтоТиповые";

  1. Повторите аналогичную операцию для ПКС СубконтоКт, прописав тот же самый код в обработчике «Перед выгрузкой».

Этот параметр указывает платформе КД 2.1, что при выгрузке ключа субконто (который имеет тип ПВХ) необходимо использовать именно созданное нами ПКО ВидыСубконтоТиповые.

Шаг 4. Управление правилами для значений субконто (Сложные случаи)

Сами значения субконто (например, конкретный элемент справочника Контрагенты или Номенклатура) КД 2.1 пытается сопоставить автоматически. Программа определяет тип выгружаемого значения и ищет в правилах обмена ПКО, у которого объект источника совпадает с этим типом.

Однако могут возникать неоднозначные ситуации. Например, если в правилах обмена создано несколько ПКО для одного и того же справочника (например, ПКО Контрагенты и ПКО КонтрагентыПолучатели). В этом случае КД может выбрать не то ПКО по умолчанию.

Для решения этой проблемы мы можем явно управлять выбором правила в обработчике события «При выгрузке» свойств СубконтоДт / СубконтоКт. Проанализируем пример кода:


// Пример явного назначения ПКО для конкретного вида субконто
Если НомерСубконто = 1 И Ключ.ИмяПредопределенногоЗначения = "Контрагенты" Тогда
    ИмяПКО = "Контрагенты"; 
ИначеЕсли Ключ.ИмяПредопределенногоЗначения = "Договоры" Тогда
    ИмяПКО = "ДоговорыКонтрагентов";
КонецЕсли;

В данном коде мы проверяем имя предопределенного значения вида субконто и жестко задаем имя ПКО (ИмяПКО), которое должно использоваться для конвертации значения этого субконто. Это исключает любые ошибки автоподбора правил конвертации.

Резюме и рекомендации

Мы подробно разобрали механизм настройки переноса аналитики при конвертации планов счетов. Подводя итог, выделим ключевые правила для успешного переноса субконто:

Применяя эти правила и структурированный подход к настройке КД 2.1, вы сможете без труда переносить проводки любой сложности между любыми конфигурациями семейства «1С:Предприятие».

← На главную