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

Вопрос по регистрации изменений в плане видов обмена

Вопрос по регистрации изменений в плане видов обмена
Я
   lanc2233
 
28.03.21 - 09:42
Встретил код. Задача : помещать в план видов обмена, номенклатуру, по которой изменяются записи в некотором регистре сведений.

В регистре в перед записью формируется массив номенклатуры
Товары = Новый Массив;
Для Каждого ТекЗапись Из ЭтотОбъект Цикл
    Если Товары.Найти(ТекЗапись.Номенклатура) = Неопределено Тогда
        Товары.Добавить(ТекЗапись.Номенклатура);
    КонецЕсли;    
КонецЦикла;
И массив узлов куда должна идти регистрация.

Далее
ДополнительныеСвойства.Вставить("Товары",Товары);
ДополнительныеСвойства.Вставить("Узлы",Узлы);

В ПриЗаписи цикл по этим товарам, с регистрацией
ПланыОбмена.ЗарегистрироватьИзменения(Узлы,ТекТовар);

Почему так сделано: код в двух событиях с передачей массивов, а не просто сделать то-же самое в ПриЗаписи ?
   Ёпрст
 
1 - 28.03.21 - 09:51
(0) до призаписи может и не дойти, если ьыл отказ
   asady
 
2 - 28.03.21 - 15:47
(0) я думаю это затем чтобы не делать лишний запрос к базе - ведь при записи данные уже записаны в базу.
   acht
 
3 - 28.03.21 - 16:29
(0) Ты так спрашиваешь, как будто мы этот код писали.

Ответ очевиден - а хрен его знает. Очевидно, есть/были какие-то причины, начиная от неизвестных нам требований архитектуры до поддежки легаси и банального разгильдяйства и отсутствия рефакторинга. Гадать по тому кусочку информации, который ты принес, занятие бесполезное. Ты ж даже не указал - это в одном модуле или в разных подписках. Есть там обработка ОбменДанными = Истина или нет. И т. д. и т. п.

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