bslls:PairingBrokenTransaction¶
Нарушение парности использования методов "НачатьТранзакцию()" и "ЗафиксироватьТранзакцию()" / "ОтменитьТранзакцию()" (PairingBrokenTransaction)¶
- Тип: Ошибка
- Важность: Важный
- Включена по умолчанию: Да
- Теги:
standard
Описание диагностики¶
Начало транзакции и ее фиксация (отмена) должны происходить в контексте одного метода.
Примеры¶
Правильно
Процедура ЗаписатьДанныеВИБ()
НачатьТранзакцию();
Попытка
... // чтение или запись данных
ДокументОбъект.Записать()
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
... // дополнительные действия по обработке исключения
КонецПопытки;
КонецПроцедуры
Неправильно
Процедура ЗаписатьДанныеВИБ()
НачатьТранзакцию();
ЗаписатьДокумент();
КонецПроцедуры;
Процедура ЗаписатьДокумент()
Попытка
... // чтение или запись данных
ДокументОбъект.Записать()
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
... // дополнительные действия по обработке исключения
КонецПопытки;
КонецПроцедуры
Источники¶
Соответствие стандартам¶
- #std783, п. 1.2: Транзакции: правила использования — Диагностика «Нарушение парности использования методов "НачатьТранзакцию()" и "ЗафиксироватьТранзакцию()" / "ОтменитьТранзакцию()" (PairingBrokenTransaction)» проверяет условие пункта 1.2 стандарта std783.
Источник диагностики¶
- Исходная статья
- Ревизия:
f4616cda8a216789ee40529ed857e614b9e2ea25 - Лицензия:
LGPL-3.0-or-later