Поясните по галочке "В транзакции" для функции web-сервиса. В книжке есть такая фраза: "... произойдет откат транзакции в зависимости от результатов выполнения.". Что является результатом выполнения вызывающим откат транзакции? Только "исключение" в коде?
А что ещё, кроме исключения, может произойти с кодом Web-сервиса - конечно - можно отлавливать какие-то события и самому генерить исключения.
Кроме того, режим "в транзакции" позволит избежать "наложений" при изменении данных, когда два процесса последовательно и неправильно их меняют.
(2)(3) Ну просто то же самое можно реализовать в вызываемой функции добавив в начале НачатьТранзакцию() и в конце Зафиксировать/ОтменитьТранзакцию(). Я и подумал что раз ради такого вокнули целую галочку то есть какой-то тайный смысл.
(4) Скорее, галочку воткнули для тех, кто не подумал вообще, что бывают какие-то транзакции - чтобы они одной галочкой возвращались в рабочий режим, а не гадали - что и за фигня у них происходит, когда два пользователя одновременно в один Web-сервис лезут.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн