DB.SelectClose
SelectClose (Выборка объектов) | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция закрывает выборку объектов, освобождая использованные для выборки ресурсы. Функция вызывается автоматически в момент окончания выборки, при удалении объекта или при его заполнении функциями, типа Find и пр. Обычно эта функция не используется.
Синтаксис
DB.SelectClose()
Примеры
//Пример производит выборку по подчиненному справочнику ЛицензииКонтрагентов, чтобы найти самую свежую лицензию из диапазона дат НачДата..КонДата. аДата:=0; аЭл:=Ref.ЛицензииКонтрагентов; //Выбрать не удаленные элементы подчиненные элементу зК аЭл.UseOrder("ТипВыборки+"); аЭл.Select("@Parent,@Status",зК,0); аРез:=0; While аЭл.Next() Do //Если реквизит ТипВыборки>0, закончим выборку. Использование SelectClose не обязательно, но освобождает память сразу при вызове, а не позже, когда аЭл будет удалена. If аЭл.ТипВыборки>0 Then аЭл.SelectClose(); Break; EndIf; If (аЭл.ТипЛицензии<>Enum.ТипыЛицензий.АлкогольнаяРозничная)And(аЭл.ТипЛицензии<>Enum.ТипыЛицензий.АлкогольнаяОптовая) Then Continue; EndIf; If (аЭл.ДатаВыдачиЛицензии<=КонДата)And(аЭл.ДатаНачалаДействияЛицензии<=КонДата)And(аЭл.ДатаОкончанияДействияЛицензии>=НачДата) Then If _Or(аДата=0,аДата<аЭл.ДатаОкончанияДействияЛицензии) Then аДата:=аЭл.ДатаОкончанияДействияЛицензии; //ВАЖНО: результат должен быть копией текущего объекта аЭл, // так как иначе он будет изменен в момент, когда текущий объект аЭл будет загружен заново при выполнении аЭл.Next() аРез:=аЭл.Copy(); EndIf; EndIf; EndDo;