gifts2017

Обработка ручного одностороннего переноса документов из УТ 10.2 в БП 2.0 через Com-соединение без использования правил обмена

Опубликовал mxm2 mxm2 (mxm2) в раздел Обработки - Обработка документов

Обработка переносит документы вида: "Реализация товаров и услуг", "Возврат товаров от покупателя", "Счет-фактура выданный", "Счет-фактура полученный", "Поступление товаров и услуг", "Возврат товаров поставщику", "Платежное поручение входящее", "Платежное поручение исходящее", "Приходный кассовый ордер", "Расходный кассовый ордер" за указанный период из УТ в БП, попутно "тащит", зависимые справочники. Синхронизация объектов может производиться по внутреннему идентификатору (возможно по коду, Наименованию, или любому другому реквизиту шапки), соответствие объектов сохраняется в стандартном регистре сведений базы данных БП 2.0 "СоответствиеОбъектовДляОбмена". Список документов может быть легко дополнен другими видами документов. Умеет отдельно переносить справочники. Имеет гибкие настройки.

Обработка запускается на стороне БП2.0 и подключается к УТ, и в общих словах действует так:

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

 Настройка обработки:

Настройка

Здесь настраиваются "Параметры подключения к УБ" (имеется ввиду база УТ),

"Параметры загрузки в приёмник", по типу(виду) объектов, назначения колонок настройки:

Тип, Вид - понятно.

Не Искать по ИД - при загрузке не производить предварительный поиск объекта по идентификатору через регистр сведений "СоответствиеОбъектовДляОбмена"

Добавлять, если не существует- понятно,

Переписывать, если существует - понятно,

Значение по умолчанию - использовать данное значение реквизита указанного типа, если оно не загружено и не найдено в базе приёмнике

Использовать значение по умолчанию даже если объект существует - понятно,

Поиск По - если не найден по идентификатору, то искать по данным полям (содержит строку, например "ИНН,КПП,ЭтоГруппа,")

Поиск По1 - Если не найден по ИД, и по ПоискПо, то искать по данным полям

Доп. Параметр - пока используется только в Реализации товаров и услуг, и позволяет настраивать поведение при загрузке.

"Параметры загрузки из источника" - список организаций, по которым осуществляется перенос.


Собственно перенос документов:

Док

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

Далее нужно отметить те документы, которые хочется загрузить, и нажать "Перенос данных": документы перенесутся в приёмник (процесс переноса можно прервать). Внизу, полосой прогресса отображается процент загруженных документов.


Аналогично осуществляется перенос элементов справочников:

Спр

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

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

По сравнению с автоматическим обменом имеет ряд преимуществ:

- полный контроль над загружаемыми объектами

- рекурсивная загрузка зависимых объектов

- наглядность исполнения обмена

- наглядность и гибкость настроек загрузки и синхронизации

- простота программирования и отладки при самостоятельной доработке.

Ну и недостатки, куда же без них Smile:

- требуется участие пользователя, для осуществления обмена

- нет возможности использования правил регистрации изменения объектов

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
ПереносДокументовИзУТ102ВБП20
.epf 47,70Kb
27.03.13
221
.epf 47,70Kb 221 Скачать

См. также

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

Комментарии

1. Виктор Новожилов (compil7) 23.11.12 20:05
За обработку и идею спасибо. Буду изучать, когда скачаю.
2. Иван Титов (Ibrogim) 26.11.12 13:52
А на пару месяцев раньше нельзя было сделать? Ищу ищу... ничего нету, только напишу, вы выкладываете аналог ) (это уже не первый раз)
Правда я сделал через КД, о чём немного жалею. За долгие годы эпизодической работы с КД (причём временами достаточно тяжёлые обмены), она так и не стала для меня родной. После очередной НЕХ думаю : Плюнуть на всё и переписать через ОЛЕ, и вот теперь то уже точно видимо возьмёт верх на до мной ОЛЕНь (раз есть от вас подспорье)
UPD... Думал для УТ11. Видимо ослеп.
3. mxm2 mxm2 (mxm2) 26.11.12 15:49
(2) Ibrogim, все же чаще использую автообмены через КД с правилами обмена, но вот было специфическое требование заказчика, и оказалось намного проще (не в смысле быстрее, т.к. КД - в основном приходится изменять готовые правила, а в смысле понятийном) т.е. все понятно откуда и что берется, проще отлаживать, и если, что, проще изменять... КД - это всетаки лишняя абстракция, пусть и суперуниверсальная...
4. Евгений Фербер (omut) 28.11.12 17:32
А чем не устраивает использование правил обмена? В том числе и готовых?
5. mxm2 mxm2 (mxm2) 28.11.12 17:50
(4) omut, таки в конце статьи расписаны плюсы-минусы данного подхода.
6. Stas Bobkov (stas1kbob) 25.04.13 12:43
К файловой не подключается? Или как правильно подключать?
7. mxm2 mxm2 (mxm2) 25.04.13 13:06
(6) stas1kbob, к файловой подключается копированием пути из маленького начального окошка выбора базы,
например так File="F:\Базы\БП20"; вставить путь следует полностью со сторокой "File="
8. Stas Bobkov (stas1kbob) 25.04.13 13:55
спасибо, подключилось. теперь просит сконвертировать базу 8.0
9. mxm2 mxm2 (mxm2) 25.04.13 14:20
(8) stas1kbob, это не проблема, в модуле объекта в строке 133 достаточно изменить строку

Коннект = Новый COMОбъект("V82.COMConnector");

на

Коннект = Новый COMОбъект("V81.COMConnector");

или

Коннект = Новый COMОбъект("V8.COMConnector");

Должно сработать без конвертации.
10. Petr (sevipa) 29.10.13 01:06
Согласен со вторым автором, почему не месяцем раньше...
11. Petr (sevipa) 29.10.13 01:39
выдает ошибку {ВнешняяОбработка.ПереносДокументовИзУТВБП20.МодульОбъекта(574)}: Поле объекта не обнаружено (КонтактныеЛицаКонтрагентов)
прошу сильно не пинать , я не программист
12. Petr (sevipa) 29.10.13 01:39
при синхронизации справочника Контрагенты
13. Petr (sevipa) 29.10.13 01:43
Хотя вполне возможно это ошибка из-за необновленной базы УТ (переписана и не обновлялась уже год
14. Petr (sevipa) 29.10.13 02:12
Синхронизация Номенклатуры сработала странно, были помечены на удаление элементы с кодами меньшей длины чем в базе источнике, причем даже если они не были найдены... документы не переносятся, программа выдает ошибку... Можно уточнить номера релизов на которых тестировалась обработка? Спасибо заранее
15. Светлана Сетебова (VetaSent) 12.12.13 06:57
Здравствуйте, подскажите плиз, данная обработка будет работать если УТ дописана и уже год не обновлялась?
16. mxm2 mxm2 (mxm2) 12.12.13 07:59
(15) VetaSent, Гарантировать не могу. Но вроде были люди использующие её на УТ10.3, хотя изначально она написана под УТ10.2, которая официально не поддерживается с лета 2007-го года. По адаптации к платформе обратите внимание на комментарий №9.

Обработка ТОЧНО не будет работать в УТ11, т.к. там совсем другие названия объектов метаданных документов.
17. mxm2 mxm2 (mxm2) 12.12.13 08:04
(14) sevipa, 10.2.12.2 сильно измененая, но вроде, обработка не затрагивает этих изменений.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа