В нашей организации сосуществуют четыре конфигурации: Бухгалтерия 2.0, УТ, ЗУП, Аренда. Некоторые из них с доработками, поэтому воспользоваться стандартными средствами обмена между типовыми конфигурациями оказалось невозможно. Правила были созданы в «Конвертации данных». И хотя обработкой «Универсальный обмен данными в формате XML» пользоваться просто и удобно, но с таким количеством конфигураций становится обременительным ежедневно выполнять монотонные действия.
Итак, правила есть, обработка, которая их запускает – тоже. Осталось найти способ запустить «Универсальный обмен …» из командной строки, по расписанию. Вот что получилось:
Это сама команда, которую записываем в cmd-файл и ставим в планировщик заданий ОС «ПускВсе программыСтандартныеСлужебныеПланировцик заданий»:
После ключа EXECUTE указываем внешнюю обработку, в которой подробно описано с какими настройками запустить на выполнение, в данном случае, «Универсальный обмен данными в формате XML», а можно и любую другую (например, групповое перепроведение).
Пример обработки:
Обработка «ИсточникТорговля.epf» без формы, код в модуле объекта.
Аналогичным образом выгружаю документы из Аренды в БП.
После всех обменов, запускаю типовую обработку «Групповое перепроведение документов». Перепровожу документы текущего, не закрытого для изменений, месяца, чтобы восстановить последовательность, нарушение которой может произойти как в результате проведения документов при обмене, так и в результате ошибок в работе пользователей. Таким образом, все описанные действия, т.е. два обмена и перепроведение, помещаем в cmd-файл, называем его, например, «Ночь» и ставим в планировщик заданий.
Командный файл Ночь:
Где Перепроведение.epf – внешняя обработка без формы, с кодом в модуле объекта:
Остается только, приходя на работу, заглянуть в протокол, в командной строке он указан после параметра «OUT».
В управляемом приложении все еще проще.
Во вложении находится обработка, которая, в качестве примера, выполняет обмен между БП3 и ЗУП3.
Откройте обработку в конфигураторе, измените на реальные такие данные как: расположение своих баз, пользователь и пароль, пути к файлам с правилами обмена и протокола. Задайте свое наименование и описание в функции "СведенияОВнешнейОбработке".
Обработка без формы, весь код в модуле объекта.
В пользовательском режиме добавьте обработку как дополнительную:
При желании можно задать расписание или запускать обмен в ручном режиме по мере необходимости.
Использованные материалы:
http://kb.mista.ru/article.php?id=340
http://kb.mista.ru/article.php?id=338
//infostart.ru/public/86109/
Интересно, но гораздо проще план обмена использовать, меньше кодить 😀
Опыта нет. Разбиралась параллельно и с тем и с этим. Данный вариант получился быстрее, но попытки настроить план обмена не оставлены.
План обмена вряд чем то может помочь….Разве что через план обмена можно отследить измененные данные и выгружать только их…
А автоматизировать обмен, чтобы не заморачиваться с планировщиком, через можно через Регламентные Задания…
(1) Полноценно и с условием «меньше кодить» можно реализовать в 8.2, точнее в конфигурациях на базе стандартных подсистем, туда можно уже правила обмена свои полноценно подгружать. В конфигурациях 8.1 и портированных с 8.1 кодить однозначно больше.
ЗЫ: Автор — молодец. Голова варит — успех в карьере обеспечен )
в 8.1 в типовых конфигурациях все уже сделано для этого, нужно только написать правила обмена, и создать два плана обмена с одинаковым именем в разных конфигурациях, ну и поставить регистрацию для объектов которые надо грузить. Механизм проверенный работает больше года в автоматическом режиме выгрузка из БП в Комплекную автоматизацию.
Разобрался с механизмом обмена который есть в типовых конфигурациях с использованием своих загруженных правил обмена…В принципе довольно не сложно, функций много, вплоть до обмена через http://ftp... Пока обнаружены следующие (в моем случае серьезные) недостатки по сравнению с использованием обработки «Универсальный обмен данными в формате XML»:
— нет возможности использования параметров даты начала выгрузки и даты конца, а также других параметров, которые есть в обработке на закладке «параметры выгрузки». Из за этого, в моем случае, прийдется серьезно переписывать существующие правила обмена, которые до этого долгое время успешно работали с помощью ручного использования этой обработки…
— нет возможности обмениваться всеми данными (т.е. отключить план обмена), обмениваются только зарегистрированные данные
Т.е. в моем случае автоматизация изложенная здесь более приемлимый вариант …
Давно искал такое. Думал уже так же5 лезть ковырять обмен. Молодца!
Настроил 3 Отмена с УТ и БСО , и один с УТ с Бух 7.7. Спасибо очень помогла ваша обработка.
Отличное решение! Спасибо, то, что надо!
Обработка авто вызовы «Универсальный обмен данными в формате XML» для бухгалтерии 3.0 управляемая форма.
Спасибо за идею, начну отлаживать обмен по данной схеме БП2.0 — ЕРП 2.0, посмотрим что получится.
Механизм обмена который есть в типовых конфигурациях с использованием своих загруженных правил обмена имеет ограничения. Например правила обмена не должно быть правилом со способом выборки «произвольный запрос», а бывает что надо! Так что описанный выше вариант вполне толковый!!!
Анна, приходилось использовать такой подход как Вы предлагаете. А вот тоже очень достойныйhttps://infostart.ru/public/151693/ . Только я вызываю в правиле сразу «УниверсальныйОбменДаннымиXML», т.е. без вызова промежуточной внешней обработки.
Это был самый первый опыт общения с 1с, еще на платформе 8.1
Сейчас уже можно сделать все иначе.
Планировщиков ОС не нужно, дополнительные обработки сами запускаются по расписанию.
Уже давно для обменов пишу доп. обработки без формы, с кодом в модуле объекта, и подключаю к конфигурации в пользовательском режиме с настройкой расписания.
С момента публикации прошло уже семь лет. Как время бежит!
(15) Добрый день, Анна.
При попытке открыть эту обработку из БП (3.0.64.54), открывается пустая форма и ничего не происходит. В чем может быть причина?
_
(16) В том, что это не управляемая форма.
Обработку надо оформить как дополнительную, и запускать ее по расписанию внутри конфигурации. Планировщик операционной системы уже не нужен. С 2011 года, когда была написана эта статья, многое изменилось.
Попробуете?
Если нужна помощь, спрашивайте.
(13)
С какого перепугу не должно быть ?
С БСП обменивайся не хочу…так как там уже в конфигурации есть обработка по типу универсального обмена, с доработками