Имя: Пароль:
1C
1С v8
Чем чревато Движения.Записать() в подписке на ОбработкаПроведения?
0 Rounder
 
26.08.12
14:22
Это в подписке на событие ОбработкаПроведения:

Процедура НазваниеПроцедуры(Источник, Отказ, РежимПроведения) Экспорт
   Источник.Движения.Записать();
   // далее идет обработка уже с учетом движений источника
КонецПроцедуры

Т.е. на каком этапе без моего вмешательства записываются движения в регистр накопления. И если после моего вмешательства, то что происходит принимая во внимание, что движения уже записаны принудительно?
1 viktor_vv
 
26.08.12
14:36
В подписке Обработка проведения движения уже записаны без твоего вмешательства. Можешь их тут очистить и записать свои. Правда я только менял измерения уже записанных движений.
2 Rounder
 
26.08.12
14:39
(1) Не соглашусь. Когда я снимаю остатки по заявке на расходование средств при проведении например документа ЗакрытиеЗаявкиНаРасходованиеСредств остатки получаются без учета Заявки указанной в Закрытии. Но если же я сначала записываю движения - то тогда остатки снимаются уже с учетом проводимого документа.
3 viktor_vv
 
26.08.12
14:39
Там последовательность сбытий при проведении : ПередЗаписью ->> ПриЗаписи ->> Обработка проведения. Отладчиком смотрел, в ПриЗаписи документ уже записан, но движений еще нет. В ОбработкаПроведения уже есть движения.
4 kotletka
 
26.08.12
14:40
подписка на событие отрабатывается после основного кода обрабатываемого события, так что правильно сказали движения у тебя уже записаны
5 Rounder
 
26.08.12
14:43
Тогда почему ситуация (2)?
6 viktor_vv
 
26.08.12
14:43
(2) Так это в подписке или в основном модуле ?
7 Rounder
 
26.08.12
14:43
в подписке на событие ОбработкаПроведения.
8 viktor_vv
 
26.08.12
14:45
Хотя насчет того, записаны уже движения в ОбработкаПроведения в базу или только подготовлены и заполнены к записи тут вопрос. Этим не задавался. Мне только изменить их надо было.
9 Rounder
 
26.08.12
14:46
Так что делает система - если мной уже записаны движения? Просто еще раз их замещает?
10 shuhard
 
26.08.12
14:47
(8) не записаны
в памяти есть - в БД нет
причем могут жить в Движениях, а могут как в УПП вовсе в отдельной табличке
11 viktor_vv
 
26.08.12
14:49
(10) Ну вот я тоже к этому склонялся, прочитав (2).
12 Rounder
 
26.08.12
14:51
(10) Ну я за УПП и говорю. Для нужных мне документов вроде в движениях "живут".
13 mikecool
 
26.08.12
14:52
а вообще странно - кмк обычно триггеру на вход подается набор записей уже готовый, но 1С как то впереди планеты всей )
14 Rounder
 
26.08.12
14:54
Но повторю вопрос (9). Не хочется наплодить ошибок.
Пока смотря по движениям по регистру - ничего неожиданного там не обнаруживаю.
15 viktor_vv
 
26.08.12
14:57
(14) Ну вообще-то, насколько я понял в движениях обычные Наборы записей. У метода Записать(<Замещать>) параметр по умолчанию равен Истина, то есть должны замещаться.
16 Rounder
 
26.08.12
14:59
Ок. Спасибо всем принявшим участие в обсуждении.
17 viktor_vv
 
26.08.12
15:01
(15)+ Хотя там у коллекции движений свой метод Записать() без параметров, но таки должен очищать перед записью, ИМХО.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn