Блокирует произвольные данные для редактирования
Синтаксис
Процедура ЗаблокироватьДанныеДляРедактирования()
имеет следующий синтаксис:
ЗаблокироватьДанныеДляРедактирования(Ключ, [ВерсияДанных], [ИдентификаторФормы])
А также альтернативный англоязычный синтаксис:
LockDataForEdit(Ключ, [DataVersion], [FormId])
Параметры
Описание параметров процедуры ЗаблокироватьДанныеДляРедактирования()
:
Имя параметра* | Тип | Описание |
---|---|---|
Ключ | ЛюбаяСсылка, РегистрСведенийКлючЗаписи и др | Ссылка на объект, который должен быть заблокирован, или ключ записи независимого регистра сведений, который должен быть заблокирован |
ВерсияДанных | Строка | Версия блокируемого объекта в формате Base64 (используется для параметра Ключ типа ЛюбаяСсылка). Если указан, то при блокировке объекта проверяется версия объекта базы данных. При несовпадении версии или отсутствии объекта в базе данных генерируется исключение. |
ИдентификаторФормы | УникальныйИдентификатор | Уникальный идентификатор формы.
Если параметр указан, то блокировка устанавливается на все время жизни формы, в которой установлена блокировка. Если параметр не указан, блокировка устанавливается на ограниченное время и может быть снята:
|
*Жирным шрифтом выделены обязательные параметры |
Описание
Процедура ЗаблокироватьДанныеДляРедактирования()
выполняет попытку блокировки произвольных данных для редактирования в форме клиентского приложения. В случае, если не удалось установить блокировку (данные заблокированы другим пользователем, в том числе и методом Заблокировать() объекта), вызывает исключение.
ИдентификаторФормы
, платформа не гарантирует автоматического снятия блокировки сразу после закрытия формы. Поэтому, следует упреждать вероятные негативные последствия и явным образом снимать блокировку методом РазблокироватьДанныеДляРедактирования() после записи объекта или по окончании алгоритмаДоступность
Версия | Поддержка |
---|---|
8.1 | не поддерживается! |
8.2 | Сервер, Толстый клиент, Внешнее соединение |
8.3 | Сервер, Толстый клиент, Внешнее соединение, Мобильный автономный сервер, Мобильное приложение |
Пример использования
Пример кода с использованием процедуры ЗаблокироватьДанныеДляРедактирования()
:
//установим блокировку перед началом работы с объектом ЗаблокироватьДанныеДляРедактирования(Контрагент); //если объект заблокирован, произойдет исключение //пользователю увидит кто и откуда заблокировал объект КонтрагентОбъект = Контрагент.ПолучитьОбъект(); КонтрагентОбъект.Наименование = "удалить " + КонтрагентОбъект.Наименование; КонтрагентОбъект.Записать(); //явное снятие блокировки РазблокироватьДанныеДляРедактирования(Контрагент); //заблокируем записи независимого регистра сведений ИзмеренияРегистра = Новый Структура("Контрагент", Контрагент); КлючЗаписи = РегистрыСведений.ТелефоныКонтрагентов.СоздатьКлючЗаписи(ИзмеренияРегистра); //установим блокировку перед началом работы с объектом ЗаблокироватьДанныеДляРедактирования(КлючЗаписи,, ЭтаФорма.УникальныйИдентификатор); ... //снимем блокировку явным образом по окончании работы РазблокироватьДанныеДляРедактирования(КлючЗаписи);
Читайте также:
Как заблокировать объект для изменения?
Поделиться страницей в соц.сетях