Pokročilé techniky: odkazování uložených hodnot v proměnných

Můžete například potřebovat vytvořit analýzu, v jejímž názvu se zobrazuje jméno aktuálního uživatele. K tomu lze použít odkaz na proměnnou.

V analýzách, panelech a akcích můžete odkazovat na několik typů proměnných: relace, sémantický model (úložiště), prezentace, požadavekglobální. Autoři obsahu mohou definovat proměnné prezentace, požadavku a globální proměnné sami, ale jiné typy proměnných (relace a sémantický model (úložiště) jsou definovány v sémantickém modelu.

Poznámka: Oracle Analytics nepodporuje proměnné :user a :password v ověřovacích údajích datového zdroje.

Typ proměnné Kde je definována Kdo ji definuje Další informace

Relace

  • Systémová

  • Nesystémová

Sémantický model

Autoři datového modelu

O proměnných relace

Sémantický model (úložiště)

  • Dynamicky

  • Statická

Sémantický model

Autoři datového modelu

O proměnných sémantického modelu (úložiště)

Prezentace

Výzvy na analýzy a panely

Autoři obsahu

O proměnných prezentace

Požadavek

Výzvy na analýzy a panely

Autoři obsahu

O proměnných požadavků

Globální

Analýzy

Správci

O globálních proměnnýchTvorba globálních proměnných

O proměnných relace

Proměnné relace se inicializují, když se uživatel přihlásí.

Tyto proměnné existují pro každého uživatele po dobu trvání relace procházení a jejich platnost vyprší, když uživatel zavře prohlížeč nebo se odhlásí. Proměnné relace jsou dvojího typu: systémové a nesystémové.

Systémové proměnné relace

Několik systémových proměnných relace můžete použít v sestavách a na panelech.

Systémové proměnné relace mají vyhrazené názvy, které nemůžete použít pro žádný jiný druh proměnné.

Systémová proměnná relace Popis Příklad hodnoty dotazu SQL (dialogové okno Proměnná)

PORTALPATH

Určuje výchozí panel, který uživatel uvidí, když se přihlásí (po přihlášení může uživatel tuto předvolbu přepsat).

Zobrazení panelu mydashboard při přihlášení uživatele:

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

TIMEZONE

Určuje výchozí časové pásmo uživatele při přihlášení.

Časové pásmo uživatele je zpravidla vyplněno z jeho profilu. Uživatelé si výchozí časové pásmo mohou změnit pomocí předvoleb (Můj účet).

Nastavení časového pásma při přihlášení uživatele:

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

DATA_TZ

Určuje posun od původního časového pásma pro data.

Tato proměnná umožňuje přepočítat časové pásmo tak, aby uživatelé viděli správné pásmo.

Přepočítání časových údajů na časové pásmo USA východní (EST):

select ‘GMT-05:00’ from dual;

Tento příklad znamená čas GMT – 5 hodin.

DATA_DISPLAY_TZ

Určuje časové pásmo pro zobrazení dat.

Zobrazení časového pásma USA východní (EST):

select ‘GMT-05:00’ from dual;

Tento příklad znamená čas GMT – 5 hodin.

Nesystémové proměnné relace

Nesystémové proměnné relace jsou pojmenovávány a vytvářeny ve vašem sémantickém modelu.

Modelář dat může například vytvořit proměnnou RegionProdeje, která se inicializuje názvem regionu prodeje uživatele, který se přihlásí.

O proměnných sémantického modelu (úložiště)

Proměnná sémantického modelu (úložiště) je proměnná, která má v každém okamžiku jedinou hodnotu.

Proměnné sémantického modelu (úložiště) mohou být statické nebo dynamické. Statická proměnná sémantického modelu (úložiště) obsahuje hodnotu, která je trvalá a nemění se, dokud ji nezmění správce. Dynamická proměnná sémantického modelu (úložiště) obsahuje hodnotu, která se aktualizuje daty vrácenými z dotazů.

O proměnných prezentace

Proměnnou prezentace vytvoříte při vytváření výzvy sloupce nebo výzvy proměnné.

Typ Popis

Výzva sloupce

Proměnná prezentace vytvořená v rámci výzvy sloupce je spojena se sloupcem a hodnoty, které může převzít, pocházejí z hodnot sloupce.

Pokud chcete vytvořit proměnnou prezentace jako součást výzvy sloupce, v dialogovém okně Nová výzva musíte v poli Nastavit proměnnou vybrat volbu Proměnná prezentace. Do pole Název proměnné zadejte název proměnné.

Výzva proměnné

Proměnná prezentace vytvořená v rámci výzvy proměnné není spojena se žádným sloupcem a hodnoty, které může obsahovat, definuje uživatel.

Pokud chcete vytvořit proměnnou prezentace jako součást výzvy proměnné, v dialogovém okně Nová výzva musíte v poli Dotaz na vybrat volbu Proměnná prezentace. Do pole Název proměnné zadejte název proměnné.

Hodnota proměnné prezentace je zadána výzvou sloupce nebo proměnné, ve kterých byla vytvořena. To znamená, že pokaždé, když uživatel vybere jednu nebo více hodnot ve výzvě sloupce nebo proměnné, je proměnná prezentace nastavena na hodnotu nebo hodnoty vybrané uživatelem.

O proměnných požadavků

Proměnná požadavku umožňuje přepsat hodnoty proměnné relace, ale pouze po dobu trvání požadavku na databázi inicializovaného z výzvy sloupce. Proměnnou požadavku můžete vytvořit v rámci procesu vytvoření výzvy sloupce.

Proměnnou požadavku můžete vytvořit v rámci procesu vytváření jednoho z následujících typů výzvy panelu:

  • Požadavek vytvořený v rámci výzvy sloupce je spojen se sloupcem a hodnoty, které může převzít, pocházejí z hodnot sloupce.

    Pokud chcete vytvořit proměnnou požadavku jako součást výzvy sloupce, v dialogovém okně Nová výzva musíte v poli Nastavit proměnnou vybrat volbu Proměnná požadavku. Do pole Název proměnné zadejte název proměnné relace, kterou chcete přepsat.

  • Proměnná požadavku, která je vytvořena v rámci výzvy proměnné, není přidružena k žádnému sloupci, a hodnoty, které může obsahovat, definuje uživatel.

    Pokud chcete vytvořit proměnnou požadavku jako součást výzvy proměnné, v dialogovém okně Nová výzva (nebo Upravit výzvu) musíte v poli Dotaz na vybrat volbu Proměnná požadavku. Do pole Název proměnné pak zadejte název proměnné relace, kterou chcete přepsat.

Hodnota proměnné požadavku je zadána výzvou sloupce, ve kterém byla vytvořena. To znamená, že pokaždé, když uživatel vybere hodnotu ve výzvě sloupce, je hodnota proměnné požadavku nastavena na hodnotu, kterou uživatel vybere. Hodnota je však platná pouze od doby, kdy uživatel stiskne tlačítko Přejít ve výzvě, dokud nebudou výsledky analýzy vráceny do panelu.

Některé systémové proměnné relace (jako USERGUID nebo ROLES) nelze přepsat proměnnými požadavku. Jiné systémové proměnné relace, jako DATA_TZ a DATA_DISPLAY_TZ (časové pásmo) lze přepsat, pokud je po povoleno v nástroji pro správu modelu.

Vícenásobnou hodnotu podporují pouze řetězcové a číselné proměnné požadavku. Všechny ostatní datové typy předávají pouze první hodnotu.

O globálních proměnných

Globální proměnná je sloupec vytvořený spojením určitého datového typu s hodnotou. Hodnotou může být datum, datum a čas, číslo, text nebo čas.

Globální proměnná se vyhodnocuje během provádění analýzy, kdy se příslušným způsobem nahradí hodnota globální proměnné.

Globální proměnné mohou provádět správu (přidávat, upravovat a odstraňovat) pouze uživatelé s rolí Správce služby BI.

Globální hodnotu vytvoříte v rámci procesu vytvoření analýzy pomocí dialogového okna Upravit vzorec sloupců. Globální proměnná se poté uloží do katalogu a bude dostupná pro všechny další analýzy v rámci systému konkrétního zákazníka.

Tvorba globálních proměnných

Výpočet lze uložit jako globální proměnnou a pak jej opětovně použít v různých analýzách.

  1. Otevřete analýzu v režimu úprav.
  2. V podokně Vybrané sloupce klikněte na Volby vedle názvu sloupce.
  3. Výběrem volby Upravit vzorec zobrazte dialogové okno Vzorec sloupce.
  4. Klikněte na položku Proměnná a vyberte volbu Globální.
  5. Klikněte na příkaz Přidat novou globální proměnnou.
  6. Zadejte hodnotu pro Název. Například gv_region, date_and_time_global_variable nebo rev_eastern_region_calc_gv.
    Název globální proměnné musí být při odkazování uveden celý, tj. používá se předpona "global.variables". Například globální proměnná nastavená pro vypočítání výnosů se v dialogovém okně Vzorec sloupce zobrazí takto:

    "Base Facts"."1- Revenue"*@{global.variables.gv_qualified}

  7. Zadejte hodnoty do polí TypHodnota.
    • Pokud jako datový typ volíte Datum a čas, zadejte hodnotu podobně jako v tomto příkladu: 03/25/2004 12:00:00 AM
    • Pokud jako hodnotu zadáte výraz nebo výpočet, musíte použít datový typ Text, jako v tomto příkladu: "Base Facts"."1- Revenue"*3.1415
  8. Klikněte na tlačítko OK. Do dialogového okna Vložit globální proměnnou se přidá nová globální proměnná.
  9. Zvolte novou globální proměnnou, kterou jste právě vytvořili, a poté klikněte na tlačítko OK. Otevře se dialogové okno Upravit vzorec sloupce společně s globální proměnnou vloženou do podokna Vzorec sloupce. Automaticky se označí zaškrtávací políčko Vlastní záhlaví.
  10. Zadejte nový název sloupce, ke kterému jste přiřadili globální proměnnou, aby přesněji vyjadřoval význam této proměnné.
  11. Klikněte na tlačítko OK.

Syntaxe odkazování na proměnné

V analýzách a panelech je možné odkazovat na proměnné.

Způsob odkazování na proměnnou závisí na úloze, kterou provádíte. U úloh, kde jsou vám předložena pole v dialogovém okně, musíte zadat pouze jeden typ a název proměnné (nikoli celou syntaxi), například odkazování na proměnnou v definici filtru.

U ostatních úloh, jako je odkazování na proměnnou v zobrazení názvů, zadáváte syntaxi proměnné. Použitá syntaxe závisí na typu proměnné, jak popisuje následující tabulka.

Typ Syntaxe Příklad

Relace

@{biServer.variables['NQ_SESSION.název_proměnné']}

kde název_proměnné je název proměnné relace, například DISPLAYNAME.

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

Sémantický model (úložiště)

@{biServer.variables.název_proměnné}

nebo

@{biServer.variables['název_proměnné']}

kde název_proměnné je název proměnné, například prime_begin

@{biServer.variables.prime_begin}

nebo

@{biServer.variables['prime_begin']}

Prezentace nebo požadavek

@{variables.název_proměnné}[formát]{výchozí_hodnota}

nebo

@{rozsah.variables['název_proměnné']}

kde:

název_proměnné je název proměnné prezentace nebo požadavku, například MyFavoriteRegion.

(nepovinné) formát je maska formátu závislá na datovém typu proměnné, například #,##0, MM/DD/RR hh:mm:ss. (Formát se nepoužije na výchozí hodnotu.)

(nepovinné) výchozí_hodnota je odkaz na konstantu nebo proměnnou označující hodnotu, která se má použít v případě, že proměnná, na kterou hodnota název_proměnné odkazuje, není zadána.

rozsah označuje kvalifikátory proměnné. Rozsah je třeba zadat, když se proměnná používá na více úrovních (analýzy, stránky panelu a panely) a chcete získat přístup ke konkrétní hodnotě. (Pokud rozsah nezadáte, je pořadí přednosti následující: analýzy, stránky panelu a panely.)

Při použití výzvy panelu s proměnnou prezentace, která může mít více hodnot, se syntaxe liší podle typu sloupce. Více hodnot se formátuje v podobě hodnot oddělených čárkou; klauzule FORMAT se proto před spojením hodnot čárkou použije na jednotlivé hodnoty.

@{variables.MyFavoriteRegion}{EASTERN REGION}

nebo

@{MyFavoriteRegion}

nebo

@{dashboard.variables['MyFavoriteRegion']}

nebo

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

nebo

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

nebo

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

Globální

@{global.variables.název_proměnné}

kde název_proměnné je název globální proměnné, například gv_region. Když se odkazujete na globální proměnnou, vždy musíte použít úplný název, jako v uvedeném příkladu.

Konvence pojmenování globálních proměnných musí splňovat specifikace skriptovacího jazyka ECMA pro jazyk JavaScript. Maximální délka názvu je 200 znaků, přičemž součástí názvu nesmějí být mezery, vyhrazená slova a speciální znaky. Neznáte-li požadavky skriptovacího jazyka JavaScript, prostudujte si zdroje třetích stran

@{global.variables.gv_date_n_time}

Na proměnné je možné odkazovat také ve výrazech. Pokyny pro odkazování na proměnné ve výrazech naleznete v následujících tématech:

Proměnné relace

Následující pokyny můžete použít pro odkazování na proměnné relací ve výrazech.

  • Zahrnuje proměnnou relace jako argument funkce VALUEOF.
  • Název proměnné uveďte ve dvojitých uvozovkách.
  • Před názvem relace uveďte text NQ_SESSION a tečku.
  • Část NQ_SESSION i název proměnné relace uveďte v závorkách.

Například:

"Market"."Region"=VALUEOF(NQ_SESSION."SalesRegion")

Proměnné prezentací

Následující pokyny můžete použít pro odkazování na proměnnou prezentace ve výrazech.

Pro odkazování proměnné prezentace použijte tuto syntax:

@{název_proměnné}{výchozí_hodnota}

kde název_proměnné je název proměnné prezentace a výchozí_hodnota (volitelná) je konstantní nebo proměnlivý odkaz označující hodnotu, která se má použít, pokud není zadána proměnná, na kterou odkazuje název_proměnné.

Chcete-li převést proměnnou na řetězec nebo přidat více proměnných, uzavřete celou proměnnou do jednoduchých uvozovek, například::

'@{user.displayName}'

Pokud znak @ není následován znakem {, je považován za znak @. Při použití proměnné prezentace, která může mít více hodnot, se syntaxe liší podle typu sloupce.

Pro uvedený typ sloupce použijte v dotazu SQL následující syntaxi, aby se vygenerovaly platné příkazy SQL:

  • Text - (@{název_proměnné}['@']{'výchozí_hodnota'})

  • Číselná hodnota - (@{název_proměnné}{výchozí_hodnota})

  • Datum-čas - (@{název_proměnné}{timestamp 'výchozí_hodnota'})

  • Datum (pouze datum) - (@{název_proměnné}{date 'výchozí_hodnota'})

  • Čas (pouze čas) - (@{název_proměnné}{time 'výchozí_hodnota'})

Například:

'@{user.displayName}'

Proměnné sémantického modelu (úložiště)

Následující pokyny můžete použít pro odkazování na proměnné sémantického modelu (úložiště) ve výrazech.

  • Zahrnuje proměnnou jako argument funkce VALUEOF.
  • Název proměnné uveďte ve dvojitých uvozovkách.
  • Na proměnnou statického sémantického modelu (úložiště) odkazujte podle názvu.
  • Na proměnnou dynamického sémantického modelu (úložiště) odkazujte podle plně kvalifikovaného názvu.

Například:

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