Есть такая у меня задачка: Сделать обмен между главной базой и узлом (все базы - серверные), которые находятся в одной сети. Хочу сделать фоновое задание в главной базе которое будет по com соединяться с узлом.
Алогритм
1) Выгружать данные из главной
2) Загружать данные в узел
3) Если нужно обновить конфигурацию в узле
4) Но чтобы обновить конфигурацию нужно выкинуть ВСЕХ пользователей из узла
5) Опять загружаем данные в узел (если было обновление)
6) Выгружаем данные из узла
7) Загружаем данные в главную базу
-----
Все есть, но получается фигня когда пытаюсь выкинуть всех пользователей. Пользователей выгоняю из узла, но код запускается в главной базе (а как по-другому? сам себя не выкинешь из узла). И вот самое интересное(!!!): при отключении COM-соединения, которое было создано на этапе п.2 меня выкидывает из соединения главной базы! Но я не главную базу отключаю, а узел! Не получается также сделать COM-соединение = Неопределено. Оно отключается только когда завершится код процедуры. Если не отключать COM-соединение, то база не обновится конфигуратором (ну разве что динамически).
rem Разрешение работы пользователей
start "" /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /CРазрешитьРаботуПользователей /UCПакетноеОбновлениеКонфигурацииИБ /DisableStartupMessages
rem Запуск самой программы
start "" %v8exe% ENTERPRISE %DataBase% %User% /DisableStartupMessages.
Там, кстати, ОтключитьСоединенияИБ вместе с ПолучитьАктивныеСоединенияИБ - не работают. Работают только если несколько рабочих процессов, а не один.
Есть еще какие-то варианты? Все таки мне кажется это глюк платформы, ну не должно так быть
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.