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

Одна из самых распространенных проблем с которой сталкиваются 1с-ники. Это перекидка справочников и документов из одной конфигурации в другую. Для решения таких задач 1с предлагает использовать специализированную конфигурацию «Конвертация данных». Возьмем, например задачу перекинуть контрагентов из базы 7,7 в базу 8. Что нам для начала нужно?

Разумеется сама база «Конвертация данных» и несколько внешних обработок, для 7.7 это:

  • MD77Exp.ert - обработка, которая выгружает в хмл файл структуру конфигурации 7.7 (выгрузка описания структуры метаданных)
  • V77Exp.ert - универсальная выгрузка данных в формате хмл

Сначала выгружаем первой обработкой структуру метаданных нашей конфигурации. Запоминаем путь к файлу выгрузки и запускаем конфигурацию 8.2 «Конвертация данных».

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

Аналогичную операцию проделываем для конфигурации 8. только там обработки называются:

MD81Exp.epf и MD82Exp.epf - выгрузка описания структуры метаданных для 1с 8.1 и 8.2 соответственно.

Аналогично с семеркой загружаем данные из хмл файла в нашу «Конвертацию данных».

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

Или запустив, стартовый помощник

В стартовом помощнике выберем «Создать новые правила обмена данными (с нуля)» и укажем две конфигурации, между которыми будем делать обмен.

Давайте перекинем из одной конфигурации в другую справочник «Номенклатура».

После того как отработают встроенные алгоритмы ми можем наблюдать соответствия реквизитов справочника «Номенклатура» в 7,7 и 8. Стандартно соответствие ставится для реквизитов с одинаковыми названиями, добавим соответствие между «ПолнНаименование» и «НаименованиеПолное», у меня выглядит так:

Заказчик сказал, что у него во всей номенклатуре единица измерения должна стоять «шт.», в этом мне помогут обработчики событии. Если вы мышкой клацните по номенклатуре, в верхней табличной части то откроется мастер настроек правила конвертации объектов, там, на 3 шаге можно указать свой код в обработчиках событий. Для нашей цели подойдет последний обработчик «После загрузки» который вызывается после загрузки объекта, но до его записи в базу данных, мы пропишем эму такой код:

если Объект. ЭтоГруппа= ложь тогда Объект. ВидНоменклатуры= справочники. ВидыНоменклатуры. НайтиПоНаименованию(" товар " ) ; Объект. ЕдиницаИзмерения = справочники. ЕдиницыИзмерения. НайтиПоНаименованию(" шт " ) ; конецесли ;

Все просто без изысков Объект - это наш обьэкт до записи в базу, очень помогает встроенная справка, которая вызывается при нажатии на кнопку «Информация по обработчикам».

Сохраняем правила конвертации в хмл файл, он нам понадобится в дальнейшем для перекидки справочника.

  • Видео – 21 учебный час
  • Методические материалы в PDF - 117 страниц А4
  • 16 практических заданий с решениями преподавателя

Формат курса, поддержка

Материалы доступны сразу после оплаты заказа – Вы скачиваете их с сайта и изучаете в любое удобное время.

Поддержка производится через Мастер-группу на сайте .

Полноценный доступ в Мастер-группу должен быть активирован не позднее 100 дней после покупки.

Актуальность курса

Материалы курса актуальны для версии БСП 2.3.2.73.

Если Вы планируете использовать более старшие версии БСП, то учтите, что изменились механизмы работы подсистемы БСП “Обмен данными”, также изменились интерфейсы.

Новый курс под последние версии БСП находится в процессе разработки и будет выпущен через несколько месяцев. Но для версий БСП 2.3.2.73 и младше будет актуален текущий курс.

Стоимость курса

9 700 рублей

Гарантия

Мы ведем обучение с 2008 года, уверены в качестве наших курсов и даем на этот курс нашу стандартную 60-дневную гарантию .

Это значит, что если Вы начали заниматься по нашему курсу, но вдруг передумали (или, скажем, не имеете возможности), то у Вас есть 60-дневный срок для принятия решения – и если Вы производите возврат, мы возвращаем 100% оплаты.

Рассрочка платежа

Наши курсы можно оплатить по частям или в рассрочку, в том числе без процентов. При этом доступ к материалам Вы получаете сразу .

Это возможно при оплате от физических лиц на сумму от 3 000 руб. до 150 000 руб.

Все, что Вам нужно сделать – это выбрать способ оплаты “Оплата через Яндекс.Касса”. Далее на сайте платежной системы выбираете “Заплатить по частям”, указываете срок и размер выплат, заполняете небольшую анкету – и через пару минут получаете решение.

Варианты оплаты

Мы принимаем все основные формы платежей.

От физических лиц – оплаты с карт, оплаты электронными деньгами (WebMoney, ЯндексДеньги), оплаты через интернет-банкинг, оплаты через салоны связи и так далее. Возможна также оплата заказа по частям (в рассрочку), в том числе без дополнительных процентов.

Начните оформлять заказ – и на втором шаге Вы сможете выбрать предпочтительный способ оплаты.

От организаций и ИП – безналичная оплата, предоставляются документы на поставку. Вы вводите заказ – и сразу можете распечатать счет на оплату.

Обучение нескольких сотрудников

Наши курсы предназначены для индивидуального обучения. Групповое обучение по одному комплекту является незаконным распространением.

Если компании требуется обучить нескольких сотрудников, мы обычно предлагаем “дополнительные комплекты”, которые стоят на 40% дешевле.

Для оформления заказа на “дополнительный комплект” выберите в форме 2 и более комплектов курса , начиная с второго комплекта стоимость курса будет на 40% дешевле .

Есть три условия использования дополнительных комплектов:

  • нельзя приобрести только дополнительный комплект, если до этого (или вместе с ним) не был приобретен хотя бы один обычный
  • на дополнительные комплекты не действуют еще какие-то скидки (они и так дисконтированны, получилась бы “скидка на скидку”)
  • на дополнительные комплекты не действуют акции (например, компенсация в 7000 рублей) по той же причине

Конвертация данных 2.0 и 2.1 — технологическая конфигурации фирмы 1С, реализованная на версии платформы от 8.1 до 8.3.

Главная задача инструмента — написание правил обмена между прикладными решениями 1С 8 и 7. Актуальная версия конвертации данных сегодня — 3.0.

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

Конфигурацию очень удобно использовать при .

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

Для обучения работы с конфигурации лучше всего подойдет решение практических задач. Попробуйте придумать себе задачи, например: перенести какую-либо информацию из одной базы в другую, превратить документ реализации в документ поступления, «загнать» текущие остатки по бухгалтерскому учету в документ «ввода остатков» и другие задачки.

Очень полезно будет разобраться в «типовых» правилах обмена 1С 8.3, там зачастую можно найти интересные примеры реализации задач.

Для постижения основ вам потребуются материалы, рассмотрим их ниже.

Видео инструкция по конвертации

Азы настройки обмена данными в 1С с помощью конфигурации «1С Конвертации данных» на примере смотрите в видео:

Материалы, учебники для изучения 1С Конвертации данных 2.0

Материалов и документации в сети не слишком большое множество, я попробовал собрать самые важные и интересные материалы:

0. Первым делом советую бесплатный видеокурс Ильи Леонтьева, он доступен по ссылке .

1. Я бы посоветовал прежде всего пользоваться встроенной справкой в конфигурацию. Она действительно неплохо написана и грамотно реализована технически:

2. Второй по важности источник информации — сайт http://www.mykod.info/ (сайт закрылся), специализированный как раз на конвертации данных. Там Вы сможете скачать большое количество материалов по конвертации.

3. Отдельно хотелось бы выделить методичку учебник — (автор — Ольга Кузнецова).

Учебник по 1С Конвертации данных (редакция 2) Правила выгрузки данных

Для выгрузки данных недостаточно установить соответствия объектов и реквизитов источника и приемника. Нужно еще указать какие именно объекты и как выгружать. Для этого необходимо создать правила выгрузки данных. У нас готовы все необходимы правила конвертации объектов, свойств и значений. Практически все уже сделано, осталось только указать какие именно объекты мы хотим переносить из информационной базы источника в приемник. На первый взгляд постановка вопроса очень странная, естественно, мы хотим переносить все объекты для которых у нас заданы правила конвертации объектов!? Но это не совсем верный ответ. При обмене данными всегда ставится задача обмена конкретными объектами. Кроме того, существуют служебные объекты, о которых пользователи не догадываются, да и не должны знать.

Правила выгрузки данными указывают какие объекты разрешить пользователю для выгрузки.

Проще всего объяснить это на конкретном примере. Сформулируем задачу: Имеются две однотипные конфигурации "Бухгалтерия предприятия". Необходимо из одной конфигурации в другую загрузить справочник "Номенклатура".

Покажем последовательность действий в этом случае:

  1. Создаем новое правило обмена данными
  2. В появившемся окне сообщения указываем, что хотим самостоятельно создать новое правило конвертации объектов:
  3. Указываем объект источник и приемник:

  4. Согласимся с предложением программы автоматически создать правила конвертации свойств и значений (можно заметить, что автоматически были созданы еще правила конвертации объектов, они как раз нужны для того что бы переносить объекты не примитивных типов справочника "Номенклатуры". Посмотрите, что программа создала несколько правил конвертации объектов. Эти правила созданы не случайно!). После чего программа предложит нам автоматически создать правила выгрузки данных. Выберем, что бы программа создала правило выгрузки данных только для номенклатуры:

  5. Если перейти на закладку "Правила выгрузки данных", то увидим что создано всего лишь одно правило выгрузки. То есть мы сообщили программе, что при выгрузке данных нужно выгружать только объекты справочника "Номенклатура" (плюс ко всему будут выгружены так же те объекты на которые элементы справочника "Номенклатура" ссылаются):

  6. Правила полностью готовы к использованию. Сохраним их в файл:

  7. Откроем программу "Бухгалтерия предприятия". Откроем универсальную обработку выгрузки и загрузки данных из XML и загрузим правила обмена:

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

  8. После того как файл с данными был выгружен остается только загрузить эти данные в информационной базе - приемнике:

ВНИМАНИЕ!!!

Для ускорения выгрузки данных рекомендуется располагать правила выгрузки в таком порядке, что бы, если есть зависимые правила, то все ссылки были снизу вверх. То есть, в начале списка выгружаемых данных необходимо располагать объекты, которые ни на кого не ссылаются (Например, если справочник Пользователи ссылается на справочник Физические Лица, то рекомендуемый порядок выгрузки данных Физические Лица, Пользователи). Такой способ расположения объектов может существенно сказаться на скорости выгрузки данных.

Если в правиле конвертации объектов нет конвертации табличных частей или движений и в событиях перед выгрузкой данных нет обращений к самому выгружаемому объекту, то имеет смысл установить у правила Выгрузки данных Флажок "Выбирать данные для выгрузки одним запросом". Такой подход позволит при выгрузке данных одним запросом получить все данные, которые нужно выгружать и это может заметно сократить время выгрузки.

Эти достаточно просты оптимизации позволяют сократить время выгрузки данных на 30-40 (!!!) % и более!

Для настройки обмена данными между различными (в том числе и самописными) конфигурациями в 1С существует очень гибкий механизм настройки переноса информации – конфигурация 1С «Конвертация данных» (КД). Давайте рассмотрим работу этого механизма и попробуем настроить правила обмена между двумя типовыми конфигурациями:

  • Бухгалтерия предприятия (демо-версия), редакция 3.0.30;
  • Зарплата и управление персоналом (демо-версия), редакция 3.0.25.

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

Важно отметить, что Ковертация данных позволяет организовать обмен не только между базами 8 версии программы, но и между 7 и 8 версиями платформы 1С.

Стартовый помощник

После установки конфигурации «Конвертация данных» и её запуска первое окно которое открывается – Стартовый помощник (Рис.1) .

Вызвать его повторно можно из меню Операции->Обработки либо из Справки, где эта обработка выделена в отдельную команду.

Так как мы не планируем использовать типовые правила переноса, а собираемся создать свои в следующем окне мы выберем соответствующий пункт из списка (Рис.2) .

Рис.2

Кроме создания новых правил обмена мы можем:


На этом этапе мы должны немного отвлечься от создания правил обмена и поговорить о файлах структуры конфигурации.

Файлы структуры метаданных

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

Важное правило! Обработки выгрузки структуры для разных баз данных должны принадлежать одной версии КД.

Для разных версий платформы фирма 1С реализовала разные обработки выгрузки структуры:

  • MD77Exp.ert – позволяет сохранить в файл структуру конфигураци семерочной базы данных;
  • MD82EXP.epf – выгуржает структуру баз данных, работающих на платформах версии 8.0-8.2;
  • MD83EXP.epf – предназначена для платформы 8.3.

Так как в условиях нашей задачи стоит организовать обмен между базами, работающими на релизе 8.3, мы воспользуемся третьей обработкой (Рис.4).

Рис.4

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

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

Для этого:


Для второй базы повторяем те же самые действия.

Вернемся к нашему помощнику.

Продолжение работы с помощником

После добавления двух наших баз в справочник он имеет вид (Рис.6).

Продолжим работу с помощником

В следующем окне (Рис.7) мы должны выбрать базу приемник и базу источник.

Рис.7

И вот мы подошли к окну, в котором на предложат определить по каким законам и соответствиям будет строиться наш обмен (Рис.8).

Рис.8

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

Так как мы хотим создать собственные правила мы пойдем по третьему пути.

Создание правила для обмена между справочниками

Устанавливаем переключатель в третий пункт списка и нажимаем кнопку «Выполнить».

Мы попали в мастер настроек элемента справочника «Правила конвертации объекта» (Рис.9)

Рис.9

В базе-источнике мы должны выбрать объект, данные которого будут синхронизированы.

В базе приемнике – таблицу, куда эти данные будут попадать.

На следующем этапе нам предстоит определиться с параметрами загрузки:

  • По каким реквизитам будет происходить поиск соответствия;
  • Что делать с существующими элементами;
  • Создавать ли отсутсвующие элементы;
  • Как поступать со ссылками;
  • Какие правила использовать для нумерации новых элементов.

И параметрами выгрузки.

Если мы решим выполнить автоматическое сопоставление данных, этот пункт мы пропустим.

В конце мы должны выгрузить созданные правила на диск.(Рис.10).

Рис.10

Обмен данными

Дальнейший обмен данными мы будем производить с помощью обработки V8Exchan83.epf (Рис.11), также входящей в комплект поставки. Использование стандартного обмена данными, входящего в состав конфигурации или самописной обработки, при использовании правил созданных в КД может закончится возникновением исключительной ситуации.

Рис.11

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

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