Настройка синхронизации подразделений для БП 3.0 и ЗУП 3.1


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

Всем доброго времени суток.

Данная обработка была сделана для заполнения регистра сведений синхронизации подразделений "Соответствия объектов информационных баз". Как-то раз при обмене рассинхронились подразделения и получился кавардак в организационной структуре, т.к. структура подразделений не простая и ручками в регистре править данные не было времени запилилась данная обработка. Обработка работает как в ЗУП, так и в БП, благо справочники подразделений похожи))) 

Релизы, на которых производилось тестирование:

Платформа: 1С:Предприятие 8.3 (8.3.10.2580)

ЗУП: 3.1 (3.1.3.224)

БП: 3.0 (3.0.52.39)

Инструкция:

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

Вот собственно все.

P.S. Я на всякий случай удалял записи регистра "Соответствия объектов информационных баз" с признаком Объект выгружен по ссылке = Истина.

28 Comments

  1. petrov_al

    В БУ, часто другое видение структуры подразделений в отличие от ЗУП где есть «штатка», иногда только иерархическое. Мы поступили немного по-другому, на стороне ЗУП выстроено соответствие подразделений БУ и ЗУП, а в правилах обмена переопределяем по этому соответствию.

    Reply
  2. grinder

    (1) Ну вот для удобного заполнения этого регистра она и была сделана, когда в штатке 80 регионов и в каждом регионе есть Администрация, бухгалтерия, кадры и т.д. регистр тыкать и заполнять GUIDы не айс…

    Reply
  3. milov.aleksey

    (2) Антон, у меня аналогичная ситуация: актуальные подразделения в ЗУП31 и БП30 одинаковые, но разная структура. В ЗУП почти линейная(узел-город и обособленные подразделения внутри). А в БП структура многоуровневая (подразделение — это ЦФУ для целей бюджетирования).

    И когда в зарплате добавляют новые подразделения при переносе свода проводок(документ Отражение зарплаты в бухучете), в БП они появляются в корне справочника.

    Будет ли новое подразделение, созданное в ЗУП «ложится» куда надо в БП, если при создании нового подразделения подписчиком заполнять регистр соответствия или эта технология только для уже существующих подразделений? И какова структура регистра сведений? Можно картинкой.

    Reply
  4. grinder

    (3)Алексей, при создании нового подразделения лучше создать подразделение в базе корреспонденте и настроить соответствие. По умолчанию может улететь к не правильному родителю. Мы вообще в правилах меняли присвоение подразделения в документе «Отражение зарплаты в бухучете». У нас тоже система похожая при бюджетировании, родители подразделений являются узлами затрат по организации в целом.

    Reply
  5. milov.aleksey

    (4) Открыл типовой РС.СоответствияОбъектовИнформационныхБаз, поставил отбор по Узлу, типу СправочникСсылка.ПодразделенияОрганизаций, ОбъектВыгруженПоСсылке = истина. Очистил. Перекрётсно заполнил в ЗУп и БП. Но мой вопрос это не решает. Это восстановление структуры.

    Сделал проще. Создал подписчик в ЗУП и БП, который отменяет создание нового подразделения при загрузке. Добавят вручную новое подразделение в обе базы, поместив в нужную иерархию. Потом перегружаем свод проводок Отражение зарплаты в бухучете. Не добавили в бухгалтерию — получили документ с битой ссылкой. Бухгалтерия не даст провести документ, пока не создашь новое подразделение. Создать можно по названию шаблона проводки(Способы учета зарплаты), т.к. у нас одноимённые. Повторить перегрузку ЗУП—>БП.

    //Защита от загрузки новых подразделений из ЗУП31.
    Процедура ттПодразделения_ПередЗаписью(Источник, Отказ) Экспорт
    
    //если новое ЦФУ(добавлено в ЗУП31) и попытка изменения загрузкой(положения в дереве справочника),
    //то отказать в записи
    Если Источник.Ссылка.Пустая() и Источник.ОбменДанными.Загрузка Тогда
    
    Возврат; //синхронизация прошла успешно, но при этом новые подразделения не создались
    //Отказ = истина;  //тогда на стороне ЗУП синхронизация пишет Прервалось и т.п.
    КонецЕсли;
    
    КонецПроцедуры

    Показать

    Reply
  6. grinder

    (5)ну у всех разные задачи, вернее результат, который хочет видеть пользователь.

    Reply
  7. pas

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

    Reply
  8. grinder

    (7)Добрый день. Никак, ручками дублировать записи в регистре сведений, можно конечно сделать список ИД источника и обрабатывать по списку, чтобы добавлять несколько к одному, но пока в это не нужно. А название подразделения видно в подборе.

    Reply
  9. milov.aleksey

    Стояла задача: перегружать свод проводок(документ Отражение зарплаты в бухучёте) из ЗУП3.1.2.462 в БП3.0.54 так, чтобы не менялась иерархия подразделений, различная в зарплате и бухгалтерии. В бухгалтерии много уровней подчинения. При перегрузке некоторые подразделения перемещаются в корень справочника.

    Решение:

    1) в бухгалтерии создал подписчик, откатывающий изменения подразделений при загрузке из зарплаты и запрещающий создавать, пока в БП подразделение не создано руками.

    Reply
  10. milov.aleksey

    2) в типовом правиле обмена изменил приоритет подразделения из ЗУП с «Выше» на «Ниже». Чтобы при разрешении конфликта синхронизации приоритет оставался за подразделением бухгалтерии. В настройках синхронизации ЗУП выгружаются три файла: правила регистрации, правила конвертации и правила обмена. Правила обмена загружаем в Конвертацию 2.1.8.2, меняем настройку. Затем загружаем архив всех файлов обратно в синхронизацию. После синхронизации ЗУП с БП загружен документ Отражение зарплаты в бухучете и подразделения не «вылезают» в корень справочника. В предупреждениях при синхронизации данных. Было: «Конфликт был разрешен автоматически в пользу программы «ЗУП».Версия в этой программе была заменена на версию из другой программы.» Стало: «Конфликт был разрешен автоматически в пользу этой программы. Версия из другой программы была заменена на версию из этой программы».

    Ну, оставил сочетание обоих решений. Если при обновлениях в бухгалтерии снесут подписчик, то сработает правило и наоборот.

    Reply
  11. grinder

    (10)Нормальное решение, я бы в расширение ваш подписчик убрал, чтобы при обновлении все норм было.

    Reply
  12. milov.aleksey

    (10) Недолюбливаю расширения. Внешнее, может отвалиться:) Что может случиться с собственным подписчиком и его обработчиком общем модуле?

    Reply
  13. grinder

    Ну на вкус и цвет, пока ничего не отваливалось))))) полгода работает все отлично.

    Reply
  14. NRGIKSparrow

    Такое ощущение что при последующих обменах процедура синхронизации вообще не заглядывает в этот регистр. Изменили GUID-приемников в ЗУПе — хоть бы хны. По прежнему грузится всё на те же подразделения.

    Reply
  15. grinder

    (14)Добрый вечер. Тут только в отладчике смотреть, попробуйте изменить настройки синхронизации, чтобы обмен был через файл и поглядите какие данные выгружаются.

    Reply
  16. NRGIKSparrow

    (15) Разобрался. У нас в организации используются самые свежие релизы ЗУП31КОРП и БП3. На этих релизах настройки по соответствию объектов необходимо делать как в базе приемнике так и в базе источнике. Например, если у меня в ЗУП31КОРП в регистре соответствия информационных объектов баз настроено, что 5 отделов выгружаются в БП3 на одно головное подразделение, то эти записи должны быть зеркально отображены в БП3 в соответствующем регистре.

    Внимание! На более ранних релизах (до августа прошлого года) алгоритм был другой — достаточно было в базе-инициаторе указать соответствие объектов и этого хватало.

    Reply
  17. allrashid

    Здравствуйте

    А в какой момент необходимо ставить соответствие?

    Reply
  18. grinder

    (17)День добрый. Ээээм, не понял, по идее перед обменом….

    Reply
  19. allrashid

    (18)при настройке обмена есть возможность устанавливать соответствия , но при синхронизации перезаписываются элементы…. вот хочу понять когда нужно заполнить РС чтобы не перезаписывались подразделения

    Reply
  20. grinder

    (19)вы в обоих базах это делали?

    Reply
  21. allrashid

    (20) настройка синхронизации с начало делается на стороне ЗУП , потом на стороне БП донастраивается. Последний шаг настройки на стороне БП и есть установка соответствия. Следующий шаг -первоначальная выгрузка. В этом момент из БП в ЗУп переносятся эти соответствия . Вроде все хорошо, но получается что перезаписываются подразделения.

    Вот нужно мне понять в какой момент установить соответствия чтобы подразделения не перезаписывались.

    И еще что значит метка «Объект выгружен по ссылкке»?

    Reply
  22. allrashid

    Решение (может кому понадобится): Создал синхронизацию: дата начала 1.1.2019, система автоматически сопоставила несколько объектов, после этого заполнил наш РС (зеркально в обоих базах), установил нужную дату начала и синхронизировал.

    Reply
  23. bnk72

    (21) Предполагаю, что вы уже решили эту загадку. Отвечаю скорее не вам, а тем, кто подобно вам и мне еще будет мучиться с синхронизацией… Если мы изменили соответствия на стороне БУХ (например, для нескольких разных подразделений приемника указали одно и то же подразделение источника) и не хотим, чтобы они приехали в ЗУП (перенос регистрируется автоматически при изменении соответствия в БУХ и затем записывается в ЗУП зеркально при обмене), то надо «Отменить регистрацию изменений» соответствующих записей Регистра сведений «Соответствия объектов информационных баз» (через Все функции/Обработки/«Регистрация изменений для обмена данными» или в форме «Настройка синхронизации данных» кнопка Еще/»Состав отправляемых данных»).

    На второй вопрос — думаю, флаг «Объект выгружен по ссылке» в изменяемых соответствиях должен быть снят, ведь вам не нужны действия по умолчанию, вы указываете конкретные ссылки.

    Reply
  24. solaru

    Соответствие настроил, создал новое подразделение в Бух, сейчас в бухгалтерии несколько подразделений, создал одно под замену, чем лучше поменять и в каких документах?

    Reply
  25. grinder

    Добрый день. Не совсем понял вопроса.

    Reply
  26. grinder

    (24) Можно в месенджеры 999@960_81_82

    Reply
  27. solaru

    (25) в «старых» документах можно поменять реквизиты обработкой

    Reply
  28. grinder

    (27)Если он это имел ввиду)))))

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *