При переходе на платформу 1С:Предприятие 8.3 с устаревшей версии 1С 7.7 пользователи и начинающие специалисты часто сталкиваются с проблемой: в интерфейсе новой программы отсутствует привычный справочник «Таможенные декларации» (в 8.3 он чаще называется «Номера таможенных деклараций»). Попытки найти этот объект в Конфигураторе или перенести его напрямую из старой базы часто вызывают ступор. Разберем детально, как решить эту задачу правильно, не прибегая к потенциально опасным изменениям конфигурации.
Первое и самое важное правило работы в 1С 8.3: не нужно пытаться включать справочник через Конфигуратор, если вы работаете в типовой конфигурации (например, «1С:Бухгалтерия», «1С:Управление нашей фирмой» или «1С:Управление торговлей»). Разработчики фирмы 1С уже создали этот объект метаданных в системе. В современных конфигурациях он обычно называется Справочник.НомераГТД или Справочник.НомераТаможенныхДеклараций.
Причина, по которой вы его не видите в меню разделов или в списке справочников, кроется в механизме под названием Функциональные опции. Чтобы не перегружать интерфейс лишними полями, программа скрывает все функции, связанные с импортными закупками, если организация не ведет внешнеэкономическую деятельность. Нам нужно просто включить соответствующую настройку в режиме «1С:Предприятие».
Рассмотрим по шагам, как активировать данный функционал в самых популярных конфигурациях под управлением управляемых форм.
В конфигурации «1С:Бухгалтерия предприятия 3.0»:
В конфигурации «1С:Управление нашей фирмой» (УНФ):
В конфигурациях «1С:Управление торговлей 11», «1С:Комплексная автоматизация» и «1С:ERP»:
После активации данных настроек платформа автоматически перестроит командный интерфейс. Справочник станет доступен в соответствующих разделах учета закупок.
Если вы включили функциональную опцию, но все равно не можете найти справочник в меню, воспользуемся универсальным инструментом поиска:
Иногда у пользователей возникает идея: «А давайте мы просто откроем Конфигуратор 1С 8.3, возьмем старую базу 1С 7.7 и перенесем справочник оттуда через операцию Сравнение и объединение конфигураций».
Важно понимать: технологически это сделать невозможно!
Платформы 1С 7.7 и 1С 8.3 имеют совершенно разную внутреннюю архитектуру. База 7.7 хранит описание метаданных в файле 1Cv7.MD, структура которого принципиально отличается от файлов конфигурации 8.3 (форматы .cf, .cfu). Конфигуратор 1С 8.3 не умеет читать файлы «семерки», у них разные типы данных, механизмы подчинения объектов, структура таблиц СУБД и принципы построения индексов. При попытке указать файл конфигурации 7.7 система выдаст ошибку о несовместимости формата.
Переносить нужно не структуру самого справочника (ведь в 8.3 он уже создан разработчиками), а его наполнение (элементы данных). Сделать это можно двумя основными способами.
Если вы переходите с типовой конфигурации «Бухгалтерский учет 7.7» на типовую «Бухгалтерию предприятия 8.3», воспользуйтесь встроенным помощником:
ГТД) и аккуратно сопоставит их с новыми объектами 1С 8.3. Элементы справочника перенесутся без участия программиста.Если ваши конфигурации (источник 7.7 и приемник 8.3) были серьезно изменены программистами, стандартный перенос не отработает. В таком случае нам потребуется использовать специализированный инструмент разработчика — программу «1С:Конвертация данных 2.1». Проанализируем общую схему этого процесса:
MD77.ert, для 8.3 — MD83.epf) выгрузим структуры метаданных обеих конфигураций в файлы XML.ГТД из 7.7, а в качестве приемника — справочник НомераГТД из 8.3.V77Exp.ert), укажем наши правила и выгрузим данные в файл данных.Для понимания того, как программно создаются элементы справочника при переносе (или программном импорте из других внешних систем, например, Excel), посмотрим на пример кода на встроенном языке 1С 8.3:
НовыйНомерГТД = Справочники.НомераГТД.СоздатьЭлемент();
НовыйНомерГТД.Код = "10129020/111223/0012345"; // Формат номера декларации
НовыйНомерГТД.СтранаПроисхождения = Справочники.СтраныМира.НайтиПоНаименованию("КИТАЙ");
Попытка
НовыйНомерГТД.Записать();
Сообщить("Успешно добавлен номер декларации: " + НовыйНомерГТД.Код);
Исключение
Сообщить("Не удалось записать элемент: " + ОписаниеОшибки());
КонецПопытки;
Используя данный подход, мы сохраняем целостность конфигурации 1С 8.3, оставляя ее на поддержке, и при этом успешно решаем задачу импорта всех исторических данных по таможенным декларациям из старой системы.