Эта функция возвращает атрибуты домена клиента и пространства для выбранного приложения. Это можно использовать как в скрипте загрузки данных, так и в выражении диаграмм.
Функцию GetSysAttr() можно использовать непосредственно в скрипте загрузки или в выражении диаграммы. В любом случае с помощью этой функции можно сохранять атрибуты в переменной или напрямую (без переменной).
При использовании в Qlik Sense под управлением клиента эта функция возвращает только пустые значения данных. Таким образом, эту функцию можно использовать для разработки скриптов в Qlik Sense под управлением клиента, не сталкиваясь с ошибками, впоследствии приложения можно будет загрузить в Qlik Cloud.
Синтаксис:
GetSysAttr(name)
Возвращаемые типы данных: двойное значение
Аргументы
Аргумент
Описание
name
Имя атрибута, который должен быть возвращен. Вводится как строковое значение в выражении. Строковое значение вводится с учетом регистра.
С помощью функции можно загружать атрибуты среды в приложение. Эта функция может возвращать следующие атрибуты:
Атрибуты среды, которые может возвращать функция GetSysAttr()
Атрибут
Описание
Имя переменной скрипта загрузки
Пример выражения диаграммы (без переменной)
tenantId
Идентификатор клиента.
Let vTenantID = GetSysAttr('tenantId')
=GetSysAttr('tenantId')
tenantName
Имя клиента.
Let vTenantName = GetSysAttr('tenantName')
=GetSysAttr('tenantName')
tenantUrl
URL по умолчанию для клиента.
Let vTenantUrl = GetSysAttr('tenantUrl')
=GetSysAttr('tenantUrl')
tenantUrlAlias
Псевдоним URL, определенный для клиента.
Let vTenantUrlAlias = GetSysAttr('tenantUrlAlias')
=GetSysAttr('tenantUrlAlias')
tenantRegion
Регион, в котором находится клиент.
Let vTenantRegion = GetSysAttr('tenantRegion')
=GetSysAttr('tenantRegion')
spaceId
Идентификатор пространства. Определяется только для приложения в общем или управляемом пространстве.
Примечание к информации
Если функция GetSysAttr() возвращает пустое значение spaceId в Qlik Cloud, это указывает на то, что приложение находится в личном пространстве.
Функция GetSysAttr() всегда возвращает пустое значение spaceId при использовании в Qlik Sense под управлением клиента.
Let vSpaceId = GetSysAttr('spaceId')
=GetSysAttr('spaceId')
spaceName
Имя пространства. Определяется только для приложения в общем или управляемом пространстве.
Примечание к информации
Если функция GetSysAttr() возвращает пустое значение spaceName в Qlik Cloud, это указывает на то, что приложение находится в личном пространстве.
Функция GetSysAttr() всегда возвращает пустое значение spaceName при использовании в Qlik Sense под управлением клиента.
Let vSpaceName = GetSysAttr('spaceName')
=GetSysAttr('spaceName')
spaceType
Тип пространства, в котором находится приложение. Определяется только для приложения в общем или управляемом пространстве.
Примечание к информации
Если функция GetSysAttr() возвращает пустое значение spaceType в Qlik Cloud, это указывает на то, что приложение находится в личном пространстве.
Функция GetSysAttr() всегда возвращает пустое значение spaceType при использовании в Qlik Sense под управлением клиента.
Let vSpaceType = GetSysAttr('spaceType')
=GetSysAttr('spaceType')
Когда это следует использовать
Эта функция упрощает идентификацию пространства и клиента в приложении Qlik Sense, которое может перемещаться между разными пространствами. Эта функция позволяет легко идентифицировать конкретную среду, в которой работает пользователь. Это особенно полезно на этапах разработки, тестирования, приемки и производства (DTAP) жизненного цикла приложения.
Эту функцию можно использовать в операторах загрузки (load) в скриптах загрузки приложения или в выражениях диаграммы, напрямую в виде выражения или в выражении, сохраненном в качестве переменной. Если в течение жизненного цикла приложения ожидается его перемещение между пространствами или клиентами, используйте функцию в выражении диаграммы, чтобы динамически получать информацию о пространстве и клиенте, не перезагружая приложение. В таком случае сохраните выражение функции в переменной за пределами скрипта загрузки или используйте функцию непосредственно в выражении диаграммы.
Пример 1. Сохранение атрибутов среды в качестве переменных скрипта загрузки
В этом примере будет определен набор переменных скрипта, которые можно использовать в создаваемом содержимом приложения. При каждой перезагрузке приложения атрибуты оцениваются и добавляются в приложение.
Выполните следующие действия.
Создайте новое приложение Qlik Sense в общем пространстве.
Откройте Редактор загрузки данных.
Вставьте следующий скрипт загрузки на новую вкладку:
Transactions:
Load * inline [
id,date,amount
1,1/1/2023,500.67
2,1/2/2023,458.91
3,1/3/2023,12.34
4,1/4/2023,90.90
5,1/5/2023,256.30
6,1/6/2023,789.16
7,1/7/2023,501.25
8,1/8/2023,87.01
9,1/9/2023,161.16
10,1/10/2023,300.06
];
Let vTenantId = GetSysAttr('tenantId');
Let vTenantName = GetSysAttr('tenantName');
Let vTenantUrl = GetSysAttr('tenantUrl');
Let vTenantUrlAlias = GetSysAttr('tenantUrlAlias');
Let vTenantRegion = GetSysAttr('tenantRegion');
Let vSpaceId = GetSysAttr('spaceId');
Let vSpaceName = GetSysAttr('spaceName');
Let vSpaceType = GetSysAttr('spaceType');
Этот скрипт загрузки содержит следующие элементы:
Новая таблица под именем Transactions содержит пример данных транзакции. Их можно заменить любыми данными, они добавлены для заполнения места.
Набор определений переменных скрипта для доступных атрибутов, которые может возвращать функция GetSysAttr().
Загрузите данные и откройте новый лист в расширенном режиме редактирования.
Создайте объект Таблица и добавьте следующие выражения в качестве измерений вместе с соответствующими метками:
=vTenantId, с меткой Tenant ID
=vTenantName, с меткой Tenant Name
=vTenantUrl, с меткой Tenant URL (Default)
=vTenantUrlAlias, с меткой Tenant URL (Alias)
=vTenantRegion, с меткой Tenant Region
=vSpaceId, с меткой Space ID
=vSpaceName, с меткой Space Name
=vSpaceType, с меткой Space Type
Теперь в приложении есть таблица, которая динамически отображает каждый из доступных атрибутов среды. Когда приложение экспортируется и загружается в другой клиент и в другое пространство, эти атрибуты отображаются для вновь загруженной версии приложения.
Пример 2. Сохранение атрибутов среды в виде переменных для использования в выражениях диаграммы
В этом примере несколько переменных определяются не в скрипте, а в диалоговом окне в расширенном режиме редактирования. Определенные таким образом переменные можно использовать в выражениях диаграммы в приложении.
Выполните следующие действия.
Создайте новое приложение Qlik Sense в общем пространстве.
Откройте новый лист в расширенном режиме редактирования.
Щелкните , чтобы открыть диалоговое окно «Переменные».
Нажмите Создать.
В поле Имя введите vTenantId.
В поле Определение введите =GetSysAttr('tenantId').
Нажмите Создать.
Будет создана переменная приложения для отображения идентификатора клиента. Повторите действия 3-6, чтобы создать переменные для оставшихся атрибутов. Используйте следующие параметры:
Имя клиента
Имя: vTenantName
Определение: =GetSysAttr('tenantName')
URL-адрес клиента
Имя: vTenantUrl
Определение: =GetSysAttr('tenantUrl')
Псевдоним URL клиента
Имя: vTenantUrlAlias
Определение: =GetSysAttr('tenantUrlAlias')
Регион клиента
Имя: vTenantRegion
Определение: =GetSysAttr('tenantRegion')
Идентификатор пространства
Имя: vSpaceId
Определение: =GetSysAttr('spaceId')
Имя пространства
Имя: vSpaceName
Определение: =GetSysAttr('spaceName')
Тип пространства
Имя: vSpaceType
Определение: =GetSysAttr('spaceType')
Создайте объект Таблица и добавьте каждое из следующих выражений в качестве измерений вместе с соответствующими метками:
=vTenantId, с меткой Tenant ID
=vTenantName, с меткой Tenant Name
=vTenantUrl, с меткой Tenant URL (Default)
=vTenantUrlAlias, с меткой Tenant URL (Alias)
=vTenantRegion, с меткой Tenant Region
=vSpaceId, с меткой Space ID
=vSpaceName, с меткой Space Name
=vSpaceType, с меткой Space Type
Теперь в приложении есть таблица, которая динамически отображает каждый из доступных атрибутов среды. Когда приложение экспортируется и загружается в другой клиент и в другое пространство, эти атрибуты отображаются для вновь загруженной версии приложения.
Главное преимущество использования этой функции в диаграммах выражения заключается в том, что приложение не требуется перезагружать для обновления этих атрибутов. Это обеспечивает более гладкое перемещение приложений между клиентами и пространствами на протяжении жизненного цикла.
Пример 3. Использование функции непосредственно в скрипте загрузки
Функцию также можно использовать в приложениях без переменных. Этот пример показывает, как загрузить таблицу, в которой каждый атрибут будет отдельным полем. Здесь можно создать визуализации для отображения этих сведений в приложении.
Выполните следующие действия.
Создайте новое приложение Qlik Sense в общем пространстве.
Откройте Редактор загрузки данных.
Вставьте следующий скрипт загрузки на новую вкладку:
Attributes:
Load RowNo() as Key,
GetSysAttr('tenantId') as TenantID,
GetSysAttr('tenantName') as TenantName,
GetSysAttr('tenantUrl') as TenantUrl,
GetSysAttr('tenantUrlAlias') as TenantUrlAlias,
GetSysAttr('tenantRegion') as TenantRegion,
GetSysAttr('spaceId') as SpaceID,
GetSysAttr('spaceName') as SpaceName,
GetSysAttr('spaceType') as SpaceType autogenerate 1;
Загрузите данные. Создается таблица в модели данных, где каждый атрибут отображается в отдельном поле.
Теперь можно использовать поля атрибутов в визуализациях, таких как таблицы или объекты «Текст и изображение».
Пример 4. Использование функции напрямую в выражениях диаграммы
Функцию можно вводить непосредственно в выражения диаграммы, не используя переменные.
Главное преимущество использования этой функции в диаграммах выражения заключается в том, что приложение не требуется перезагружать для обновления этих атрибутов. Это обеспечивает более гладкое перемещение приложений между клиентами и пространствами на протяжении жизненного цикла.
Выполните следующие действия.
Создайте новое приложение Qlik Sense в общем пространстве.
Откройте новый лист в расширенном режиме редактирования.
Перетащите объект «Текст и изображение» на лист.
Щелкните внутри пустой диаграммы, чтобы добавить текст, и введите следующее:
Идентификатор клиента:
На панели свойств щелкните Добавить меру.
Введите следующее выражение:
=GetSysAttr('tenantId')
Повторите эти действия для других атрибутов в новых строках, используя выражения, приведенные в таблице атрибутов в начале этого раздела справки.
Помогла ли вам эта страница?
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!