Du kanske vill skapa en analys där den aktuella användarens namn visas i rubriken. Det här kan du göra genom att referera till en variabel.
Du kan referera till olika typer av variabler i dina analyser, infopaneler och åtgärder: session, semantisk modell (datalager), presentation, begäran och global. Innehållskonstruktörer kan själva definiera presentationsvariabler, begäranvariabler och globala variabler, men övriga typer (session och semantisk modell (datalager) definieras åt dig i den semantiska modellen.
Obs! Oracle Analytics har inte stöd för variablerna :user och :password i anslutningsinloggningsuppgifterna för datakällor.
Variabeltyp | Definieras i | Definieras av | Mer information |
---|---|---|---|
Session
|
Semantisk modell |
Datamodellskonstruktörer |
Sessionsvariabler |
Semantisk modell (datalager)
|
Semantisk modell |
Datamodellskonstruktörer |
Om variabler av typen semantisk modell (datalager) |
Presentation |
Frågor i analyser och på infopaneler |
Innehållsförfattare |
Presentationsvariabler |
Begäran |
Frågor i analyser och på infopaneler |
Innehållsförfattare |
Begäranvariabler |
Globala |
Analyser |
Administratörer |
Globala variabler och Skapa globala variabler |
Sessionsvariabler initieras när en användare loggar in.
De här variablerna finns för varje användare under varaktigheten för bläddringssessionen och upphör att gälla när användaren stänger webbläsaren eller loggar ut. Det finns två typer av sessionsvariabler: system och icke-system.
Det finns flera systemsessionsvariabler som du kan använda i rapporter och på infopaneler.
Systemsessionsvariablerna har reserverade namn, så du kan inte använda dem för någon annan typ av variabel.
Systemsessionsvariabel | Beskrivning | Exempel, SQL-frågevärde (dialogrutan Variabel) |
---|---|---|
PORTALPATH |
Identifierar den standardinfopanel som en användare ser vid inloggning (det går att åsidosätta den här inställningen efter inloggning). |
Så här visar du "mydashboard" när en användare loggar in: select ‘/shared/_portal/mydashboard’ from dual; |
TIMEZONE |
Anger standardtidszon för en användare vid inloggning. En användares tidszon fylls normalt i med utgångspunkt från användarens profil. Användare kan ändra standardtidszon via inställningar (Mitt konto). |
Så här anger du tidszonen när en användare loggar in: select ‘(GMT-08:00) Pacific Time (US & Canada)’ from dual; |
DATA_TZ |
Anger en förskjutning från den ursprungliga tidszonen för data. Med den här variabeln kan du konvertera en tidszon så att användare ser den tillämpliga zonen. |
Så här konverterar du tidsdata till EST (Eastern Standard Time): select ‘GMT-05:00’ from dual; Det här exemplet avser GMT (Greenwich Mean Time) - 5 timmar |
DATA_DISPLAY_TZ |
Anger tidszonen för visning av data. |
Så här visar du EST (Eastern Standard Time): select ‘GMT-05:00’ from dual; Det här exemplet avser GMT (Greenwich Mean Time) - 5 timmar |
En datalagervariabel (semantisk modell) är en variabel som har ett enskilt värde vid varje tidpunkt.
Datalagervariabler (semantiska modeller) kan vara statiska eller dynamiska. En statisk datalagervariabel (semantisk modell) har ett värde som är beständigt och inte ändras förrän administratören ändrar det. En dynamisk datalagervariabel (semantisk modell) har ett värde som förnyas när data returneras från frågor.
Du skapar en presentationsvariabel när du skapar en kolumnfråga eller en variabelfråga.
Typ | Beskrivning |
---|---|
Kolumnfråga |
En presentationsvariabel som skapats som en del av en kolumnfråga är associerad med en kolumn, och de värden den kan anta kommer från kolumnvärdena. Om du vill skapa en presentationsvariabel som en del av en kolumnfråga måste du välja Presentationsvariabel i fältet Ange en variabel i dialogrutan Ny fråga. Ange ett namn på variabeln i fältet Variabelnamn. |
Variabel fråga |
En presentationsvariabel som har skapats som en del av en variabel fråga är inte associerad med någon kolumn och du definierar de värden den ha. Om du vill skapa en presentationsvariabel som en del av en variabel fråga måste du välja Presentationsvariabel i fältet Fråga om i dialogrutan Ny fråga. Ange ett namn på variabeln i fältet Variabelnamn. |
En presentationsvariabels värde fylls i av kolumnfrågan eller den variabla frågan den skapades med. Det innebär att varje gång en användare väljer ett eller fler värden i kolumnfråga eller en variabel fråga ställs presentationsvariabelns värde in till det eller de värden användaren väljer.
Med en begäranvariabel kan du åsidosätta värdet hos en sessionsvariabel, men bara under tidslängden för en databasbegäran som initierats från en kolumnfråga. Du kan skapa en begäranvariabel som en del av processen för att skapa en kolumnfråga.
Du kan skapa en begäranvariabel som en del av processen för att skapa en av följande typer av infopanelfrågor:
En begäranvariabel som skapas som en del av en kolumnfråga associeras med en kolumn och de värden som den kan hämta kommer från kolumnvärdena.
Om du vill skapa en begäranvariabel som en del av en kolumnfråga måste du i dialogrutan Ny fråga välja Begäranvariabel i fältet Ange en variabel. Ange namnet på den sessionsvariabel som ska åsidosättas i fältet Variabelnamn.
En begäranvariabel som du skapar som del av en variabelfråga associeras inte med en kolumn och du definierar de värden som den kan ha.
Om du vill skapa en begäranvariabel som en del av en variabelfråga måste du i dialogrutan Ny fråga (eller Redigera fråga) välja Begäranvariabel i fältet Fråga efter. Ange sedan namnet på den sessionsvariabel som ska åsidosättas i fältet Variabelnamn.
Värdet för begäranvariabeln fylls i av den kolumnfråga med vilken den skapades. Det betyder att varje gång då en användare väljer ett värde i kolumnfrågan anges begäranvariabelns värde som det värde användaren väljer. Värdet gäller dock bara från den tidpunkt då användaren trycker på knappen OK för frågan tills analysresultaten returneras till infopanelen.
Vissa systemsessionsvariabler (som USERGUID och ROLES) kan inte åsidosättas av begäranvariabler. Andra systemsessionsvariabler, som DATA_TZ och DATA_DISPLAY_TZ (tidszon) kan åsidosättas om det konfigureras i modelladministrationsverktyget.
Endast strängvariabler och numeriska begäranvariabler stöder flera värden. Alla andra datatyper överför bara det första värdet.
En global variabel är en kolumn som skapas genom att kombinera en specifik datatyp med ett värde. Värdet kan vara av typen Datum, Datum och tid, Nummer, Text och Tid.
Den globala variabeln utvärderas när analysen exekveras och värdet av den globala variabeln byts i enlighet med det.
Endast användare med rollen BI-tjänsteadministratör kan hantera (lägga till, redigera och ta bort) globala variabler.
Du kan skapa en global variabel när du skapar en analys genom att använda dialogrutan Redigera kolumnformel. Den globala variabeln sparas då i katalogen och blir tillgänglig för alla andra analyser inom ett specifikt klientsystem.
Du kan spara en beräkning som en global variabel och sedan återanvända den i olika analyser.
Du kan referera till variabler i analyser och infopaneler.
Hur du refererar till en variabel beror på uppgiften du utför. I uppgifter där ett fält i en dialogruta visas måste du endast ange variabelns typ och namn (inte hela syntaxen). Det gäller till exempel när du refererar till en variabel i en filterdefinition.
För andra uppgifter, som att referera till en variabel i en rubrikvy, anger du variabelsyntaxen. Vilken syntax du använder beror på typen av variabel enligt beskrivningen i följande tabell.
Typ | Syntax | Exempel |
---|---|---|
Session |
@{biServer.variables['NQ_SESSION.variablename']} där variablename är namnet på sessionsvariabeln, till exempel DISPLAYNAME. |
@{biServer.variables['NQ_SESSION.SalesRegion']} |
Semantisk modell (datalager) |
@{biServer.variables.variablename} eller @{biServer.variables['variablename']} där variablename är namnet på variabeln, till exempel prime_begin |
@{biServer.variables.prime_begin} eller @{biServer.variables['prime_begin']} |
Presentation eller begäran |
@{variables.variablename}[format]{defaultvalue} eller @{scope.variables['variablename']} där: variablename är namnet på presentations- eller begäranvariabeln, till exempel MyFavoriteRegion. (valfritt) format är en formatmask som är beroende av variabelns datatyp, till exempel #,##0, MM/DD/YY hh:mm:ss. (Formatet används inte på standardvärdet.) (Valfritt) defaultvalue är en konstant eller variabel referens som anger ett värde som ska användas om den variabeln som variablename refererar till inte är ifylld. scope identifierar variabelns kvalificerare. Du måste ange omfattningen när en variabel används på flera nivåer (analyser, infopanelsidor och infopaneler) och du vill få åtkomst till ett bestämt värde. (Om du inte anger omfattningen är prioritetsordningen analyser, infopanelsidor och sedan infopaneler.) När du använder en infopanelsfråga med en presentationsvariabel som kan ha flera värden varierar syntaxen beroende på kolumntyp. Flera värden formateras till kommaavgränsade värden och därför används formatsatser på varje värde innan de kopplas samman med kommatecken. |
@{variables.MyFavoriteRegion}{EASTERN REGION} eller @{dashboard.MyFavoriteRegion}{EASTERN REGION} eller @{dashboard.variables['MyFavoriteRegion']} eller (@{myNumVar}[#,##0]{1000}) eller (@{variables.MyOwnTimestamp}[YY-MM-DD hh:mm:ss]{) eller (@{myTextVar}{A, B, C}) |
Globala |
@{global.variables.variablename} där variablename är namnet på den globala variabeln, till exempel gv_region. När du refererar till en global variabel måste du använda det fullt kvalificerade namnet enligt beskrivningen i exemplet. Namnkonventionen för globala variabler måste följa specifikationerna för ECMA-skriptspråk för JavaScript. Namnet får inte innehålla fler än 200 tecken, och inte innehålla inbäddade blanksteg, reserverade ord eller specialtecken. Om du inte känner till kraven för språket JavaScript bör du använda en tredjepartsreferens |
@{global.variables.gv_date_n_time} |
Du kan även referera till variabler i uttryck. Riktlinjerna för att referera till variabler i uttryck beskrivs i följande avsnitt:
Du kan använda följande riktlinjer för att referera till sessionsvariabler i uttryck.
Exempel:
"Market"."Region"=VALUEOF("NQ_SESSION"."SalesRegion")
Du kan använda följande riktlinjer för att referera till presentationsvariabler i uttryck.
När du refererar till en presentationsvariabel använder du denna syntax:
@{variablename
}{defaultvalue
}
där variablename är namnet på presentationsvariabeln och defaultvalue (valfritt) är en konstant eller variabel referens som anger ett värde som ska användas om den variabeln som variablename refererar till inte är ifylld.
Du kan typkonvertera (eller konvertera) variabeln till en sträng eller inkludera flera variabler genom att omsluta hela variabeln med enkla citattecken, till exempel:
'@{user.displayName}'
Om tecknet "@" inte följs av ett "{" behandlas det som ett @-tecken. När du använder en presentationsvariabel som kan ha flera värden, skiljer sig syntaxen beroende på kolumntyp.
Använd följande syntax i SQL för den angivna kolumntypen för att generera giltiga SQL-satser:
Text — (@{variablename}['@']{'defaultvalue'})
Numeric — (@{variablename}{defaultvalue})
Datum/tid - (@{variablename}{timestamp 'defaultvalue'})
Datum (endast datum) - (@{variablename}{date 'defaultvalue'})
Tid (endast tid) - (@{variablename}{time 'defaultvalue'})
Exempel:
'@{user.displayName}'
Du kan använda följande riktlinjer för att referera till datalagervariabler (semantiska modeller) i uttryck.
Exempel:
CASE WHEN "Hour" >= VALUEOF("prime_begin") AND "Hour" < VALUEOF("prime_end") THEN 'Prime Time' WHEN ... ELSE...END