Имя: Пароль:
1C
1С v8
Отказ и движения в памяти.
0 fizs
 
14.09.11
13:28
Ситуация следующая: При проведении документа взводится Отказ и проведение не происходит. Но при этом движения по некоторым регистрам в памяти остаются. И если после этого нажать на форме документа Записать или ОК, то разумеется записываются эти движения в базу. Почему, и где это словить, остаются в памяти движения если происходит Отказ проведения ? Как словить момент , где очищаются при этом движения, некоторые движения как и положено очищаются.
1 Jstunner
 
14.09.11
13:30
что за документ?
2 lxs
 
14.09.11
13:32
Почтим память с движениями минутой молчания..

Укажи платформу, конфу, объект..
3 shuhard
 
14.09.11
13:32
(1) + 1
и что за движения, т.е. что в них сидит.
может быть это не удаленные "старые" движения ?
4 guitar_player
 
14.09.11
13:32
(0) все скрыл
5 fizs
 
14.09.11
13:33
Документ Пермещение товаров в эксплуатации. Свойство Автоматически удалять не установлено. Я не думаю, что тип документа имеет какое то значение.
6 Jstunner
 
14.09.11
13:34
(5) ааааа.... Ну так это типичное поведение для нетленки..
7 lxs
 
14.09.11
13:34
(6) +100500.
8 shuhard
 
14.09.11
13:36
(5)[Свойство Автоматически удалять не установлено]
поставь для эксперимента

или данные в документе поменяй и позырь проводки
9 fizs
 
14.09.11
13:36
Ну почему одни движения при этом удаляются а другие нет. К моменту когда взводится Отказ уже есть и в памяти, и в базе есть движения не только этого регистра но и других.
10 shuhard
 
14.09.11
13:43
(9) ответ "такой код" устроит ?
если нет, то в 8.2 у документа много новых свойств появилось - ознакомься
11 lxs
 
14.09.11
13:44
(8) Обычно, если это свойство не установлено, модуль объекта лезет в процедуры общих модулей удалять движения. Но это типовые. Если у ТС самопал, то..
12 fizs
 
14.09.11
13:49
На выходе из процедуры ОбработкаПроведения все движения еще остались, и что были в памяти и что в базе. А дальше где они обрабатываются, что одни удаляются(что и правильно) , а другие остаются не могу понять.
13 Jstunner
 
14.09.11
13:50
(12) значит документ уже был проведен?
14 fizs
 
14.09.11
13:52
Документ небыл еще проведен. При проведении сперва создались одни движения, некоторые из них были сразу записаны и в базу, а потом после этого произошло взведение Отказа.
15 Jstunner
 
14.09.11
13:54
(14) зачем записывать движения вручную?
16 shuhard
 
14.09.11
13:56
(14) [некоторые из них были сразу записаны и в базу]
уже интереснее
т.е. внутри транзакции записали явно,
потом откатили транзакцию,
документ остался проведенным ?
17 fizs
 
14.09.11
13:57
ну есть такая необходимость, например когда нужно основываться на данных записанных этим же документом.
18 shuhard
 
14.09.11
13:58
(17) ты перешёл к флюду,

поставь удаление автоматом и опиши эффект
19 fizs
 
14.09.11
14:01
документ и небыл проведенным. И небыло у него изначально никаких движений. При попытке провести вывалился В Отказ. Но почему то в памяти остались при этом движения некоторых, отмечу некоторых, регистров. И естессно при нажатии кнопки Записать, те что были в памяти записались в Базу. Вот и появились у непроведенного, и который небыл проведенным никогда, документа движения. То, что у непровденного документа есть движения это норма, это я знаю. Я не могу понять почему не очищаются они из памяти, как все остальные.
20 lxs
 
14.09.11
14:02
хотелось бы взглянуть на этот быдлокод...
21 Jstunner
 
14.09.11
14:03
(19) Запись не проведенного документа не записывает движения
22 shuhard
 
14.09.11
14:04
(19) т.е. ты не будешь ставить автоматическое удаление ?
как знаешь
я слинял
23 lxs
 
14.09.11
14:04
(21) если только это не (20)
24 fizs
 
14.09.11
14:05
(21) В хотите сказать, что у непроведенного документа не может быть движений ?
25 lxs
 
14.09.11
14:10
(24) Конечно
26 lxs
 
14.09.11
14:11
В этом и суть проведения
27 Jstunner
 
14.09.11
14:11
(24) может. Но эти движения делаются не Записью документа
28 shuhard
 
14.09.11
14:11
(25) да лан,
ни как наличие движений с проведенностью не связано
29 shuhard
 
14.09.11
14:12
(27) и записью можно делать
если есть ссылка на регистратор, то полный простор фантазии
30 hhhh
 
14.09.11
14:13
(24) а точно в обработке проведения писал?
31 lxs
 
14.09.11
14:13
(29) см (26)
32 shuhard
 
14.09.11
14:14
(31) в (26) лажа
обработка проведения всего лишь удобное место для проведения, не более того
33 fizs
 
14.09.11
14:15
(25) РежимЗаписиДокумента Записать -
В этом случае будут сохранены изменения, внесенные в документ, и движения. Это не 7, где проведение и движения были синонимами.
34 hhhh
 
14.09.11
14:16
(32) но если мы запишем движения не в Обработке проведения, то получим эффект, которого и добился автор в (0).
35 lxs
 
14.09.11
14:17
(32) Хорошо, скажу иначе, они движения могут быть, но их не должно быть по логике.
36 lxs
 
14.09.11
14:18
+(35) в противном случае смысл в третьем состоянии отпадает напрочь. Документ тогда может быть либо записан, либо помечен на удаление.
37 fizs
 
14.09.11
14:20
(36) есть случаи, когда именно есть необходимость в документе с движениями, но без проведения. Там где нет необходимость использовать понятие Проведение, но есть необходимость в движениях и будет использоваться такой механизм.
38 shuhard
 
14.09.11
14:20
(35) в типовых(УПП) есть документы пишущие движения не в проведении, если этого требует бизнес-процесс

у таких документов и командную панель переделывают, пряча пиктограмку проведенности
39 lxs
 
14.09.11
14:20
(37) да на здоровье..
40 lxs
 
14.09.11
14:21
(38) я не против
41 lxs
 
14.09.11
14:21
+(40) только тогда к чему твое (22)?
42 shuhard
 
14.09.11
14:23
(40) с (26) вопрос закрыли, ОК
осталось уломать ТС поставить удаление движений автоматом, убедиться в эффекте и пообедать
43 lxs
 
14.09.11
14:23
бл.. именно))