Область применения: управляемое приложение, мобильное приложение, обычное приложение.
1. Ответственным следует считать любое чтение данных, на основе результатов которого производятся изменения в информационной базе или принимаются решения.
1.1. Если чтение данных из информационной базы должно быть ответственным, следует производить такое чтение в транзакции с предварительной установкой управляемых блокировок. Например, ответственное чтение данных требуется в следующих случаях:
Неправильно: // 1. Прочитать регистр сведений Правильно: // 1. Начать транзакцию для пакета из двух операций чтения и записи регистра Попытка |
1.2. В некоторых случаях, ответственное чтение не требуется в силу решаемой прикладной задачи, например:
В некоторых случаях, ответственное чтение не требуется, так как конкурентная работа с данными маловероятна или полностью исключена, например:
1.3. В большинстве случаев, при выполнении чтения в обработчиках событий связанных с модификацией данных, весь код обработчика выполняется в рамках системной транзакции, которая открыта платформой, и явно открывать новую транзакцию не требуется.
Например, в системной транзакции выполняются обработчики модулей объектов и соответствующие им подписки на события:
Подробнее – см. документацию к платформе 1С:Предприятие.