Имя: Пароль:
1C
1С v8
Удалить из плана обмена, если этой записи уже нет в регистре накопления
0 msergein
 
04.03.14
17:22
Как программно удалить запись из плана обмена, если соответствующей записи в плане обмена уже нет?
Т.е. такой код:
НаборЗаписей = РегистрыНакопления.ВзаиморасчетыСКонтрагентами.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Использование = Истина;
НаборЗаписей.Отбор["Регистратор"].Установить(регистратор);            
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество() > 0 Тогда                        
    ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, НаборЗаписей);
КонецЕсли;            

не катит, т.к. отбор ничего не вернет
1 Maxus43
 
04.03.14
17:23
Если убери, и регистрируй на здоровье
2 Maxus43
 
04.03.14
17:24
регистрируется набор записей, а не записи в нём... хз как лучше сказать даже
3 vicof
 
04.03.14
17:24
"Как программно удалить запись из плана обмена, если соответствующей записи в плане обмена уже нет? "
Как найти черного кота в черной комнате, если его там нет?
4 MaxS
 
04.03.14
17:26
(3) Перебрать все объекты в регистрации изменений и если попадётся "черный кот", удалить
5 Maxus43
 
04.03.14
17:26
и да, зачем удалять то, чего нет? регистрация набора то точно осталась? а то непонятно что значит "если соответствующей записи в плане обмена уже нет?"
6 sda553
 
04.03.14
17:31
(0) Мне кажется, что удалять не надо. Если записи уже нет, то в другие базы об этом должна передаться инфа, что ее больше нет.
7 msergein
 
04.03.14
17:33
Ошибся в заголовке читать так: "Как программно удалить запись из плана обмена, если соответствующей записи в *Регистре Накопления* уже нет"
(1) - помогло, спасибо
2 + 2 = 3.9999999999999999999999999999999...