Имя: Пароль:
1C
1С v8
web сервис -> "в транзакции"
0 etc
 
29.08.13
20:14
Поясните по галочке "В транзакции" для функции web-сервиса. В книжке есть такая фраза: "... произойдет откат транзакции в зависимости от результатов выполнения.". Что является результатом выполнения вызывающим откат транзакции? Только "исключение" в коде?
1 sttt
 
29.08.13
20:31
осмелюсь предположить, изменение/вставка данных, иначе нафиг оно нужно
2 Torquader
 
30.08.13
22:34
А что ещё, кроме исключения, может произойти с кодом Web-сервиса - конечно - можно отлавливать какие-то события и самому генерить исключения.
Кроме того, режим "в транзакции" позволит избежать "наложений" при изменении данных, когда два процесса последовательно и неправильно их меняют.
3 Asmody
 
30.08.13
22:35
(0) забираешь данные без транзакции, изменяешь в транзакции. Вот и вся хитрость
4 etc
 
30.08.13
22:43
(2)(3) Ну просто то же самое можно реализовать в вызываемой функции добавив в начале НачатьТранзакцию() и в конце Зафиксировать/ОтменитьТранзакцию(). Я и подумал что раз ради такого вокнули целую галочку то есть какой-то тайный смысл.
5 sttt
 
31.08.13
22:26
(4) скорее для управляемого режима, установки разделяемых блокировок при чтении данных из базы.
6 Torquader
 
31.08.13
23:11
(4) Скорее, галочку воткнули для тех, кто не подумал вообще, что бывают какие-то транзакции - чтобы они одной галочкой возвращались в рабочий режим, а не гадали - что и за фигня у них происходит, когда два пользователя одновременно в один Web-сервис лезут.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн