Убрать рекурсию при записи документов. #703377


#0 by Dastes
Есть два связанных документа. При записи каждого из них переносятся данные в другой и он разумеется тоже записывается и инициирует перенос данных обратно в первый документ, и до бесконечности, что бессмысленно. Весь код в модулях объекта в "при записи". Есть ли какой то лаконичный способ убрать рекурсию без участия пользователя, как то узнать, например откуда инициализирована запись документа или что другое?
#1 by ДенисЧ
ОбменДанными.Загрузка = Истина.
#2 by ДенисЧ
А вообще - проще пристрелить автора механизма...
#3 by butterbean
убрать дебильную схему записи данных в посторонние документы
#4 by dj_serega
Установи в начале процедуры ОбменДанными.Загрузка = Истина
#5 by Господин ПЖ
проще разработчика за ноги об забор пару раз
#6 by dj_serega
оба нужно реализовать.
#7 by х86
+1 +100 можно еще в доп.свойства флаг писАть
#8 by Господин ПЖ
а кто сказал что на это будет какая-то реакция в коде?
#9 by dj_serega
Так написать реакцию.
#10 by cw014
Заноси при проведении ДополнительныеСвойства в объект, что бы определять, что именно ты кладешь в рекурсию. Потом проверяй, есть ли в этом свойство с твоим документом и пропускай его...
#11 by dj_serega
Ну да. Ошибся. Если ОбменДанными.Загрузка Тогда
#12 by ptiz
рекурсивно...
#13 by Dastes
Ахахаха)) Какие все доброжелательные Меня заказчик заставил так сделать, не получилось его переубедить отказаться от этой затеи.
#14 by х86
тогда за такую бню нужно по тройному тарифу брать чтоб потом когда уши будут гореть не обидно бы за что
#15 by Господин ПЖ
>Меня заказчик заставил так сделать спорим, что он хотел нормальные подписки на событие, меняющие статусы в связанных документах, а не
#16 by Fish
могу тебя обрадовать, бесконечных рекурсий в 1С не бывает.
#17 by Ненавижу 1С
В модуле каждого из документов создаешь в начале модуля: в конце модуля: в месте вызова записи другого документа (также для каждого модуля):
#18 by Dastes
Они формируют заказ-покупателю в строках ТЧ которого выбирается заказ-поставщику в который нужно эти строки перенести.  Сделать перенос по кнопке не захотел, нужно было именно при записи. Первое время все было отлично. Вскоре появилось необходимость откорректированные позиции из заказа-поставщику переносить обратно в заказ покупателя.
#19 by Timon1405
#20 by Ненавижу 1С
на 100500 миллионной итерации она упадет
#21 by DexterMorgan
Можно в доп свойства пихать и анализировать
#22 by cw014
Я рад, что вы меня в проигнорировали ))))
#23 by Ненавижу 1С
вот все пишут про доп. свойства, чем они лучше обычных экспортных переменных, если текст модуля все равно кромсать?
#24 by Dastes
Спасибо, взлетело.
#25 by Jonny_Khomich
я бы сделал запись изменений в модуле формы, тогда бы взлетело
#26 by Starhan
по ходу ты очень далек от программирования и занимаешь чье-то место, потому что это первое что приходит в голову после прочтения .
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С