Skip to content

Latest commit

 

History

History
46 lines (37 loc) · 1.81 KB

ПопыткаТранзакция.md

File metadata and controls

46 lines (37 loc) · 1.81 KB

Конструкции: попытка, транзакция

Попытка, запись журнала регистрации

&НаСервере
Процедура ВыполнитьОперациюНаСервере()
	Попытка
		// код, приводящий к вызову исключения
	Исключение
		// Запись события в журнал регистрации для системного администратора.
		ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'"), УровеньЖурналаРегистрации.Ошибка,,,
		ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
		ВызватьИсключение;
	КонецПопытки;
КонецПроцедуры

&НаКлиенте
Процедура ВыполнитьОперацию()
	Попытка
		ВыполнитьОперациюНаСервере();
	Исключение
		ТекстСообщения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
		ПоказатьПредупреждение(,НСтр("ru = 'Операция не может быть выполнена по причине:'") + Символы.ПС + ТекстСообщения);
	КонецПопытки;
КонецПроцедуры

Транзакция

НачатьТранзакцию();
Попытка
    // Делаем что-то.
    ЗафиксироватьТранзакцию();
Исключение
    Если ТранзакцияАктивна() Тогда
        ОтменитьТранзакцию();
    КонецЕсли;
    ВызватьИсключение;
КонецПопытки;