Имя: Пароль:
1C
1С v8
Удаление регистрации для обмена
0 orda
 
27.11.13
21:51
Удаляю регистрацию (выходят сообщения), а когда смотрю обработкой "Регистрация изменений для обмена" - регистрация остается. Обраьотик выполняется в событиях "ПриЗаписи..." и "ПередЗаписью" - разницы нет.
Изменяемый объект(Источник) - с авторегистрацией

              ВыборкаУзлов = ПланыОбмена.ОбменУправлениеТорговлейБухгалтерия.Выбрать();
              Пока ВыборкаУзлов.Следующий() Цикл
                   Если ВыборкаУзлов.Ссылка<>ПланыОбмена.ОбменУправлениеТорговлейБухгалтерия.ЭтотУзел() Тогда
                       ПланыОбмена.УдалитьРегистрациюИзменений(ВыборкаУзлов.Ссылка, Источник);

                       Сообщить("удалена регистрация для обмена для узела " + СокрЛП(ВыборкаУзлов.Наименование)+" по:"+СокрЛП(Источник));

                    КонецЕсли;
              КонецЦикла;
1 orda
 
27.11.13
22:05
Что делаю не так?
2 orda
 
27.11.13
22:07
Обращаюсь через подписку на событие (ПриЗаписи и ПередЗаписью)
3 zmaximka
 
27.11.13
22:10
может ПланыОбмена.УдалитьРегистрациюИзменений(ВыборкаУзлов.Ссылка, Источник.Ссылка);
4 orda
 
27.11.13
22:12
(3) второй параметр, по описанию, может быть как объектом так и ссылкой. Да  и заругался бы...
5 zmaximka
 
27.11.13
22:16
попробуй ссылку таки
6 orda
 
27.11.13
22:19
(5) нет, тот же результат со ссылкой получился
7 Torquader
 
27.11.13
22:25
А в таблице изменений есть запись с номером сообщения или пустая ?
Просто, если сообщение с номером было отправлено, то регистрация будет удаляться только подтверждением сообщения с этим номером - оно же уже числится отправленным.
8 orda
 
27.11.13
22:34
(7) обмен не делал ни разу. Что интересно: если этот же код выполняется во внешней обработке - регистрация удаляется
(источник выбираем принудительно, типа: Источник=Справочники.Склады.НайтиПоНаименованию("Офис_");
)
9 orda
 
27.11.13
22:38
Я уж думаю: может для таких объектов (по которым установлена аторегистрация) регистрация выполняется позже, т.е. подписка на событие "ПриЗаписи" отработает, а уж затем выполняется регистрация?
10 orda
 
27.11.13
22:40
Как из программы определить: есть регистрация для объекта по указанному узлу?
11 Fragster
 
модератор
27.11.13
22:47
Источник.ОбменДанными.Получатели.Очистить() ну и там еще автозаполнение = ложь
12 orda
 
27.11.13
22:49
(11) А где указать, для какого узла "Очистить()"
13 orda
 
27.11.13
23:05
(11) Понял. Спасибо
AdBlock убивает бесплатный контент. 1Сергей