DB.Reload
Revision as of 15:03, 18 September 2019 by Admin (talk | contribs) (Created page with "{{infobox function |name=Reload |object=Объект базы данных |caption=Обновление объекта из базы данных |type=1 |status=1 |db=2...")
| Reload (Обновление объекта из базы данных) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Функция производит полную загрузку текущего выбранного объекта из базы данных. Все возможные изменения в объекте будут утеряны. Функцию удобно использовать совместно с функцией Lock перед записью изменений в объекте базы данных.
Синтаксис
DB.Reload(<Загружать периодические реквизиты на дату (DATE)>,<Производить загрузку заголовков (INT)>=0,<Доп. реквизиты при загрузке заголовков (STRING)>="")
Аргументы
<Загружать периодические реквизиты на дату (DATE)>- (необязательный аргумент) (планируется к реализации) Дата, на которую будут загружены периодические реквизиты объекта, если режим загрузки оного подразумевает также загрузку периодических реквизитов.<Производить загрузку заголовков (INT)>- (необязательный аргумент) (планируется к реализации) Режим загрузки только заголовков (см. статью Объект базы данных). Аргумент может принимать следующие значения:- 0 -- производить полную загрузку объектов
- 1 -- производить загрузку объектов в режиме только заголовки или частичная загрузка (в зависимости от наличия следующего аргумента), объекты, которые не могут быть загружены частично, будут пропущены. К примеру, если при настройке проекта для объекта не задан реквизит сортировки, данный объект не может быть загружен в режиме только заголовков.
- 2 -- производить загрузку объектов в режиме только заголовки или частичная загрузка (в зависимости от наличия следующего аргумента), объекты, которые не могут быть загружены частично, будут загружены полностью. К примеру, если при настройке проекта для объекта не задан реквизит сортировки, данный объект не может быть загружен в режиме только заголовков.
<Доп. реквизиты при загрузке заголовков (STRING)>- (необязательный аргумент) (планируется к реализации) Список наименований реквизитов через запятую, которые будут загружены дополнительно в режиме загрузки только заголовков. В случае, когда этот аргумент задан, объекты будут загружены в режиме "частичная загрузка". Если наименование реквизита в загружаемом объекте отсутствует, оно будет пропущено. Таким образом можно загружать разные объекты одним вызовом функции, указав всю совокупность реквизитов для частичной загрузки.
Примеры
//Пример производит блокировку и изменение документа аДок
аПольз:="";аМаш:="";аВремя:="";
If аДок.Lock(аПольз,аМаш,аВремя)=0 Then
Message("Невозможно заблокировать документ "+аДок+", так как в данный момент с ним работает пользователь "+аПольз+" на "+аМаш+" в "+аВремя+"!","!");
Exit;
EndIf;
Try
//Перечитать аДок из базы данных, чтобы убедиться, что мы работаем со свежими данными и наше изменение не запишет устаревшие данные в базу данных
аДок.Reload();
//Изменим реквизит и сохраним объект
аДок.Реквизит:=1;
аДок.Save();
Finally
аДок.Unlock();
EndTry;