Geavanceerde technieken: verwijzen naar opgeslagen waarden in variabelen

U wilt misschien een analyse maken waarvan de titel de naam van de huidige gebruiker weergeeft. U kunt dit doen door te verwijzen naar een variabele.

U kunt verwijzen naar verschillende typen variabelen in uw analysen, dashboards en acties: sessie-, semantische model- (repository), presentatie-, aanvraag- en algemene variabelen. Inhoudauteurs kunnen zelf presentatie-, aanvraag- en algemene variabelen definiëren, maar andere typen (sessie- en semantische modelvariabelen (repository)) worden voor u in het semantische model gedefinieerd.

Opmerking: de variabelen ':gebruiker' en ':wachtwoord' in referenties voor gegevensbronverbindingen worden niet ondersteund in Oracle Analytics.

Type variabele Gedefinieerd in Gedefinieerd door Meer informatie

Sessie

  • Systeem

  • Niet-systeem

Semantisch model

Auteurs gegevensmodel

Sessievariabelen

Semantisch model (repository)

  • Dynamisch

  • Statisch

Semantisch model

Auteurs gegevensmodel

Informatie over variabelen voor semantische modellen (repository)

Presentatie

Prompts voor analysen en dashboards

Inhoudauteurs

Presentatievariabelen

Aanvraag

Prompts voor analysen en dashboards

Inhoudauteurs

Aanvraagvariabelen

Algemeen

Analysen

Beheerders

Algemene variabelen en Algemene variabelen maken

Sessievariabelen

Sessievariabelen worden geïnitialiseerd wanneer een gebruiker zich aanmeldt.

Deze variabelen bestaan voor elke gebruiker voor de duur van de browsersessie en verlopen wanneer de gebruiker de browser afsluit of zich afmeldt. Er zijn twee typen sessievariabelen: systeem en niet-systeem.

Systeemsessievariabelen

U kunt diverse systeemsessievariabelen gebruiken in uw rapporten en dashboards.

De systeemsessievariabelen hebben gereserveerde namen. U kunt ze dus niet gebruiken voor andere typen variabelen.

Systeemsessievariabele Beschrijving Voorbeeldwaarde SQL-zoekvraag (dialoogvenster 'Variabele')

PORTALPATH

Hiermee wordt het standaarddashboard aangegeven dat een gebruiker ziet bij het aanmelden (deze voorkeur kan na aanmelding worden overschreven).

Om 'mydashboard' weer te geven wanneer een gebruiker zich aanmeldt:

 select ‘/shared/_portal/mydashboard’ from dual;

TIMEZONE

Hiermee wordt de standaardtijdzone voor een gebruiker opgegeven wanneer deze zich aanmeldt.

De tijdzone van een gebruiker wordt meestal bepaald door het gebruikersprofiel. Gebruikers kunnen hun standaardtijdzone wijzigen via hun voorkeuren ('Mijn account').

Om de tijdzone in te stellen wanneer een gebruiker zich aanmeldt:

select ‘(GMT-08:00) Pacific Time (US & Canada)’ from dual;

DATA_TZ

Hiermee wordt een offset voor tijdgegevens ten opzichte van de oorspronkelijke tijdzone opgegeven.

Met deze variabele kunt u een tijdzone converteren, zodat gebruikers de juiste zone zien.

Om tijdgegevens te converteren naar Eastern Standard Time (EST):

select ‘GMT-05:00’ from dual;

Dit voorbeeld betekent Greenwich Mean Time (GMT) - 5 uur.

DATA_DISPLAY_TZ

Hiermee wordt de tijdzone opgegeven voor het weergeven van gegevens.

Om Eastern Standard Time (EST) weer te geven:

select ‘GMT-05:00’ from dual;

Dit voorbeeld betekent Greenwich Mean Time (GMT) - 5 uur.

Niet-systeemsessievariabelen

De niet-systeemsessievariabelen worden benoemd en gemaakt in uw semantisch model.

Uw gegevensmodelmaker kan bijvoorbeeld een variabele 'SalesRegion' maken die wordt geïnitialiseerd naar de naam van de verkoopregio van een gebruiker wanneer deze zich aanmeldt.

Informatie over variabelen voor semantische modellen (repository)

Een variabele van een semantisch model (repository) is een variabele die één waarde heeft op een bepaald tijdstip.

Variabelen van semantische modellen (repository's) kunnen statisch of dynamisch zijn. Een statische variabele van een semantisch model (repository) heeft een waarde die gelijk blijft en niet verandert totdat de waarde door de beheerder wordt gewijzigd. Een dynamische variabele van een semantisch model (repository) heeft een waarde die wordt vernieuwd door gegevens die door query's worden geretourneerd.

Presentatievariabelen

U kunt een presentatievariabele maken wanneer u een kolom- of variabeleprompt maakt.

Type Beschrijving

Kolomprompt

Een presentatievariabele die wordt gemaakt als onderdeel van een kolomprompt wordt gekoppeld aan een kolom. De waarden die deze variabele kan hebben, zijn afkomstig van de kolomwaarden.

Als u een presentatievariabele wilt maken als onderdeel van een kolomprompt, selecteert u in het dialoogvenster 'Nieuwe prompt' de waarde Presentatievariabele in het veld Een variabele instellen. Voer in het veld Variabelenaam een naam in voor de variabele.

Variabeleprompt

Een presentatievariabele die wordt gemaakt als onderdeel van een variabeleprompt wordt niet gekoppeld aan een kolom. U definieert zelf de waarden die de prompt kan hebben.

Als u een presentatievariabele wilt maken als onderdeel van een variabeleprompt, selecteert u in het dialoogvenster 'Nieuwe prompt' de waarde Presentatievariabele in het veld Prompt voor. Voer in het veld Variabelenaam een naam in voor de variabele.

De waarde van de presentatievariabele wordt ingevuld door de kolomprompt of variabeleprompt waarmee deze is gemaakt. Dit houdt in dat telkens wanneer een gebruiker een of meer waarden selecteert in de kolomprompt of variabeleprompt, de waarde van de presentatievariabele wordt ingesteld op de waarde of waarden die de gebruiker selecteert.

Aanvraagvariabelen

Met een aanvraagvariabele kunt u de waarde van een sessievariabele overschrijven, maar slechts voor de duur van een databaseaanvraag die is gestart vanuit een kolomprompt. U kunt een aanvraagvariabele maken als onderdeel van de procedure voor het maken van kolomprompts.

U kunt een aanvraagvariabele maken als onderdeel van het proces waarmee u een van de volgende typen dashboardprompts maakt:

  • Een aanvraagvariabele die wordt gemaakt als onderdeel van een kolomprompt wordt gekoppeld aan een kolom, en de waarden die deze variabele kan hebben zijn afkomstig van de kolomwaarden.

    Als u een aanvraagvariabele wilt maken als onderdeel van een kolomprompt, selecteert u in het dialoogvenster 'Nieuwe prompt' de waarde Aanvraagvariabele in het veld Een variabele instellen. Voer in het veld Variabelenaam de naam in van de sessievariabele die u wilt overschrijven.

  • Een aanvraagvariabele die wordt gemaakt als onderdeel van een variabeleprompt, wordt niet gekoppeld aan een kolom. U definieert zelf de waarden die de prompt kan hebben.

    Als u een aanvraagvariabele wilt maken als onderdeel van een variabeleprompt, selecteert u in het dialoogvenster 'Nieuwe prompt' (of het dialoogvenster 'Prompt bewerken') de waarde Aanvraagvariabele in het veld Prompt voor. Voer in het veld Variabelenaam de naam in van de sessievariabele die u wilt overschrijven.

De waarde van een aanvraagvariabele wordt ingevuld door de kolomprompt waarmee de variabele is gemaakt. Dit houdt in dat telkens wanneer een gebruiker een waarde selecteert in de kolomprompt, de waarde van de aanvraagvariabele wordt ingesteld op de waarde die de gebruiker selecteert. Deze waarde geldt echter slechts vanaf het moment dat de gebruiker klikt op de knop Start van de prompt, tot het moment dat de analyseresultaten worden geretourneerd op het dashboard.

Bepaalde systeemsessievariabelen (zoals USERGUID of ROLES) kunnen niet worden overschreven door aanvraagvariabelen. Andere systeemsessievariabelen , zoals DATA_TZ en DATA_DISPLAY_TZ (tijdzone), kunnen worden overschreven als ze worden geconfigureerd in het beheerprogramma Model.

Alleen bij aanvraagvariabelen van het gegevenstype 'Tekst' of 'Getal' worden meerdere waarden ondersteund. Voor alle andere gegevenstypen wordt alleen de eerste waarde doorgegeven.

Algemene variabelen

Een algemene variabele is een kolom die is gemaakt door een specifiek gegevenstype te combineren met een waarde. De waarde kan een 'Datum', 'Datum en tijd', 'Getal', 'Tekst' of 'Tijd' zijn.

De algemene variabele wordt geëvalueerd op het moment dat de analyse wordt uitgevoerd, waarbij de waarde van de algemene variabele wordt vervangen waar dat van toepassing is.

Alleen gebruikers met de rol BI-servicebeheerder kunnen algemene variabelen beheren (toevoegen, bewerken en verwijderen).

Als u met behulp van het dialoogvenster 'Kolomformule bewerken' een analyse maakt, maakt u een algemene variabele. De algemene variabele wordt opgeslagen in de catalogus en beschikbaar gemaakt voor alle andere analysen binnen een specifiek eigenaarsysteem.

Algemene variabelen maken

U kunt een berekening als een algemene variabele opslaan en deze vervolgens opnieuw gebruiken in verschillende analysen.

  1. Open de analyse die u wilt bewerken.
  2. Klik naast de kolomnaam op Opties in het deelvenster 'Geselecteerde kolommen'.
  3. Selecteer Formule bewerken om het tabblad 'Kolomformule' weer te geven.
  4. Klik op Variabele en selecteer Algemeen.
  5. Klik op Nieuwe algemene variabele toevoegen.
  6. Voer de waarde voor Naam in. Bijvoorbeeld: gv_region, date_and_time_global_variable of rev_eastern_region_calc_gv.
    De naam voor een algemene variabele moet volledig gekwalificeerd zijn wanneer naar deze variabele wordt verwezen. Daarom wordt deze voorafgegaan door de tekst 'global.variables'. Bijvoorbeeld: een algemene variabele die is ingesteld voor de berekening van opbrengsten, wordt als volgt in het dialoogvenster 'Kolomformule' weergegeven:

    "Basisfeiten."1- Opbrengsten"*@{global.variables.gv_qualified}

  7. Voer waarden voor Typeen Waarde in.
    • Als u het gegevenstype 'Datum en tijd' selecteert, moet u vervolgens de waarde invoeren, zoals in het volgende voorbeeld is aangegeven: 03/25/2004 12:00:00 AM.
    • Als u een uitdrukking of een berekening als waarde invoert, moet u vervolgens het gegevenstype 'Tekst' gebruiken, zoals in het volgende voorbeeld is aangegeven: "Basisfeiten"."1- Opbrengsten"*3,1415.
  8. Klik op OK. De nieuwe algemene variabele wordt toegevoegd aan het dialoogvenster 'Algemene variabele invoegen'.
  9. Selecteer de nieuwe algemene variabele die u zojuist hebt gemaakt en klik op OK. Het dialoogvenster 'Kolomformule bewerken' wordt weergegeven, waarbij de algemene variabele is ingevoegd in het deelvenster 'Kolomformule'. Het selectievakje Aangepaste koppen is automatisch ingeschakeld.
  10. Voer een nieuwe naam in voor de kolom waaraan u een algemene variabele hebt toegewezen om de variabele beter weer te geven.
  11. Klik op OK.

Syntaxis voor verwijzingen naar variabelen

U kunt verwijzen naar variabelen in analysen en dashboards.

Hoe u naar een variabele verwijst, hangt af van de taak die u uitvoert. Voor taken waarbij u werkt met velden in een dialoogvenster, hoeft u alleen het type en de naam van de variabele op te geven (niet de volledige syntaxis). Dit kan bijvoorbeeld voorkomen als u verwijst naar een variabele in een filterdefinitie.

Voor andere taken, zoals verwijzen naar een variabele in een titelweergave, geeft u de syntaxis voor de variabele op. Welke syntaxis u gebruikt, hangt af van het type variabele zoals beschreven in de onderstaande tabel.

Type Syntaxis Voorbeeld

Sessie

@{biServer.variables['NQ_SESSION.variabelenaam']}

waarbij variabelenaam de naam is van de sessievariabele, bijvoorbeeld DISPLAYNAME.

@{biServer.variables['NQ_SESSION.SalesRegion']}

Semantisch model (repository)

@{biServer.variables.variabelenaam}

of

@{biServer.variables['variabelenaam']}

waarbij variabelenaam de naam is van de variabele, bijvoorbeeld prime_begin

@{biServer.variables.prime_begin}

of

@{biServer.variables['prime_begin']}

Presentatie of aanvraag

@{variables.variabelenaam}[opmaak]{standaardwaarde}

of

@{scope.variables['variabelenaam']}

waarbij:

variabelenaam de naam is van de presentatie- of aanvraagvariabele, zoals 'MyFavoriteRegion'.

(optioneel) opmaak een opmaakmasker is dat afhankelijk is van het gegevenstype van de variabele, bijvoorbeeld #,##0, MM/DD/JJ uu:mm:ss. (Zoals u ziet wordt de opmaak niet toegepast op de standaardwaarde.)

(optioneel) standaardwaarde een constante of variabele verwijzing is die een waarde aangeeft die moet worden gebruikt als de variabele waarnaar variabelenaam verwijst, geen waarde bevat.

bereik de kwalificaties voor de variabele aangeeft. U moet een waarde voor bereik opgeven wanneer een variabele wordt gebruikt op meerdere niveaus (analysen, dashboardpagina's en dashboards) en u een specifieke waarde wilt gebruiken. (Als u geen bereik opgeeft, is de volgorde van prioriteit: analysen, dashboardpagina's, dashboards.)

Wanneer een dashboardprompt wordt gebruikt met een presentatievariabele die meerdere waarden kan bevatten, varieert de syntaxis afhankelijk van het kolomtype. Meerdere waarden worden opgemaakt in door komma's gescheiden waarden. Daarom wordt elke opmaakclausule toegepast op alle waarden voordat deze door komma's worden samengevoegd.

@{variables.MyFavoriteRegion}{EASTERN REGION}

of

@{dashboard.MyFavoriteRegion}{EASTERN REGION}

of

@{dashboard.variables['MyFavoriteRegion']}

of

(@{myNumVar}[#,##0]{1000})

of

(@{variables.MyOwnTimestamp}[JJ-MM-DD uu:mm:ss]{)

of

(@{myTextVar}{A, B, C})

Algemeen

@{global.variables.variabelenaam}

waarbij variabelenaam de naam is van de algemene variabele, bijvoorbeeld gv_region. Wanneer u naar een algemene variabele verwijst, moet u de volledig gekwalificeerde naam gebruiken zoals in het voorbeeld is aangegeven.

De naamgevingsconventie voor algemene variabelen moet overeenkomen met de ECMAScript-taalspecificaties voor JavaScript. De naam mag het aantal tekens van 200 niet overschrijden en mag geen ingesloten spaties, gereserveerde worden en speciale tekens bevatten. Als u niet bekend bent met taalvereisten voor JavaScript, raadpleeg dan een naslagwerk van derden.

@{global.variables.gv_date_n_time}

U kunt ook verwijzen naar variabelen in uitdrukkingen. De richtlijnen voor verwijzingen naar variabelen in uitdrukkingen worden beschreven in de volgende onderwerpen:

Sessievariabelen

U kunt de volgende richtlijnen gebruiken voor verwijzingen naar sessievariabelen in uitdrukkingen:

  • Neem de sessievariabele op als argument van de functie VALUEOF.
  • Plaats de variabelenaam tussen dubbele aanhalingstekens.
  • Gebruik NQ_SESSION en een punt als prefix voor de sessievariabele.
  • Plaats NQ_SESSION tussen dubbele aanhalingstekens.
  • Plaats het gedeelte NQ_SESSION samen met de naam van de sessievariabele tussen haakjes.

Bijvoorbeeld:

"Markt"."Regio"=VALUEOF("NQ_SESSION"."SalesRegion")

Presentatievariabelen

U kunt de volgende richtlijnen gebruiken voor verwijzingen naar presentatievariabelen in uitdrukkingen.

Gebruik de volgende syntaxis om te verwijzen naar een presentatievariabele:

@{variabelenaam}{standaardwaarde}

waarbij variabelenaamde naam is van de presentatievariabele en standaardwaarde (optioneel) een constante of variabele verwijzing is die een waarde aangeeft die moet worden gebruikt als de variabele waarnaar variabelenaam verwijst, geen waarde bevat.

Als u de variabele naar een string wilt converteren, of als u meerdere variabelen wilt opnemen, sluit u de volledige variabele in tussen enkele aanhalingstekens, bijvoorbeeld:

'@{user.displayName}'

Als het @-teken niet wordt gevolgd door een '{', wordt het teken behandeld als een @-teken. Als u een presentatievariabele gebruikt die meerdere waarden kan hebben, varieert de syntaxis afhankelijk van het kolomtype.

Gebruik voor het opgegeven kolomtype de volgende syntaxis in SQL om geldige SQL-statements te genereren:

  • Tekst: (@{variabelenaam}['@']{'standaardwaarde'})

  • Numeriek: (@{variabelenaam}{standaardwaarde})

  • Datum/tijd: (@{variabelenaam}{timestamp 'standaardwaarde'})

  • Datum (alleen de datum): (@{variabelenaam}{date 'standaardwaarde'})

  • Tijd (alleen de tijd): (@{variabelenaam}{time 'standaardwaarde'})

Bijvoorbeeld:

'@{user.displayName}'

Variabelen voor semantische modellen (repository)

U kunt de volgende richtlijnen gebruiken om naar variabelen in voor semantische modellen (repository) in uitdrukkingen te verwijzen.

  • Neem de variabele op als argument van de functie VALUEOF.
  • Plaats de variabelenaam tussen dubbele aanhalingstekens.
  • Verwijs door middel van een naam naar een statische variabele voor semantische modellen (repository).
  • Verwijs door middel van een volledig gekwalificeerde naam naar een dynamische variabele voor semantische modellen (repository).

Bijvoorbeeld:

CASE WHEN "Uur" >= VALUEOF("prime_begin") AND "Uur" < VALUEOF("prime_end") THEN 'Prime Time' WHEN ... ELSE...END