|
v7: Начатьтранзакцию() - могут быть вложенными?
| ☑ |
0
Феофан
09.06.14
✎
10:51
|
Запамятовал..
НачатьТранзакцию()
...
НачатьТранзакцию()
...
ЗафиксироватьТранзакцию()
...
ЗафиксироватьТранзакцию()
- так работает?
|
|
1
NS
09.06.14
✎
10:52
|
нет.
|
|
2
ДенисЧ
09.06.14
✎
10:53
|
в 1с, ни в 77, ни в 8, нет вложенных транзакций
|
|
3
Феофан
09.06.14
✎
10:54
|
(1) Ок..
а тогда в локальном контексте формы открытого документа сработает СделатьНеПроведенным()?
|
|
4
NS
09.06.14
✎
10:55
|
(3) Нет.
|
|
5
Chum
09.06.14
✎
10:56
|
при возникновении ошибки текущая транзакция отменяется.
|
|
6
Феофан
09.06.14
✎
10:56
|
..как тогда отменить проведение из формы этого самого документа?
|
|
7
mikecool
09.06.14
✎
10:57
|
(6) закрыть, отменить, открыть
|
|
8
Феофан
09.06.14
✎
10:59
|
ох..
(7) ок
|
|
9
vde69
модератор
09.06.14
✎
11:22
|
(8) причина в том, что флаг ошибки транзакции глобальный (один), по этому при любой ошибке транзакции этот флаг получают все активные транзакции (явные и не явные).
по этому мы имеем сообщение "в данной транзакции уже происходили ошибки".
то есть одна ошибка обработаная любой транзакцией приводит к краху всех активных транзакций
|
|
10
NS
09.06.14
✎
12:48
|
(8) Через открытьформу() обработки, которая отменит проведение и обратно откроет документ, но скорей всего раз такое потребовалось - значит неправильно поставлена задача.
Еще способ - работа с документом не из документа, а из обработки которая имитирует форму документа.
|
|
11
VladZ
09.06.14
✎
13:00
|
(0) Хм. А к чему такой изврат?
|
|