|
Два раза записывает проводки | ☑ | ||
---|---|---|---|---|
0
Мэс33
18.10.13
✎
08:55
|
Добрый день, други, с пятницей.
Есть подписка на событие "ПриЗаписи" в РегистрБухгалтерии. Он почему то срабатывает два раза при проведении документа. Куда копать, подскажите. |
|||
1
butterbean
18.10.13
✎
08:59
|
при удалении старого и при записи нового набора
|
|||
2
Defender aka LINN
18.10.13
✎
09:13
|
(0) Научиться жить с этим
|
|||
3
Мэс33
18.10.13
✎
09:15
|
:-)
У меня задача - поймать событие "ПриПроведении" через подписку, чтобы при наличии в наборе определенной проводки - совершить некое действо. А он тут, сволЫшь, дважды действо производит. |
|||
4
Мэс33
18.10.13
✎
09:17
|
(1) а если документ новый? Набора старого ведь нет.
|
|||
5
Defender aka LINN
18.10.13
✎
09:21
|
(4) А регистр откуда об этом знает?
(3) У регистра нет такого события, есличо |
|||
6
Мэс33
18.10.13
✎
09:25
|
(5) Я имел ввиду, перехватить событие "ПриПроведении" у каждого документа.
Так как жить с этим? Чтобы мое "действо" сработало один раз, а не два раза? |
|||
7
Defender aka LINN
18.10.13
✎
09:27
|
(6) Как хочешь, так и живи. Платформа записывает набор 2 раза, это объективная реальность, которую ни нытье на форуме, ни удары головой в стену, ни алкоголь в любых количествах не изменят. Поэтому хватит тут вопрошать, как ее изменить и начинай приспосабливаться.
|
|||
8
Мэс33
18.10.13
✎
09:29
|
(7) Ох, вопрос-то в том и состоит теперь - как приспосабливаться? :-)
|
|||
9
Defender aka LINN
18.10.13
✎
09:31
|
(8) Удаление набора - это запись пустого.
|
|||
10
Мэс33
18.10.13
✎
09:36
|
Вот я смотрю процедуру:
Процедура ПриЗаписиВРегистрБухгалтерииПриЗаписи(Источник, Отказ, РежимЗаписи) Экспорт Получаю набор записей в процедуре: мТаблицаНабора = Источник.Выгрузить(); Ставлю внутри процедуры точку останова. И попадаю на нее ТРИ раза при перепроведении: в 1 раз - набор пустой потом два раза - набор с данными. |
|||
11
Мэс33
18.10.13
✎
09:39
|
Если просто провожу непроведенный документ - то попадаю два раза в эту процедуру и набор не пустой.
|
|||
12
Defender aka LINN
18.10.13
✎
09:39
|
(10) само собой.
1 - удаление старых движений 2 - запись новых |
|||
13
Defender aka LINN
18.10.13
✎
09:40
|
(11) Значит, в обработке проведения движения принудительно записываются.
|
|||
14
Мэс33
18.10.13
✎
09:45
|
(13) Вы про это?
ПроводкиБУ.Записать(); |
|||
15
Мэс33
18.10.13
✎
09:47
|
Угу, в нем и была причина.
Все, разобрался. Окей. |
|||
16
Мэс33
18.10.13
✎
09:48
|
Спасибо.
|
|||
17
hhhh
18.10.13
✎
09:48
|
(14) да. Они уже записываются автоматом в конце трензакции. И вы еще записываете Записать(); 2 раза записываются.
|
|||
18
Мэс33
18.10.13
✎
09:52
|
(17) Это я оптимизирую не свои документы. Поэтому нахожу такие ляпы.
|
|||
19
Мэс33
18.10.13
✎
09:54
|
Хотя из меня тот еще оптимизатор. С другой стороны - скорость проведения я увеличил на 50%
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |