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

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

Метки: 

Как проще всего запретить регистрацию изменений в подчиненном узле плана обмена?

Я
   toypaul
 
16.03.18 - 13:49
Есть план обмена с авторегистрацией всех объектов. Есть главный (рабочая база) и подчиненный узлы (копия для отчетов).

Как проще всего запретить регистрацию изменений в подчиненном узле? Ведь из подчиненного узла тоже нужно делать выгрузку пакета, чтобы в рабочей не копились изменения?

Хочется чтобы это было максимально просто (мимнимум кода) и автоматически - чтобы срабатывало при выгрузке само собой без запуска всяких доп. обработок.

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

Есть еще у плана обмена событие ПриОтправкеДанныхГлавному. Как я понял можно в нем очищать. Только не совсем понял как это работает и будет ли тормозить.
 
 
   toypaul
 
1 - 16.03.18 - 13:51
Может есть еще какая-то подписка, чтобы в ней отключить регистрацию изменений? Авторегистрацию отменять не хочется.
   Рэйв
 
2 - 16.03.18 - 13:54
(0)У меня односторонний обмен. Чтобы не заморачиваться перед началом выгрузки ответа я просто очищаю все изменения и уходит пустое подверждение.
   Рэйв
 
3 - 16.03.18 - 13:55
а пооббъектно следить очень уж геморно.Да и помнить приходится при добавлении новых сущностей.
   toypaul
 
4 - 16.03.18 - 13:59
(2) "Чтобы не заморачиваться перед началом выгрузки ответа я просто очищаю все изменения и уходит пустое подверждение."

как? через УдалитьРегистрациюИзменений? долго удаляет? руками делаешь или автоматом?
   Рэйв
 
5 - 16.03.18 - 14:02
через УдалитьРегистрациюИзменений перед каждым запуском выгрузки ответа. Вполне себе шустро. Не за секунду конечно, но и за минуту примерно чистит
   Рэйв
 
6 - 16.03.18 - 14:03
и то это когда большой объем накопился, а так- секунд 15 и все.
   Serg_1960
 
7 - 16.03.18 - 14:03
Рекомендую: всё сделать с точностью до наоборот: из подчинённых узлов поступают все(!) изменения в центральный узел, где они отвергаются(!) и регистрируют изменение объектов, измененных в подчинённых узлах. Ок?
Спросите "Зачем всё так сложно?" - отвечу "Сами же сказали что это копии для отчетов".
   toypaul
 
8 - 16.03.18 - 14:06
(7) ничо не понял. зачем мне из отчетной базы принимать, когда даже по ее смыслу эти изменения ошибочны
   toypaul
 
9 - 16.03.18 - 14:07
(5) так руками или как? тут все автоматы делают. людей на заставишь.
   Serg_1960
 
10 - 16.03.18 - 14:10
(8) Не тормози :) Если в в базе-копии для отчетов изменяют объекты, то копия перестаёт соответствовать базе-оригиналу и требуется восстановить измененный объект до состояния оригинала.
 
  Рекламное место пустует
   Рэйв
 
11 - 16.03.18 - 14:11
(9)Какими руками? Код УдалитьРегистрациюИзменений  срабатывает
при каждом запуске ответа. Тут уже зависит как у тебя выргузка запускается вручную или автоматом
   toypaul
 
12 - 16.03.18 - 14:19
(11) выгрузка автоматом. где вызвать УдалитьРегистрациюИзменений  в этом случае?
   toypaul
 
13 - 16.03.18 - 14:19
(10) узбагойся. ничо не требуется.
   Serg_1960
 
14 - 16.03.18 - 14:32
Хозяин - барин :)
В ПриОтправкеДанныхГлавному() впиши строку "ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить;"
   Serg_1960
 
15 - 16.03.18 - 14:44
А что так? Никто мою шутку не оценил? Я думал меня сейчас тапками закидают... "Ну вы, блин, даёте"(с)
   toypaul
 
16 - 16.03.18 - 14:46
(15) на дурацкие шутки зачем реагировать?
   Serg_1960
 
17 - 16.03.18 - 14:50
Ок.
ТС, погугли в своей конфигурации "ОтправкаЭлементаДанных.Игнорировать" - найдёшь примеры как надо игнорирования выгрузку/загрузку данных. Пример из УПП (где справочнику регламентированной отчетности запрещается мигрировать между узлами):

Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента)
    
    Если ТипЗнч(ЭлементДанных) = мТипСправочникРегОтчеты Тогда
        
        ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
        
    КонецЕсли;
    
КонецПроцедуры

мТипСправочникРегОтчеты = Тип("СправочникОбъект.РегламентированныеОтчеты");
   toypaul
 
18 - 16.03.18 - 14:52
(17) угу


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