Каталог решений - Автоматическое обновление конфигурации периферийного узла РИБ при обмене

Автоматическое обновление конфигурации периферийного узла РИБ при обмене

Автоматическое обновление конфигурации периферийного узла РИБ при обмене

В наличии

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

Категория:

Описание

Итак, имеется РИБ «1С:Розница 1.0» на платформе 8.1, в которой на данный момент 115 периферийных узлов. 

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

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

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

Заходим в режиме предприятия в периферийный узел и:

1. Сервис -> Обмен данными -> Настройка выполнения обменов
2. Выбираем нужную настройку и в пункте меню Действие выбираем подпункт «Настройка обновления конфигурации»
3. В открывшемся окне ставим галку на «Автоматически обновлять конфигурацию при приеме сообщения от главного узла»

 

4. В текстовом поле вставляем скрипт:
[CODE]
@echo off
set v8exe=»C:\Program Files (x86)\1cv81\bin\1cv8.exe»
set DataBaseName=»D:\1C_Base\»
set DataBase=/F%DataBaseName%

REM Логин администратора системы
set AdminUser=/N»Администратор» /p «пароль» /WA-

echo Завершение работы пользователей и установка блокировки…
start «» /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /CЗавершитьРаботуПользователей /DisableStartupMessages

echo .
echo Обновляем конфигурацию информационной базы
start «» /wait %v8exe% CONFIG %DataBase% %AdminUser% /UpdateDBCfg /UCКодРазрешения

echo .
echo Разрешение работы пользователей…
start «» /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /CРазрешитьРаботуПользователей /UCКодРазрешения /DisableStartupMessages
[/CODE]
правим объявленные в скрипте переменные под свои данные.

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

Есть один момент: если пользователь начал входить в ИБ и остановился на этапе авторизации, то платформа не может заблокировать такого пользователя (он же ещё не вошёл). В итоге конфигурация обновиться не может, т.к. нет монопольного доступа к ИБ.


Данный способ у меня работает уже с 2010 года. 

has been added to your cart:
Оформление заказа