Имя: Пароль:
1C
1С v8
Количество записей регистра Хозрасчетный
0 first_may
 
12.07.15
15:09
Добрый день.
Комплексная автоматизация, редакция 1.1.
Типовой документ ВозвратТоваровОтПокупателя.

В конце процедуры ОбработкаПроведения написал

НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(Ссылка);
НаборЗаписей.Прочитать();

В отладчике вижу, что НаборЗаписей имеет две записи. Но когда выхожу из отладчика, в предприятии уже вижу три записи.

Подскажите пожалуйста, в какой момент может появится третья запись?
1 ДенисЧ
 
12.07.15
15:11
Это тебе Бог премию послал... За хорошее поведение...
2 first_may
 
12.07.15
15:11
(1) Спасибо ему. Но мне чужого не надо.
3 Armando
 
12.07.15
15:12
В между НаборЗаписей.Прочитать() и событием ПередЗаписью набора записей
4 first_may
 
12.07.15
15:13
(1) Вообще цель, изменить проводки. Для этого я хочу старые очистить и руками создать свои.
5 first_may
 
12.07.15
15:15
(3) не совсем понял, у меня написано

    
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(Ссылка);
    НаборЗаписей.Прочитать();
КонецПроцедуры // ОбработкаПроведения()


Это в самом конце процедуры.
6 first_may
 
12.07.15
15:15
То есть в отладчике "стою" на
КонецПроцедуры// ОбработкаПроведения()

и смотрю содержимое НаборЗаписей.
7 first_may
 
12.07.15
15:19
А если написать
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(Ссылка);
    НаборЗаписей.Записать();
КонецПроцедуры // ОбработкаПроведения()

То есть очистить регистр. То после выполнения проведения в проводках остается одна запись. Получается что она создается уже после выхода из этой процедуры. А где создается - не могу найти.
8 Armando
 
12.07.15
15:20
У набора записей есть событие ПередЗаписью, обработчик которого находится в модуле набора записей или в общем модуле, если есть подписка на это событие. В этом событии тоже могут добавляться строки в набор записей.
9 first_may
 
12.07.15
15:23
(8) а как тогда можно полностью очистить записи?
10 Mankubus
 
12.07.15
15:50
(9) создай подписку перед записью набора и очисти там
11 first_may
 
12.07.15
16:17
(10) речь идет о регистре Хозрасчетный, модуль набора записей?
12 Mankubus
 
12.07.15
16:28
(11) да, о нем
13 Индиго
 
12.07.15
16:30
У когонибудь мысль возникла- А нафига?
14 first_may
 
12.07.15
16:34
(12) конечно это можно сделать, но тогда получается, что где то создается запись, а я ее здесь удаляю. Не проще будет ли отменить создание этой записи? Просто я не могу найти это место создания. Поэтому и обратился.
15 Mankubus
 
12.07.15
16:42
(14) по стеку вызовов не видно?
16 first_may
 
12.07.15
16:46
(15) в отладчике иду по шагам

    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(Ссылка);
    НаборЗаписей.Записать();
КонецПроцедуры// ОбработкаПроведения()

и после того стоя на
КонецПроцедуры// ОбработкаПроведения()

нажимаю "шагнуть в  " сразу открывается предприятие.
17 first_may
 
12.07.15
16:46
уже с одной проводкой...
18 first_may
 
12.07.15
17:00
Еще раз хочу сказать. Конфа типовая. Через поиск нашел все места, где встречается
ПланыСчетов.Хозрасчетный.ГотоваяПродукция

Поставил точки остановки. Провожу документ и ни разу не попал на точку остановки.
19 hhhh
 
12.07.15
17:03
f11 хоть шагаешь?
20 first_may
 
12.07.15
17:04
(19) конечно
21 first_may
 
12.07.15
17:05
После того, как я удалил проводки документа, в нем все равно остается одна проводка
дт 90.02.1 кт 43
22 ДенисЧ
 
12.07.15
17:05
(21) Вот так фигово удалил...
23 first_may
 
12.07.15
17:06
(22) подскажите пож, как правильно удалить?
24 ДенисЧ
 
12.07.15
17:09
(23) format c: /Y не предлагать?
25 first_may
 
12.07.15
17:12
(24) да, это не надо предлагать. а также что то типа того, что надо бросить 1с и заняться чем то другим. я честно в "тупике", не могу найти такую простую вещь. думаю это бывает почти у всех. задача на поверхности - а ищешь ее глубоко.

Подскажите пож, как после проведения документа удалить все его записи в регистре Хозрасчетный.
26 ДенисЧ
 
12.07.15
17:15
(25) Подписку на ПриПроведении() не предлагать?
Или на ПриЗаписи для регистра Хозрасчетный?
27 Индиго
 
12.07.15
17:16
(25)В отпуск тебе надо. На море:-)
28 Индиго
 
12.07.15
17:17
а то и сам себе мозг сломаешь тут и некоторым из нас удовольствие этим доставишь:-))
29 hhhh
 
12.07.15
17:19
(25) попробуй не через задницу удалять, а по-человечески

Движения.Хозрасчетный.Очистить();
Движения.Хозрасчетный.Записать();
30 first_may
 
12.07.15
17:36
(26) Подписку на ПриПроведении() не предлагать?

Создать свою подписку?
31 first_may
 
12.07.15
17:37
(27) Обязательно скажу руководству, но надо решить эту задачу :). Тогда можно будет чем то мотивировать.
32 first_may
 
12.07.15
17:45
НАШЕЛ!!!

1 в документе ВозвратТоваровОтПокупателя написал

    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(Ссылка);
    НаборЗаписей.Записать();
КонецПроцедуры // ОбработкаПроведения()


2 в подписке ПриПроведенииРасширеннаяАналитикаЗапасовИзменениеСостояния пока вставил

Процедура ПриПроведенииРасширеннаяАналитикаЗапасовИзменениеСостоянияОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт
Возврат; // +++    


Осталось вместо этого сделать свое условие и все.


СПАСИБО ВСЕМ!!!