Pull to refresh
1
0
Артем @Laz_Artem

Разработчик

Send message
Зачем такие геморойства со службой? Поставь ещё один СП на этой же машине (на других портах), т.к. новый СП будет на этой же машине проблем с лицензией не будет
Не нужно приводить всякого рода выдержки из документации, просто проверьте. Смысл не в том какое определение дано восстановимому или не восстановимому исключению, смысл в том как это все работает. И основной посыл EvilBeaver (как мне кажется) был в том, что бы обратить на это внимание и возможно научить кого-то. А вы тут про терминологию.
nixel, o4karek

Невосстановимая ошибка не ловится

не правда, у вас не верное понимание что есть восстановимая, а что нет.

Берем для примера такой код
	НачатьТранзакцию();
	
	ЗаписатьВБазу();
	Попытка
		а = 1 /0;
	Исключение
	КонецПопытки;
	
	ПрочитатьИзБазы();
	
	ЗафиксироватьТранзакцию();


это есть восстановимое исключение т.к. ничего страшного не произойдет в этом случаи.
Теперь меняем код на такой:
	НачатьТранзакцию();
	
	Попытка
		ЗаписатьВБазу();
        Исключение
	КонецПопытки;
	
	ПрочитатьИзБазы();

	ЗафиксироватьТранзакцию();


в модуль объекта при записи мы переносим эту строку
а = 1 /0;
Вот теперь при попытки прочитать из базы мы получим ту самую ошибку «В данной транзакции уже происходили ошибки»
Вот это и есть невосстановимая ошибка!

А вот если мы перенесем это в событие при записи
Попытка
а = 1 /0;
Исключение
КонецПопытки;

ошибки «В данной транзакции уже происходили ошибки» не произойдет. Так что понятие «восстановимое/не восстановимое исключение» это довольно таки тонкая грань которую нельзя формализировать.
НачатьТранзакцию();
Попытка

ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Автор не упомянул, что только после не восстановимого исключения мы можем получить ошибку «В данной транзакции уже происходили ошибки»
(https://its.1c.ru/db/content/metod8dev/src/developers/platform/metod/other/i8102313.htm?_=1533744348)

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity