GetSysAttr - fonction de script et fonction de graphique
Cette fonction renvoie les attributs de domaine du client et de l'espace d'une application sélectionnée. Peut s'utiliser aussi bien dans le script de chargement de données que dans une expression de graphique.
La fonction GetSysAttr() peut être utilisée directement dans le script de chargement ou dans une expression de graphique. Dans l'un ou l'autre cas, vous pouvez utiliser la fonction pour stocker des attributs dans une variable ou directement sans variable.
Si vous utilisez cette fonction dans Qlik Sense Client-Managed, elle renvoie uniquement des valeurs de données vides. Par conséquent, vous pouvez utiliser la fonction pour développer des scripts dans Qlik Sense Client-Managed sans rencontrer d'erreurs, dans l'intention de charger ultérieurement les applications dans Qlik Cloud.
GetSysAttr(name)
double
Arguments
Argument
Description
name
Nom de l'attribut à renvoyer. Saisissez cette valeur sous forme de chaîne dans l'expression. La valeur de chaîne saisie est sensible à la casse.
Vous pouvez utiliser la fonction pour charger des attributs d'environnement dans votre application. La fonction peut renvoyer les attributs suivants :
Attributs d'environnement susceptibles d'être renvoyés par la fonction GetSysAttr()
Attribut
Description
Exemple de variable de script de chargement
Exemple d'expression de graphique (sans variable)
tenantId
ID du client.
Let vTenantID = GetSysAttr('tenantId')
=GetSysAttr('tenantId')
tenantName
Nom du client.
Let vTenantName = GetSysAttr('tenantName')
=GetSysAttr('tenantName')
tenantUrl
URL par défaut du client.
Let vTenantUrl = GetSysAttr('tenantUrl')
=GetSysAttr('tenantUrl')
tenantUrlAlias
URL d'alias définie pour le client.
Let vTenantUrlAlias = GetSysAttr('tenantUrlAlias')
=GetSysAttr('tenantUrlAlias')
tenantRegion
Région de résidence du client.
Let vTenantRegion = GetSysAttr('tenantRegion')
=GetSysAttr('tenantRegion')
spaceId
ID d'espace. Cette valeur est uniquement définie pour une application dans un espace partagé ou géré.
Note Informations
Si la fonction GetSysAttr() renvoie une valeur spaceId vide dans Qlik Cloud, cela indique que l'application se trouve dans un espace personnel.
La fonction GetSysAttr() renvoie toujours une valeur spaceId vide lorsqu'elle est utilisée dans Qlik Sense Client-Managed.
Let vSpaceId = GetSysAttr('spaceId')
=GetSysAttr('spaceId')
spaceName
Nom de l'espace. Cette valeur est uniquement définie pour une application dans un espace partagé ou géré.
Note Informations
Si la fonction GetSysAttr() renvoie une valeur spaceName vide dans Qlik Cloud, cela indique que l'application se trouve dans un espace personnel.
La fonction GetSysAttr() renvoie toujours une valeur spaceName vide lorsqu'elle est utilisée dans Qlik Sense Client-Managed.
Let vSpaceName = GetSysAttr('spaceName')
=GetSysAttr('spaceName')
spaceType
Type d'espace dans lequel se trouve l'application. Cette valeur est uniquement définie pour une application dans un espace partagé ou géré.
Note Informations
Si la fonction GetSysAttr() renvoie une valeur spaceType vide dans Qlik Cloud, cela indique que l'application se trouve dans un espace personnel.
La fonction GetSysAttr() renvoie toujours une valeur spaceType vide lorsqu'elle est utilisée dans Qlik Sense Client-Managed.
Let vSpaceType = GetSysAttr('spaceType')
=GetSysAttr('spaceType')
Cas d'utilisation
Cette fonction simplifie l'identification de l'espace et du client d'une application Qlik Sense susceptible d'être déplacée entre différents environnements. La fonction facilite l'identification de l'environnement spécifique dans lequel vous travaillez. Cela s'avère particulièrement utile lors des phases de Développement, Test, Acceptation et Production (DTAP) du cycle de vie d'une application.
Cette fonction peut être utilisée dans des instructions LOAD dans le script de chargement de l'application ou dans des expressions de graphique, soit directement sous forme d'expression, soit dans une expression stockée sous forme de variable. Si vous envisagez de déplacer votre application entre des espaces ou des clients au cours de son cycle de vie, utilisez la fonction dans une expression de graphique pour obtenir dynamiquement des informations sur l'espace et le client sans charger l'application. Ainsi, vous pouvez stocker l'expression de fonction dans une variable en dehors du script de chargement ou utiliser la fonction directement dans l'expression de graphique.
Exemple 1 – Stockage d'attributs d'environnement sous forme de variables de script de chargement
Dans cet exemple, nous définissons un ensemble de variables de script qui peuvent être utilisées dans le contenu de l'application que vous créez. À chaque chargement de l'application, les attributs sont évalués et ajoutés à l'application.
Procédez comme suit :
Créez une nouvelle application Qlik Sense dans un espace partagé.
Ouvrez la console Éditeur de chargement de données.
Collez le script de chargement suivant dans un nouvel onglet :
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');
Ce script de chargement contient les éléments suivants :
Une nouvelle table, appelée Transactions, contenant des échantillons de données de transaction. Elles peuvent être remplacées par n'importe quelles données et sont ajoutées comme paramètres fictifs.
Une série de définitions de variable de script, pour les attributs disponibles récupérables via GetSysAttr().
Chargez les données et ouvrez une nouvelle feuille en mode d'édition avancé.
Créez un objet Table et ajoutez les expressions suivantes sous forme de dimensions, avec leurs étiquettes respectives :
=vTenantId, avec étiquette Tenant ID
=vTenantName, avec étiquette Tenant Name
=vTenantUrl, avec étiquette Tenant URL (Default)
=vTenantUrlAlias, avec étiquette Tenant URL (Alias)
=vTenantRegion, avec étiquette Tenant Region
=vSpaceId, avec étiquette Space ID
=vSpaceName, avec étiquette Space Name
=vSpaceType, avec étiquette Space Type
À présent, vous avez une table dans votre application, affichant dynamiquement chacun des attributs d'environnement disponibles. L'export de l'application et son chargement dans un client et un espace différents vous donneraient ces attributs pour la nouvelle version chargée de l'application.
Exemple 2 – Stockage d'attributs d'environnement sous forme de variables et leur utilisation dans des expressions de graphique
Dans cet exemple, au lieu de définir des variables dans le script, nous définissons plusieurs variables via la boîte de dialogue en mode d'édition avancé. Les variables peuvent ensuite être utilisées dans des expressions de graphique dans l'application.
Procédez comme suit :
Créez une nouvelle application Qlik Sense dans un espace partagé.
Ouvrez une nouvelle feuille en mode d'édition avancé
Cliquez sur pour ouvrir la boîte de dialogue Variables.
Cliquez sur Créer un nouvel élément.
Sous Nom, saisissez vTenantId.
Sous Définition, saisissez =GetSysAttr('tenantId').
Cliquez sur Créer.
Cela crée une variable d'application permettant d'afficher l'ID du client. Répétez les étapes 3 à 6 pour créer une variable pour chacun des attributs restants. Utilisez les paramètres suivants :
Nom du client
Nom: vTenantName
Définition: =GetSysAttr('tenantName')
URL du client
Nom: vTenantUrl
Définition: =GetSysAttr('tenantUrl')
Alias d'URL du client
Nom: vTenantUrlAlias
Définition: =GetSysAttr('tenantUrlAlias')
Région du client
Nom: vTenantRegion
Définition: =GetSysAttr('tenantRegion')
ID de l'espace
Nom: vSpaceId
Définition: =GetSysAttr('spaceId')
Nom de l'espace
Nom: vSpaceName
Définition: =GetSysAttr('spaceName')
Type d'espace
Nom: vSpaceType
Définition: =GetSysAttr('spaceType')
Créez un objet Table et ajoutez chacune des expressions suivantes sous forme de dimensions, avec leurs étiquettes respectives :
=vTenantId, avec étiquette Tenant ID
=vTenantName, avec étiquette Tenant Name
=vTenantUrl, avec étiquette Tenant URL (Default)
=vTenantUrlAlias, avec étiquette Tenant URL (Alias)
=vTenantRegion, avec étiquette Tenant Region
=vSpaceId, avec étiquette Space ID
=vSpaceName, avec étiquette Space Name
=vSpaceType, avec étiquette Space Type
À présent, vous avez une table dans votre application, affichant dynamiquement chacun des attributs d'environnement disponibles. L'export de l'application et son chargement dans un client et un espace différents vous donneraient ces attributs pour la nouvelle version chargée de l'application.
Le principal avantage de l'utilisation de la fonction dans des expressions de graphique réside dans le fait que l'application n'a pas besoin d'être chargée pour que ces attributs soient actualisés. Cela facilite le déplacement des applications entre clients et espaces dans le cadre de leur cycle de vie.
Exemple 3 – Utilisation de la fonction directement dans le script de chargement
Vous pouvez également utiliser la fonction dans vos applications sans variable. Cet exemple montre comment charger une table avec chaque attribut sous forme de champ individuel. Ensuite, vous pouvez créer des visualisations dans l'application pour afficher ces détails.
Procédez comme suit :
Créez une nouvelle application Qlik Sense dans un espace partagé.
Ouvrez l'éditeur de chargement de données.
Collez le script de chargement suivant dans un nouvel onglet :
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;
Chargez les données. Une table est créée dans le modèle de données, affichant chacun des attributs dans des champs individuels.
À présent, vous pouvez utiliser les champs d'attributs dans des visualisations comme des tables ou des objets Texte et image.
Exemple 4 – Utilisation de la fonction directement dans des expressions de graphique
Vous pouvez saisir la fonction directement dans des expressions de graphique sans utiliser de variable.
Le principal avantage de l'utilisation de la fonction dans des expressions de graphique réside dans le fait que l'application n'a pas besoin d'être chargée pour actualiser ces attributs. Cela facilite le déplacement des applications entre clients et espaces dans le cadre de leur cycle de vie.
Procédez comme suit :
Créez une nouvelle application Qlik Sense dans un espace partagé.
Ouvrez une nouvelle feuille en mode d'édition avancé
Faites glisser un objet Texte et image sur la feuille.
Cliquez à l'intérieur du graphique vide pour ajouter du texte et saisissez :
ID du client :
Dans le panneau des propriétés, cliquez sur Ajouter une mesure.
Saisissez l'expression suivante :
=GetSysAttr('tenantId')
Répétez ces étapes pour les autres attributs sur de nouvelles lignes, à l'aide des expressions présentées dans la table d'attributs au début de cette rubrique d'aide.
Cette page vous a-t-elle aidé ?
Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !