Имя: Пароль:
1C
1С v8
откуда запускается процедура зачистки регистра сведений
0 Woolf
 
07.11.12
23:25
Доброго всем времени суток! Просьба, если кто сталкивался, подсказать куда копать. Суть проблемы: в "бухгалтерии (2 редакция)" создан дополнительный регистр сведений "ЗаявкиОплаченные" (зависимый, периодический) . Регистратором является документ ПоступлениеНаРассчетныйСчет. Однако, в результате проведения документа, в регистре пусто... В модуле набора записей регистра отладчик дважды останавливается на процедурах записи... Из чего делаю вывод, что после проведения документа, запускается чего-то "зачищающее" регистр... Как отловить сию процедуру?
1 Азат
 
07.11.12
23:26
подписки на события посмотри
2 Нуф-Нуф
 
07.11.12
23:34
Отладчик и стек вызовов спасут
3 GenV
 
07.11.12
23:42
ОбщегоНазначения.РучнаяКорректировкаОбработкаПроведения(РучнаяКорректировка,Отказ,Заголовок,ЭтотОбъект)
4 Naumov
 
07.11.12
23:53
поставь брейк-пойнт в модуле набора записей регистра.
5 Woolf
 
09.11.12
22:11
два дня воюю с этим делом... безрезультатно...
(3) - не та процедура.
(4) - чего даст точка останова в модуле набора записей? ведь там, насколько мне известно, только две процедуры : "ПередЗаписью" и "ПриЗаписи"
6 shuhard
 
09.11.12
22:29
(5) не хочешь смотреть стэк - запусти анализ производительности

еботни больше, но успех гарантирован =)
7 Бешеная Нога
 
09.11.12
23:10
Как пишешь движения в регистр?
8 Woolf
 
09.11.12
23:25
НаборЗаписеЙ  = РегистрыСведений.ЗаявкиОплаченные.СоздатьНаборЗаписей();
   
   НаборЗаписеЙ.Отбор.Регистратор.Установить(ДокПоступлениеНаРС);
   
   НаборЗаписеЙ.Отбор.Регистратор.Использование = Истина;
       
   НоваяЗапись       = НаборЗаписеЙ.Добавить();
   НоваяЗапись.Счет  = ОплаченныйСчет;
   
   НоваяЗапись.ОплаченоСумма             = ДокПоступлениеНаРС.СуммаДокумента;
   
   НоваяЗапись.Регистратор               = ДокПоступлениеНаРС;
   НоваяЗапись.Период                    = ДокПоступлениеНаРС.Дата;
   
   НаборЗаписеЙ.Записывать               = Истина;
   
   НаборЗаписеЙ.Записать();
9 Бешеная Нога
 
09.11.12
23:29
(8) откуда такое пишешь?
10 Magic Dick
 
09.11.12
23:30
мдя
11 Woolf
 
09.11.12
23:31
(9) - Из общего модуля. Соответственно, процедура запускается из "ОбработкаПроведения"
12 GenV
 
10.11.12
00:36
(11) А через "Движения" заполнять не пробовал? )
13 hhhh
 
10.11.12
00:50
(11) наверно в ДокПоступлениеНаРС бред какой нибудь. Может объект документа передаете.
14 Woolf
 
10.11.12
13:08
(12) - а в чем разница?  Запись то дважды срабатывает...
(13) - на самом деле в процедуре ОбработкаПроведения имеется "зачистка" движений, выполненных данным документом, но она раньше моего кода запускается...
"Может объект документа передаете" :нет, ссылка
15 Naumov
 
10.11.12
13:13
(5) ТОчка останова даст возможность стек вызовов посмотреть и увидеть откуда инициирована запись в регистр.
16 hhhh
 
10.11.12
13:14
(14) может такая ситуация: есть Движения, а есть ваш НаборЗаписей. Движения записываются автоматом в конце обработки проведения и затирают вашу запись.
17 Woolf
 
10.11.12
13:18
(16) - сейчас попробую через Движения...
18 Woolf
 
10.11.12
13:21
(15) - так в модуле набора записей только две процедуры: ПередЗаписью() и ПриЗаписи()... Ставлю стоп в процедуре "ПередЗаписью"... Единственно, чем стоп помогает в данной ситуации, что он показывает двойной запуск процедуры записи
19 Woolf
 
10.11.12
13:22
+18 Или я чего то не догоняю, и есть какие-то еще события в модуле набора записей?
20 hhhh
 
10.11.12
13:40
(18) ну этотОбъект смотрели? Чего там? И отбор? Там кучу всего можно посмотреть. Чем помогает стоп.
21 Woolf
 
10.11.12
13:49
(20) - спасибо большое, ответ в (16) "в десятку"... не знал такой неприятной особенности при проведении )))
22 Woolf
 
10.11.12
13:51
Третьи сутки "отлавливаю" вредительский код, а тут, оказывается, всё "тоньше")))
23 Woolf
 
10.11.12
13:52
(15) "Карадагский Дельфинарий " это где, если не секрет?