gifts2017

Особенности обмена данными между старой УТ 10.2 и новой БП 1.6 часть 1-я.

Опубликовал Николай Железнов (koliaff) в раздел Обмен - Перенос данных из 1C8 в 1C8

Хочу рассказать о тех подводных камнях, которые встретились мне при переделывании стандартных правил обмена из УТ 10.2 в БП 1.6 и как я их обходил ...

Встречается много организаций, которые в своё время купили конфигурацию Управление торговлей релиз 10.2 и переделали её под свои нужды, т.е. изменили метаданные. Изминили до такой степени, что обновиться на релиз 10.3 уже практически не возможно ). А обмениваться с бухгалтерией, в данном случае конфигурацией Бухгалтерия предприятия, очень нужно. Тем более наше законодательство не стоит на месте и все изменения в нём должны отражаться в конфигурации БП. Но правила обмена, которые были изначально (для обмена с БП 1.5), уже не действуют. А почему ? Потому что изменились метаданные в БП и вызов функции и процедур для новой БП 1.6 идёт по другому.  Я захотел найти стандартные правила УТ 10.2 - БП 1.6 и загрузил самую последнюю конфигурацию Конвертации данных 2. Но там в демо базе не оказалось нужных мне правил. Я решил идти до конца, вернее меня заставили ;)

Расскажу как я переделывал стандартные правила обмена УТ 10.2 - БП 1.5, в правила обмена УТ 10.2 - БП 1.6. Начнём :

Глава первая. Как выманить зайца из норы.

Для начала я захотел получить стандартные правила обмена именно для моей конфигурации УТ 10.2. Для этого я запустил конфигуратор УТ и нашёл где формируются правила обмена, если их вызывать в режиме предприятия через меню «Сервис – Обмен данными – выгрузка данных в конфигурацию Бухгалтерия Предприятия 1.5». В конфигураторе это обработка «ВыгрузкаДанныхВ1СБухгалтерию80_15». В этой самой обработке в конфигураторе нашёл процедуру, которая вызывается при нажатии на кнопку «Загрузить правила обмена» на закладке «Правила выгрузки данных» в режиме предприятия. В этой процедуре (Процедура ЗагрузитьПравилаОбмена(Кнопка)) есть такая строка :

УдалитьФайлы(ИмяВременногоФайлаПравилОбмена);  // Удаляем временный файл правил. 

На этой строке я и поставил точку останова ). Для чего ? Для того, чтобы полученный файл правил перед удалением скопировать для дальнейшей работы с ним уже в конфигурации Конвертация данных 2 (КД). Оказалось что файл правил сохраняется в папке «C:\Documents and Settings\Администратор\Local Settings\Temp\», а как он называется можно сразу узнать в конфигураторе, когда поставленная нами точка сработает. Просто посмотреть в этот момент значение переменной ИмяВременногоФайлаПравилОбмена. У меня имя файла оказалась bcf577c1-1ebe-4558-8e02-3f3bb11a83e2.xml. Наверное повезло ;). Когда программа стояла на точке, я залез в этот каталог (не забывайте, что каталог Local Settings скрыт по умолчанию) и скопировал файл в другое место. После чего переименовал, так как его наименование не нравилось мне ).

P.S:

  • Есть и другой способ получить правила обмена, которым пользуются Sla и Поручик  :
    Взять их этой же самой обработке, в макете. Весь текст без первой строки скопировать и сохранить в файл с расширением xml. (с)
  • По предложению z-alexey написал простенькую обработку для выгрузки стандартных правил в файл с расширением XML. )
    http://infostart.ru/projects/4168/
  • Продолжение статьи Глава 2. Как затащить зайца обратно. ) http://infostart.ru/blogs/1070/

 

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Вячеслав Бояркин (Sla) 17.05.09 22:03
Можно достать правила обмена без точек останова и временных файлов.
В этой же самой обработке, в макете. Весь текст без первой строки скопировать и сохранить в файл с расширением xml. И загрузить его в КД.
2. Николай Железнов (koliaff) 17.05.09 23:22
(Sla) Варианты разные. Я нашёл и описал свой. Именно так, как я это делал.. В любом случае результат один .... Трудозатраты соизмеримы )
3. Serj (Serj1C) 18.05.09 08:47
Статья не соответствует сабжу (
z-alexey; +1 Ответить
4. Сергей Ожерельев (Поручик) 18.05.09 09:29
Кстати, да. Я лично так и сделал. Дёрнул текст правил из макета, сохранил в файл, загрузил в кд. Вся операция на минуты две с перекурами.
5. Николай Железнов (koliaff) 18.05.09 09:33
Как только наберётся 10 плюсов, напишу продолжение - Как я загружал и редактировал правила. Ничего не утаю )
6. Николай Железнов (koliaff) 18.05.09 10:29
(Serj1C) Как это не соответствует ? Я здесь о чём-то другом писал? Не о том как переделать стандартные правила. Статья, вернее её первая часть рассказывает как выдернуть стандартные правила из конфигурации УТ. Если будет заинтересованность, напишу как их загрузить в КД 2.0 и что там править ... Ссылку на следующую часть размещу в этой. Это моё первое детище, не судите строго !
Способ (Sla) и (Поручик) хотелось бы вставить именно в эту статью, если они не будут против, то так и сделаю, с указанием Ников по тексту ;)
7. Николай Железнов (koliaff) 18.05.09 10:33
(Serj1C) В названии статьи добавил "(часть 1)", чтобы дать понять, что она не закончена ...
8. larissa builova (larisab) 18.05.09 10:46
За такую ерунду плюсы просишь, да еще и условия = 10? Ты напиши нормальную статью и выложи, зачем вымогательством заниматься? Ставлю минус за вымогательство (5).
9. Игорь М. (Helper) 18.05.09 10:54
Лично у меня вариант в сохранением текста из макета в файл с расширением .XML не позволил загрузить правила в КД. (1)Что значит удалить текст первой строки макета? Описанный вариант в статье - очень даже прокатил. Автору спасибо.
10. Николай Железнов (koliaff) 18.05.09 11:00
(larisab) Каждому своё, хорошо что есть обоснование минусу. Не буду говорить про продолжение статьи, т.к. оно будет в любом случае, даже без 10. Мне самому уже хочется поделиться с народом до чего я дошёл и как они это сами делают )
(Helper) Спасибо за спасибо ) Продолжение статьи будет уже завтра !
11. Сергей Ожерельев (Поручик) 18.05.09 11:02
(9) Что значит?
>>>не позволил загрузить правила в КД
В чём это выразилось? Почему у меня позволилось? Что я не так сделал?
12. Сергей Ожерельев (Поручик) 18.05.09 11:08
Ээээ, да ещё и ссылкой на меня.
>>> Весь текст без первой строки скопировать и сохранить в файл с расширением xml
Если что, первая строка в макете обработки это

<ПравилаОбмена>

Наверное, имеется в виду, если первая строка имеет вид

<?xml version="1.0" encoding="UTF-8"?>

Вот её и игнорировать.
13. Игорь М. (Helper) 18.05.09 11:34
(Поручик) Спасибо. Просвятил. А то уж было думал искать конвертер txt в xml. :-)
14. Алексей Заболотнов (z-alexey) 18.05.09 11:38
Лучше бы обработку выложил, которая она их сама вытащит и сохранит в нужный файл :)
15. Николай Железнов (koliaff) 18.05.09 11:44
(z-alexey) Я подумаю над твоим предложением ;)
16. Алексей Заболотнов (z-alexey) 18.05.09 14:32
(15) Мне-то лично особо не нужна :). Но время написания статьи и обработки сопоставими, а пользы и рейтинг от последнегго выше :)
17. Василий Зайцев (vasiliy_b) 18.05.09 14:56
Статья ниочем, Ни слова об обмене, скорее о том как достать правила обмена. И то я уж не моню откуда я занаю, что все правила обмена в таких обработках лежат в макетах самих обработок. Но точно помню, что чтобы достать их к такому способу не прибегал.
Хотелось бы действительно увидеть статью, про перенос данных...
Так что пока плюсовать не буду.
18. Николай Железнов (koliaff) 18.05.09 19:10
Это статья вступительная. Я написал её для тех, кто не знает как подступиться вообще к правилам, откуда их взять и почему не подходят стандартные правила обмена с БП 1.5 для выгрузку в БП 1.6 ... В следующей статье будет описан механизм загрузки полученных правил и основные моменты, которые надо исправить чтобы правила заработали для БП 1.6.
19. Николай Железнов (koliaff) 18.05.09 19:27
Без этой статьи целевая аудитория следющей сократилась бы в разы, т.к. многие не знают с чего начать.... А писать всё в одной тоже не видел смысла, т.к. они разные по смыслу. Эта рассказывает о самой проблеме и как получить файл правил обмена, а следующая будет только про работу с конфигурацией Конвертация Данных 2. Мне казалось, что разделение будет уместно. Здесь много людей которые не такие опытные и им эта статья не помешает.
20. Николай Железнов (koliaff) 18.05.09 21:52
По предложению z-alexey написал простенькую обработку для выгрузки стандартных правил в файл с расширением XML. )
http://infostart.ru/projects/4168/
21. Николай Железнов (koliaff) 19.05.09 03:10
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа