Имя: Пароль:
1C
 
КД: как отказаться от записи нового объекта в обработчике После Загрузки?
0 Новиков
 
08.04.15
10:21
КД: 2.1.8.2

в ПКО в обработчике После загрузки устанавливаю параметр Отказ = Истина.

Из справки: Отказ - Булево - Если Истина, то объект загружен не будет.

Новые объекты в базу все равно записываются.

Подсабите, кто в курсе: все таки, как отказаться от записи нового объекта в ПКО после загрузки?

P.s.: в прошлой тебе в сабже забыл что-то название дописать :)
1 Господин ПЖ
 
08.04.15
10:28
а там уже не поздно бамбук курить?

зы собрать ссылки на "мусор" и удалить в самом конце
2 Новиков
 
08.04.15
10:31
(1) справка говорит что вроде не поздно. Перед загрузкой, кстати Отказ = Истина; тоже ничего не дает для нового объекта.

>>собрать ссылки на "мусор" и удалить в самом конце
Так ссылки уже подставлены в ПКС, откуда конвертация объекта вызвана.
3 vicof
 
08.04.15
10:33
(0) Показывай, как устанавливаешь
4 Новиков
 
08.04.15
10:34
(3) будешь смеяться, но просто

Отказ = Истина;
5 vicof
 
08.04.15
10:34
(4) Без всяких условий?
6 fisher
 
08.04.15
10:34
(1) Согласно документации - не поздно. Типа объект еще не записан и можно отказаться. На практике хрен эту КД знает. Может в каких-то случаях делает неявную предварительную запись.
У меня, например, не всегда работало "Не создавать новый объект в приемнике, если он не найден"
7 Новиков
 
08.04.15
10:46
(5) сначала с условиями, потом уже чисто для эксперимента - без. Объект все равно записывается.

(6) это на последней КД? в 2.1.7 и 8.1. была бага, если есть алгоритм поиска, то всегда происходило замещение объекта, даже если у тебя галка стоит.
8 Naumov
 
08.04.15
10:56
ИСпользуй самую последнюю обработку выгрузки/загрузки. Был баг.
9 Serg_1960
 
08.04.15
10:57
10 fisher
 
08.04.15
11:03
(7) Нет, не на последней. Давненько было. Рад, что пофиксили.
11 Serg_1960
 
08.04.15
11:07
Вместо "Отказ=Истина" НужноЗаписать :)
НужноЗаписатьОбъект = Ложь;

PS: уже не помню из какой ветки был совет.
12 Новиков
 
08.04.15
11:44
(8) Это и есть последние обработки.
(11) спасибо за инфу. В отладке натыкался на такое название переменной. Пробовал и НужноЗаписатьОбъект = Ложь; и НужноБылоЗаписатьОбъект = Ложь; - все равно не катит. Видимо, в последней КД лавку эту прикрыли.

Похоже что баг.
13 Naumov
 
08.04.15
11:52
В обработке из пакета 2.1.8 этого бага нет.
14 Новиков
 
08.04.15
11:52
(9) интересное решение, но оно частное, т.к. у чела поиск был по ссылке. Если поиск не по ссылке, тогда эта галка недоступна, и трабла имеет место быть.
15 Новиков
 
08.04.15
11:53
(13) сижу на 2.1.8.2 - этот баг есть.
16 Naumov
 
08.04.15
11:54
(15) Проверено, бага нет.

Возможно кто-то в обработчиках принудительно записывает.
17 GenAcid
 
08.04.15
11:57
Отказ = Истина в послезагрузки достаточно чтобы отказаться от сохранения объекта в 2.1.8.2 инфа 147%

А загружаешь обработкой "Универсальный обмен в формате xml" которая с конвертацией шла? Я например один раз долго тупил при загрузке из зарплаты в бухгалтерию - там стандартная обработка загузки шлет лесом правила из файла обмена и подсовывает свои из конфигурации.
18 Новиков
 
08.04.15
12:00
(16)(17) последняя КД 2.1.8.2 - все обработки оттуда. Бага почему то проявляется. Верю вам на слово, сворганю сейчас элементарнейшую конфу, проверю сам :)

А то наваждение какое-то реально. По косвенным признакам, ветка которая пруфится в (9) создана позже, чем вышла последняя КД, и если чел сидел на ней - то бага может и правда есть. А мож хитрая какая. Щас проверю.
19 Naumov
 
08.04.15
12:01
(18) Вруби отладку обработчиков и посмотри в какой момент происходит запись: до установки отказа в ПослеЗагрузки или после. Может найдешь чего.
20 Новиков
 
08.04.15
12:03
(19) да, спасибо. Сейчас попробую.
21 Новиков
 
08.04.15
12:41
Сделал тестовые простейшие базы. Повторил пример. Все воспроизводится.

На всякий случай, у кого есть желание, может сам поглядеть:
http://fihost.ru/file/259

В архиве выгрузки источника и приемника (8.2.19.116), правила обмена данными (2.1.8.2), ну и сама выгрузка с данными (данные.xml)

Суть проблемы простая: ожидается, что элемент справочника Номенклатуры в приемнике создан не будет, т.к. в ПКО после выгрузке Отказ = Истина;.

Элемент создается. Никаких других принудительных источников записи нового элемента я не создавал.
22 Naumov
 
08.04.15
12:43
(21) После выгрузки?
23 Новиков
 
08.04.15
12:58
(22) прошу прощения: в ПКО "После загрузки" Отказ = Истина;