Одна з найпоширеніших проблем з якою стикаються 1с-ники. Це перекидання довідників і документів з однієї конфігурації в іншу. Для вирішення таких завдань 1с пропонує використовувати спеціалізовану конфігурацію «Конвертація даних». Візьмемо, наприклад завдання перекинути контрагентів з бази 7,7 в базу 8. Що нам для початку потрібно?
Зрозуміло сама база «Конвертація даних» і кілька зовнішніх обробок, для 7.7 це:
- MD77Exp.ert - обробка, яка вивантажує в ХМЛ файл структуру конфігурації 7.7 (вивантаження опису структури метаданих)
- V77Exp.ert - універсальна вивантаження даних в форматі ХМЛ
- V77Imp.ert - універсальна завантаження даних в форматі ХМЛ.
Спочатку вивантажуємо першою обробкою структуру метаданих нашої конфігурації. Запам'ятовуємо шлях до файлу вивантаження і запускаємо конфігурацію 8.2 «Конвертація даних».
Після чого вибираємо на робочому столі програми пункт «Завантажити структуру метаданих конфігурації», вказуємо ім'я файлу і натискаємо «Виконати завантаження».
Аналогічну операцію проробляємо для конфігурації 8. тільки там обробки називаються:
MD81Exp.epf і MD82Exp.epf - вивантаження опису структури метаданих для 1с 8.1 і 8.2 відповідно.
ВигрузкаЗагрузкаДаннихXML81.epf ВигрузкаЗагрузкаДаннихXML82.epf - тут з назви все ясно.
Аналогічно з сімкою завантажуємо дані з ХМЛ файлу в нашу «Конвертацію даних».
Після того як ми завантажили структури наших баз даних в конфігурацію можна приступати до настройки правил обміну, і перенесення об'єктів. Для цього потрібно натиснути на кнопку «настройка правил обміну даними»
Або запустивши, стартовий помічник
У стартовому помічника виберемо «Створити нові правила обміну даними (з нуля)» і вкажемо дві конфігурації, між якими будемо робити обмін.
Давайте перекинемо з однієї конфігурації в іншу довідник «Номенклатура».
Після того як відпрацюють вбудовані алгоритми ми можемо спостерігати відповідності реквізитів довідника «Номенклатура» в 7,7 і 8. Стандартно відповідність ставиться для реквізитів з однаковими назвами, додамо відповідність між «ПолнНаіменованіе» і «НаіменованіеПолное», у мене виглядає так:
Замовник сказав, що у нього в усій номенклатурі одиниця виміру повинна стояти «шт.», В цьому мені допоможуть обробники подію. Якщо ви мишкою клацніте по номенклатурі, у верхній табличній частині то відкриється майстер налаштувань правила конвертації об'єктів, там, на 3 кроці можна вказати свій код в обробниках подій. Для нашої мети підійде останній обробник «Після завантаження» який викликається після завантаження об'єкта, але до його запису в базу даних, ми пропишемо ему такий код:
Все просто без вишукувань Об'єкт - це наш обьект до запису в базу, дуже допомагає вбудована довідка, яка викликається при натисканні на кнопку «Інформація по обробникам».
Зберігаємо правила конвертації в ХМЛ файл, він нам знадобиться надалі для перекидання довідника.