You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PairingBrokenTransaction /
Нарушение парности использования методов "НачатьТранзакцию()" и "ЗафиксироватьТранзакцию()" / "ОтменитьТранзакцию()"
Версия
0.23.1
Описание ложного срабатывания диагностики
При наличии ОтменитьТранзакцию() в секции Попытка, получаем срабатывание диагностики "Метод ОтменитьТранзакцию() должен быть в попытке и первым методом блока исключения".
В случае отключения этой диагностики через WrongUseOfRollbackTransactionMethod-off или BSLLS-off получаем срабатывание PairingBrokenTransaction на втором ОтменитьТранзакцию() в секции исключения.
Пример кода
Процедура ЗаписатьДанныеВИБ(Массив)
Для Каждого Значение Из Массив Цикл
НачатьТранзакцию();
Попытка
//... // чтение или запись данных
ЗаписатьПодчиненныйСправочник();
Если Не Изменено(Значение) Тогда
// BSLLS-off
ОтменитьТранзакцию();
// BSLLS-on
Продолжить;
КонецЕсли;
Значение.Записать()
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
//... // дополнительные действия по обработке исключения
КонецПопытки;
КонецЦикла;
КонецПроцедуры
The text was updated successfully, but these errors were encountered:
GladilovDmitry
changed the title
[FP] PairingBrokenTransaction при наличии ОтменитьТранзакцию() в секции Попытка
[FP] PairingBrokenTransaction при наличии экранированного ОтменитьТранзакцию() в секции Попытка
Oct 14, 2024
Диагностика
PairingBrokenTransaction /
Нарушение парности использования методов "НачатьТранзакцию()" и "ЗафиксироватьТранзакцию()" / "ОтменитьТранзакцию()"
Версия
0.23.1
Описание ложного срабатывания диагностики
При наличии ОтменитьТранзакцию() в секции Попытка, получаем срабатывание диагностики "Метод ОтменитьТранзакцию() должен быть в попытке и первым методом блока исключения".
В случае отключения этой диагностики через WrongUseOfRollbackTransactionMethod-off или BSLLS-off получаем срабатывание PairingBrokenTransaction на втором ОтменитьТранзакцию() в секции исключения.
Пример кода
Процедура ЗаписатьДанныеВИБ(Массив)
КонецПроцедуры
The text was updated successfully, but these errors were encountered: