Wat is de syntaxis voor verwijzingen naar variabelen?

U kunt naar variabelen verwijzen in analysen, dashboards, prestatiekengetallen en agenten. 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 in de tabel wordt beschreven.

Opmerking:

Als in de syntaxis het apenstaartje (@-teken) niet wordt gevolgd door een accolade ({), wordt het behandeld als een at-teken.
Type variabele Syntaxis Voorbeeld

Sessie

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

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

Zie Systeemsessievariabelen in Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition voor een overzicht van de systeemsessievariabelen die u kunt gebruiken.

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

Repository

@{biServer.variables.variabelenaam}

of

@{biServer.variables['variabelenaam']}

waarbij variabelenaam de naam is van de repositoryvariabele, 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.)

Opmerking: 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

@{MyFavoriteRegion}

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.

Opmerking: 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 tabel.

Type variabele Richtlijnen Voorbeeld

Sessie

  • 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 het gedeelte NQ_SESSION samen met de naam van de sessievariabele tussen haakjes.

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

Repository

  • Neem de repositoryvariabele op als argument van de functie VALUEOF.

  • Plaats de variabelenaam tussen dubbele aanhalingstekens.

  • Verwijs naar een statische repositoryvariabele met de naam.

  • Verwijs naar een dynamische repositoryvariabele met de volledig gekwalificeerde naam.

    Als u een dynamische repositoryvariabele gebruikt, moeten de namen van het initialisatieblok en de repositoryvariabele tussen dubbele aanhalingstekens (") worden geplaatst, worden gescheiden door een punt, en omsloten door haakjes. Als u bijvoorbeeld de waarde wilt gebruiken van een dynamische repositoryvariabele genaamd 'REGION', welke zich bevindt in een initialisatieblok genaamd 'Region Security', gebruikt u de volgende syntaxis:

    VALUEOF("Region Security"."REGION")

    Zie "Repositoryvariabelen" in Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition voor meer informatie.

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

Presentatie

  • Gebruik de volgende syntaxis:

    @{variabelenaam}{standaardwaarde}
    

    waarbij variabelenaam de naam 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, sluit u de volledige syntaxis in tussen enkele aanhalingstekens, bijvoorbeeld:

    '@{user.displayName}'
    

Opmerking: als het @ -teken niet wordt gevolgd door een '{', wordt deze 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'})

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

"Market"."Region"=@{MyFavoriteRegion}{EASTERN REGION}

of

"Products"."P4 Brand"=(@{myTextVar}['@']{BizTech})

of

"Products"."PO Product Number"=(@{myNumVar}{1000})

of

"Sales Person"."E7 Hire Date"=(@{myDateTimeVar}{timestamp '2013-05-16 00:00:01'})

of

"Time"."Total Fiscal Time"=(@{myDateVar}{date '2013-05-16'})

of

"Time"."Time Right Now"=(@{myTimeVar}{time '00:00:01'})

Voor meerdere waarden (van opgegeven gegevenstypen) bij gebruik van SQL:

  • Als het kolomtype Tekst is en variabelenaam val1, val2 en val3 doorgeeft, dan is het resultaat ('val1', 'val2', 'val3').

of

  • Als het kolomtype Datum is en variabelenaam 09-08-2013 en 10-08-2013 doorgeeft, dan is het resultaat (datum '09-08-2013', datum '10-08-2013').

of

  • Als het kolomtype Datum/Tijd is en variabelenaam 09-08-2013 00:00:00 en 10-08-2013 00:00:00 doorgeeft, dan is het resultaat (tijdstempel '09-08-2013 00:00:00', tijdstempel '10-08-2013 00:00:00').

Zie Waar kan ik verwijzen naar variabelen? voor de specifieke gebieden waar u naar variabelen kunt verwijzen.