Имя: Пароль:
1C
1С v8
Не пишет в регистр накопления
, ,
0 Aradel3d
 
27.01.15
12:15
Добрый день!
Делаю запись в регистр накопления по подписке на событие при проведении:

[Запрос]

Движения = РегистрыНакопления.Регистр.СоздатьНаборЗаписей();
            Движения.Отбор.Регистратор.Установить(Источник.Ссылка);
Движения.Записывать = Истина;
Движения.Очистить();

[Перебор результата запроса]
Движение = Движения.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
[Измерения/Ресурсы]
[Конец перебора]
Движения.Записать();
Ошибок при выполнении не возникает. В отладчике данные появляются, а на выходе из подписки данных нет. Я уже сталкивался с такой проблемой, но помню решал каким-то шаманством, хотелось бы понять в чем проблема. За ссылку на синтаксис помощник тоже не обижусь.
1 Defender aka LINN
 
27.01.15
12:17
(0) Потому что после подписок записывается "Источник.Движения.ИмяРегистра"
2 Aradel3d
 
27.01.15
12:18
(1) Значит надо править сам модуль документа?
3 azt-yur
 
27.01.15
12:18
Попробуйте определить Движения как:
Движения = Источник.Движения.Регистр
4 H A D G E H O G s
 
27.01.15
12:18
Убрать:
Движения.Записывать = Истина;
5 Aradel3d
 
27.01.15
12:24
(4) Это не помогло.
6 Aradel3d
 
27.01.15
12:25
(3) А это помогло, но нужно убрать СоздатьНаборЗаписей() т.к. там такого метода нет. Спасибо за идею!
7 CTmuB
 
27.01.15
12:30
(6) и добавить "Прочитать" а то не понятно что очищаете
8 H A D G E H O G s
 
27.01.15
12:32
Вот эти перцы! (7)
9 Aradel3d
 
27.01.15
12:33
(7) Спасибо
10 Жан Пердежон
 
27.01.15
12:33
(7) не надо
11 Aradel3d
 
27.01.15
12:38
(7) Не, погодите. Я как понимаю очистить тут нужен для той ситуации, когда человек несколько раз будет нажимать на кнопку провести, чтоб не задваивались данные в движениях. А читать непосредственно регистр нам не надо т.к. отбор по нашему регистратору и все, что было до того в регистре уничтожится само собой и по верху наши движения будут записаны.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс