Funktionen GetSysAttr() används för att returnera information om klientorganisationen och utrymmet där en applikation är placerad. Med funktionen GetSysAttr() kan du utvärdera klientorganisationens ID och namn, utrymmets ID och namn, och andra detaljer om miljön där applikationen finns. Funktionen förenklar identifiering av utrymme och klientorganisation för en Qlik Sense applikation som kan ha flyttats mellan olika miljöer. Funktionen gör det enkelt att identifiera den specifika miljö som du arbetar i. Det är speciellt praktiskt under stadierna utveckling, test, acceptans och produktion (DTAP) i en applikations livscykel.
Denna funktion kan användas i applikationens laddningsskript eller diagramuttryck, antingen direkt som ett uttryck eller i ett uttryck som lagrats som en variabel. Om du förväntar dig att din applikation flyttas mellan utrymmen eller klientorganisationer under dess livscykel, använd funktionen i ett diagramuttryck för att dynamiskt hämta utrymmes- och klientorganisationsinformation utan att ladda om applikationen. När du gör det, lagra funktionsuttrycket i en variabel utanför laddningsskriptet, eller använd funktionen direkt i diagramuttrycket.
Använd GetSysAttr() för att fastställa följande information om din applikation:
ID för den klientorganisation där applikationen finns.
Namn på den klientorganisation där applikationen har sin plats.
URL för den klientorganisation där applikationen har sin plats.
Det alias-URL som har definierats för den klientorganisation som innehåller applikationen.
Den region i klientorganisationen som innehåller applikationen.
ID för det utrymme där applikationen har sin plats.
Namn på det utrymme där applikationen har sin plats.
Typ av utrymme (delat eller hanterat) där applikationen har sin plats.
Funktionen GetSysAttr() kan användas direkt i laddningsskriptet eller i ett diagramuttryck. I båda fallen kan du använda funktionen för att lagra attribut i en variabel eller direkt utan variabel.
Om du använder funktionen i För klienthanterat Qlik Sense kommer den bara att returnera tomma datavärden. Alltså kan du använda funktionen för att ta fram skript i För klienthanterat Qlik Sense utan att fel inträffar, i syfte att senare kunna ladda upp applikationerna till Qlik Cloud.
Syntax:
GetSysAttr(name)
Returnerad datatyp: dual
Argument
Argument
Beskrivning
name
Namn på det attribut som ska returneras. Ange som ett strängvärde i uttrycket. Det angivna strängvärdet är skiftlägeskänsligt.
Du kan använda funktionen för att läsa in miljöattribut i din applikation. Funktionen kan returnera följande attribut:
Miljöattribut som kan returneras av funktionen GetSysAttr()
Alias-URL som har definierats för klientorganisationen.
Let vTenantUrlAlias = GetSysAttr('klientorganisations-URL-alias')
=GetSysAttr('klientorganisations-URL-alias')
tenantRegion
Regionen där klientorganisationen är registrerad.
Let vTenantRegion = GetSysAttr('klientorganisationsregion')
=GetSysAttr('klientorganisationsregion')
spaceId
Utrymmets ID. Detta definieras enbart för en applikation i ett delat eller hanterat utrymme.
Anteckning om information
Om GetSysAttr()-funktionen returnerar ett tomt spaceId-värde i Qlik Cloud, indikerar detta att applikationen är placerad i ett personligt utrymme.
GetSysAttr()-funktionen returnerar ett tomt spaceId-värde när det används i För klienthanterat Qlik Sense.
Låt vSpaceId = GetSysAttr('spaceId')
=GetSysAttr('spaceId')
spaceName
Namnet på utrymmet. Detta definieras enbart för en applikation i ett delat eller hanterat utrymme.
Anteckning om information
Om GetSysAttr()-funktionen returnerar ett tomt spaceName-värde i Qlik Cloud, indikerar detta att applikationen är placerad i ett personligt utrymme.
GetSysAttr()-funktionen returnerar ett tomt spaceName-värde när det används i För klienthanterat Qlik Sense.
Låt vSpaceName = GetSysAttr('spaceName')
=GetSysAttr('spaceName')
spaceType
Typen av utrymme där applikationen är placerad. Detta definieras enbart för en applikation i ett delat eller hanterat utrymme.
Anteckning om information
Om GetSysAttr()-funktionen returnerar ett tomt spaceType-värde i Qlik Cloud indikerar detta att applikationen är placerad i ett personligt utrymme.
GetSysAttr()-funktionen returnerar ett tomt spaceType-värde när det används i För klienthanterat Qlik Sense.
Låt vSpaceType = GetSysAttr('spaceType')
=GetSysAttr('spaceType')
Exempel 1 – Lagra miljöattribut som variabler i inläsningsskript
I det här exemplet definierar vi en uppsättning skriptvariabler som kan användas i applikationsinnehållet du skapar. Varje gång applikationen läses in utvärderas attributen och läggs till i applikationen.
Gör följande:
Skapa en ny Qlik Sense applikation i ett delat utrymme.
Öppna Skriptredigeraren.
Klistra in följande inläsningsskript i en ny flik:
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');
Det här inläsningsskriptet innehåller följande:
En ny tabell, som heter Transactions, innehåller exempeltransaktionsdata. Den kan ersättas med vilka data som helst och läggs till som en platshållare.
En serie definitioner av skriptvariabler för tillgängliga attribut som kan hämtas med GetSysAttr().
Läs in dina data och öppna ett nytt ark i avancerat redigeringsläge.
Skapa en tabell och lägg till följande uttryck som dimensioner tillsammans med respektive etiketter:
=vTenantId, med etikett Tenant ID
=vTenantName, med etikett Tenant Name
=vTenantUrl, med etikett Tenant URL (Default)
=vTenantUrlAlias, med etikett Tenant URL (Alias)
=vTenantRegion, med etikett Tenant Region
=vSpaceId, med etikett Space ID
=vSpaceName, med etikett Space Name
=vSpaceType, med etikett Space Type
Du har nu en tabell i din applikation som dynamiskt visar vart och ett av de tillgängliga miljöattributen. Om du exporterar applikationen och laddar upp den till en annan klientorganisation och ett annat utrymme får du dessa attribut för den nyligen uppladdade versionen av applikationen.
Exempel 2 – Lagra miljöattribut som variabler och använda dem i diagramuttryck
I det här exemplet kommer vi att, i stället för att definera variabler i skriptet, definiera flera variabler med dialogrutan i avancerat redigeringsläge. Variablerna kan sedan användas i diagramuttryck i applikationen.
Gör följande:
Skapa en ny Qlik Sense applikation i ett delat utrymme.
Öppna ett nytt ark i avancerat redigeringsläge.
Klicka på om du vill öppna variabeldialogen.Variabler
Klicka på Skapa ny.
Under Namn anger du vTenantId.
Under Definition anger du =GetSysAttr('tenantId').
Klicka på Skapa.
Detta skapar en applikationsvariabel för att visa klientorganisationens ID. Upprepa steg 3 till 6 för att skapa en variable för vart och ett av de återstående attributen. Använd följande parametrar:
Skapa en tabell och lägg till vart och ett av följande uttryck som dimensioner tillsammans med respektive etiketter:
=vTenantId, med etikett Tenant ID
=vTenantName, med etikett Tenant Name
=vTenantUrl, med etikett Tenant URL (Default)
=vTenantUrlAlias, med etikett Tenant URL (Alias)
=vTenantRegion, med etikett Tenant Region
=vSpaceId, med etikett Space ID
=vSpaceName, med etikett Space Name
=vSpaceType, med etikett Space Type
Nu har du en tabell i din applikation som dynamiskt visar vart och ett av de tillgängliga miljöattributen. Att exportera applikationen och ladda upp den till en annan klientorganisation och ett annat utrymme skulle ge dig dessa attribut för den nyligen uppladdade versionen av applikationen.
Största fördelen med att använda funktionen i diagramuttryck är att applikationen inte behöver läsas in på nytt för att dessa attribut ska uppdateras. Detta möjliggör smidigare förflyttning av applikationer mellan klientorganisationer och utrymmen som en del av applikationens livscykel.
Exempel 3 – Använda funktionen direkt i inläsningsskriptet
Du kan även använda funktionen i dina applikationer utan en variabel. I det här exemplet ser du hur du kan läsa in en tabell med vart och ett av attributen som enskilt fält. Härifrån kan du skapa visualiseringar i applikationen för att visa dessa detaljer.
Gör följande:
Skapa en ny Qlik Sense-applikation i ett delat utrymme.
Öppna Skriptredigeraren.
Klistra in följande inläsningsskript i en ny flik:
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;
Ladda data. En tabell skapas i datamodellen och visar vart och ett av attributen i enskilda fält.
Nu kan du använda dessa attributfält i visualiseringar, som tabeller eller text- och bildobekt.
Exempel 4 – Använda funktionen direkt i diagramuttryck
Du kan ange funktionen direkt i diagramuttryck utan att använda någon variabel.
Största fördelen med att använda funktionen i diagramuttryck är att applikationen inte behöver läsas in på nytt för att uppdatera dessa attribut. Detta möjliggör smidigare rörelse av applikationer mellan klientorganisationer och utrymmen som en del av applikationens livscykel.
Gör följande:
Skapa en ny Qlik Sense applikation i ett delat utrymme.
Öppna ett nytt ark i avancerat redigeringsläge.
Dra ett text- och bildobjekt till arket.
Klicka i det tomma diagrammet för att lägga till text och skriv in:
Klientorganisationens ID:
I egenskapsfönstret klickar du på Lägg till mått.
Ange följande uttryck:
=GetSysAttr('klientorganisationId')
Upprepa dessa steg för övriga attribut på nya rader. Använd uttrycken som presenteras i attributtabellen i inledningen till detta hjälpavsnitt.
Var den här sidan till hjälp för dig?
Om du stöter på några problem med den här sidan eller innehållet på den, t.ex. ett stavfel, ett saknat steg eller ett tekniskt fel – meddela oss!