Синтаксис:
function CreateReference( Name: WideString; [optional] RequisitesFilter: OleVariant; [optional] NeedCheckAccessRights: WordBool = True; [optional] Connection: IConnection): IReference; |
Параметры:
• | Name – имя справочника; |
• | RequisitesFilter – массив имен доступных реквизитов. Если этот параметр не указан, то будут доступны все реквизиты; |
• | NeedCheckAccessRights – необходимость проверки прав доступа: True, если проверка прав доступа выполняется, иначе False. Если проверка прав доступа выполняется, и пользователь, выполняющий вычисления на ISBL, не имеет прав на справочник с именем Name, то при вызове функции будет сгенерировано исключение. Если пользователь имеет ограниченные права доступа, например, ограничения, по фильтраторам или по реквизитам, то эти ограничения также будут контролироваться. По умолчанию значение параметра равно True; |
• | Connection – соединение. По умолчанию используется текущее соединение. |
Возвращаемое значение:
Справочник.
Описание:
Функция создает справочник с именем Name. Для оптимизации можно задать фильтр на доступные реквизиты с помощью параметра RequisitesFilter (подробнее см. IRequisite.Enabled). В этом случае из базы данных будут считываться только значения реквизитов, вошедших в фильтр. Для доступа к справочникам другой системы следует означивать параметр Connection. Соединение может быть получено функцией CreateConnection. При получении справочника из другой системы нельзя отключить проверку прав.
Русскоязычный аналог имени функции:
СоздатьСправочник
В справочниках с большим количеством реквизитов рекомендуется ограничивать число реквизитов, которые загружаются клиентской частью при открытии набора данных. Ограничение реализуется с помощью параметра RequisitesFilter функции CreateReference. Если этот параметр не указан, то будут доступны все реквизиты.
RefName = '<Имя справочника>' // Ид записей справочника RecID = SQL('select top 100 Analit from dbo.MBAnalit where Vid = 3415';; ',') // Массив предварительно загружаемых реквизитов главного раздела ReqArray = ArrayOf(SYSREQ_ID; 'Employee')
Ref = CreateReference(RefName; ReqArray) Ref.AddWhere("MBAnalit.Analit in (" & RecID &")") Ref.Open foreach Rec in Ref Employee = Rec.Requisites('Employee').DisplayText RefInfo = Rec.Info … endforeach |
Функция CreateConnection |
© Компания DIRECTUM, 2018 | Сообщество пользователей DIRECTUM |