Блокировка объекта и попытка его обновить

1. Gendelf 22.05.24 10:05 Сейчас в теме
Добрый день, вопрос по блокировкам. Есть http-сервис который обновляет данные в 1С. Если объект будет заблокирован пользователем или фоновым заданием какую ошибку вернёт сервис? Можно ли как-то вручную заблокировать объект или сделать это программно?

При создании на сервере пробовал выполнить ЭтотОбъект.ЗаблокироватьДанныеФормыДляРедактирования() но не увидел блокировки объекта.
По теме из базы знаний
Найденные решения
6. nomad_irk 76 22.05.24 10:28 Сейчас в теме
(5)
определить как блокировки влияют на update операции http-сервиса, выполнится ли операция обновления, упадёт ли сервис с ошибкой или пропустит обновление только этого пользователя

Операция обновления выполнится, т.к. форма объекта выполняет оптимистические блокировки.
Если окажется два программных изменения кода, то они выполнятся по очереди скорее всего.

Проверять нужно по-другому:
1. Получить объект кодом в одном сеансе
2. Получить объект кодом во втором сеансе и "заснуть" на этом.
3. Записать объект в первом сеансе.

Открыть форму объекта и изменение этого же объекта кодом вызовет ошибку записи в форме, кодом объект будет изменен.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 76 22.05.24 10:08 Сейчас в теме
(1)Блокировка объекта:

Объект.Заблокировать()


Не совсем понятно, какую цель преследуете.
3. Gendelf 22.05.24 10:11 Сейчас в теме
(2)
Объект.Заблокировать()


Справочник.Пользователи.Форма.ФормаЭлемента.Форма Возможно ошибочный метод: "Заблокировать"


Даже сохранить не даёт. Платформа 8.3.21
4. nomad_irk 76 22.05.24 10:16 Сейчас в теме
(3)Вы лучше более подробно объясните, для чего вам нужно блокировать объекты?
Объекты и так блокируются платформой, но существуют оптимистические/пессемистические блокировки.
При открытии формы объекта происходит его оптимистическая блокировка, при получении объекта кодом - пессимистическая.

Так же существуют транзакционные блокировки(разделяемые/исключительные), но это уже не объекты, а записи в таблицах хранения.
5. Gendelf 22.05.24 10:19 Сейчас в теме
(4) цель: определить как блокировки влияют на update операции http-сервиса, выполнится ли операция обновления, упадёт ли сервис с ошибкой или пропустит обновление только этого пользователя.

Вот искусственную блокировку как раз хотел наиграть для объекта, чтобы проверить его обновление через postman
6. nomad_irk 76 22.05.24 10:28 Сейчас в теме
(5)
определить как блокировки влияют на update операции http-сервиса, выполнится ли операция обновления, упадёт ли сервис с ошибкой или пропустит обновление только этого пользователя

Операция обновления выполнится, т.к. форма объекта выполняет оптимистические блокировки.
Если окажется два программных изменения кода, то они выполнятся по очереди скорее всего.

Проверять нужно по-другому:
1. Получить объект кодом в одном сеансе
2. Получить объект кодом во втором сеансе и "заснуть" на этом.
3. Записать объект в первом сеансе.

Открыть форму объекта и изменение этого же объекта кодом вызовет ошибку записи в форме, кодом объект будет изменен.
7. Gendelf 22.05.24 10:36 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот