Вход | Регистрация


1С:Предприятие ::

Метки:

РИБ и обновления

Я
   altaykniga
 
13.02.18 - 17:09
Всем привет. Планируется использование распределенных ИБ.

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

Вопрос такой: а как быть с запуском обработчиков после обновления конфигурации базы данных и первого входа в пользовательском режиме?

обновление основной конфигурации - обновление конфигурации базы данных - выполнение обработчиков обновления в пользовательском режиме

Например, было пропущено много релизов, необходимо последовательно обновить обновиться на 3 релиза. Проблем с обновлением центральной базы не возникает, а как быть с переферийными? Необходимо тоже выполнять их обновление в 3 этапа (обновить центральную базу первым релизом, обновить РИБ, обновить центральную базу вторым релизом, обновить РИБ и т.д.?)

Всем спасибо за помощь!
 
  Рекламное место пустует
   vde69
 
1 - 13.02.18 - 17:20
для узлов РИБ обновление в пользовательском режиме не нужно, все измененные данные придут из центра в уже готовом виде
   SeriyP
 
2 - 13.02.18 - 17:44
(0) В перефирийных базах есть пользователи с полными правами? Пусть они и проводят обновление: после загрузки через обмен изменений конфигурации запускают конфигуратор, нажимают кнопку Ф7, ОК и т.д. Либо удаленно к ним подключаться и все это делать.
   Tatitutu
 
3 - 13.02.18 - 18:33
Если КонфигурацияИзменена() Тогда
//закрыли 1С

//сделали бекап если нужно
//загрузили обновление

//запустили 1С
//загрузили данные из обмена

КонецЕсли;
   МимохожийОднако
 
4 - 13.02.18 - 20:06
Еще рекомендую при обновлении выключать автоматическую синхронизацию. В некоторых местах из-за медленного интернета не успевает приходить увеличенный файл обмена.
   Лефмихалыч
 
5 - 13.02.18 - 22:12
(0) если данные, которые надо обновлять, присутствуют только в ПБ и их нет в ЦБ, то надо запускать эти обработки и в ПБ тоже. В противном случае - достаточно один раз запустить в центре, а в периферийных правильные данные придут из центра и заменят собой неправильные.
   vde69
 
6 - 13.02.18 - 22:51
(5) РИБ - это 100% обмен в разрезе организаций, по этому ничего запускать не нужно
   Serg_1960
 
7 - 13.02.18 - 23:09
(1) "для узлов РИБ обновление в пользовательском режиме не нужно" - нужно. В РИБ-базах идентичны конфигурации (по определению), но данные информационных баз - могут различаться.

(6) Опять недостоверная информация :(
РИБ - это распределенная база данных, а то про что Вы сказали - это обмен данными (механизм РИБ).

Я сложно сказал, надо ли пояснить примером?
   vde69
 
8 - 13.02.18 - 23:14
(7) для РИБА не может быть расхождений данных подчинённого и главного узла
   Serg_1960
 
9 - 13.02.18 - 23:20
(8) Открой состав плана обмена - всё что не включено в состав - может иметь расхождение. Например, как наиболее характерный показатель "расхождения" в данных узлов, - префикс базы.

Стат.отчетность, как правило, не участвует в обмене (не мигрирует). Это имеет смысл, например, когда у организации есть территориально удаленные обособленные подразделения.

Соответственно, если обработка обновления изменяет эти данные - то эта обработка должна быть запущена во всех узлах РИБ.
   vde69
 
10 - 13.02.18 - 23:33
(9) у РИБ нет состава, там строго 100%


все планы обменов делятся на РИБ и "настраиваемые", ты говоришь про НЕ РИБы
 
  Рекламное место пустует
   Serg_1960
 
11 - 13.02.18 - 23:45
РИБ - это всего лишь галочка в свойствах плана обмена и ничего более. Всё остальное, присущее лишь только им - всё это реализуется механизмами платформы и в программной поддержке конфигурацией.
   altaykniga
 
12 - 14.02.18 - 09:26
прочитав ответы умных людей, так и не увидел однозначного ответа на свой вопрос. Обмен предполагается в одну сторону, т.е. периферийные базы -> Главная база.

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

Правильно?
   Cool_Profi
 
13 - 14.02.18 - 09:28
(10) Вот у меня РИБ. А некоторые РС не ходят между базами. Так что ты не прав
   Фрэнки
 
14 - 14.02.18 - 09:34
(10) 100% в РИБ - это не про Данные, а про Метаданные. Выбора, какие Метаданные включать/исключать из Обмена нет.

Но Данные - это Состав в свойствах Плана Обмена.
   SeriyP
 
15 - 14.02.18 - 09:35
(12)Вот это не стыкуется:
- "Обмен предполагается в одну сторону, т.е. периферийные базы -> Главная база"  
- "3. выполняю обмен с периферийными базами. В результате
   обмена конфигурация периферийных баз тоже обновляется"
т.к. в этом случае обмен будет ГБ -> ПБ
   Serg_1960
 
16 - 14.02.18 - 09:37
(12) В принципе правильно. Я бы рекомендовал делать взаимный обмен перед изменением конфигурации  для синхронизации данных в базах узлов. И только потом - изменение конфигурации в корневом(центральном) узле. А далее, как обычно, - вход в режим "1С:Предприятие" для выполнения обработчиков обновления. И только после этого - обмен со всеми узлами.

В типовых конфигурациях, относительно недавно, обработчики обновления стали учитывать работу в распределенных информационных базах - до разработчиков конфигураций наконец-то дошло что не все обработчики надо запускать во всех узлах.
   Фрэнки
 
17 - 14.02.18 - 09:38
(8) А как же РИБ с разделением данных(!) по Организации?
В Узлах при таком разделении "лишних" данных быть не должно.
   Serg_1960
 
18 - 14.02.18 - 09:44
(all) "Односторонний обмен" вовсе не означает отсутствие сообщений обмена от подчинённых узлов в главный узел.

Можно, конечно, как часто рекомендуют, сразу же после передачи данных очищать регистрацию изменений... но в РИБ такой номер не пройдёт - идентичность конфигураций поддерживается на уровне платформы.
   altaykniga
 
19 - 14.02.18 - 10:58
хотел уточнить еще такой момент:

а возможно реализовать односторонний обмен "периферийные базы -> ГлавнаяБаза"? Обмен необходим по организациям. Например, учет ведется в 5-ти периферийных базах, данные стекаются в главную базу. Если случайно какие-то полученные данные в главной базе были изменены, эти изменения НЕ должны попасть в периферийную базу

Думаю сделать так:
сейчас есть рабочая база, в ней одна организация. Эта база будет главной.
1. Создаю в этой базе еще несколько организаций
2. Для всех организаций (включая и эту организацию, учет по которой в базе уже ведется) создаю синхронизацию, с отбором по организации. Вопрос: А где настроить направление обмена? (вопрос в начале сообщения)
3. Создаю периферийные базы путем выгрузки базы-образа из главной базы
   Фрэнки
 
20 - 14.02.18 - 11:03
(19) про собственно План обмена забыл что-то сказать ?
Название у плана обмена есть?
   altaykniga
 
21 - 14.02.18 - 11:19
(20) по организации

написано в (19): "...создаю синхронизацию, с отбором по организации"
   Фрэнки
 
22 - 14.02.18 - 11:32
(21) ясно. Перечитал текст топика. Раз оно у вас все и так измененное, то какие тут могут быть принципиальные препятствия? Никаких.

Самое примитивное - это же в РИБ - В модуле объекта ПланОбмена есть процедуры, в которой отработают ПриОтправке данных. Надо в них различать Главный и Подчиненный.
При выборке измененных объектов в Главном узле смотреть на его тип и ставить Игнорировать. Вот как тут - это только копипаста из копипасты Serg_1960 пост 19
где посмотреть в типовых обмен с досылкой непринятых пакетов?



Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует