pondělí 21. prosince 2009

Hromadné změny v BI Answers reportech

Při praxi vývoje BI nadstaveb pro různé zákaznické systémy se stále častěji setkávám s požadavkem vytvořit napřed relativně malé řešení s pokud možno okamžitým výsledkem a teprve potom toto řešení dále rozvíjet.

Relativně malé řešení však může obsahovat cca i 20, 30 sestav, které nemusejí vznikat vždy v kontextu celkového plánovaného řešení. Přitom základní koncepce, struktura a pojmenování katalogu, jeho větví, struktura cílových oblastí pro BI dotazy (z Answers) jsou důležité atributy pro další rozvoj takového řešení.

Totiž: Sestavy vytvořené v BI Answers, mají v sobě zapsány názvy katalogu a jeho větví a současně i názvy cílových oblastí, ze kterých se provádějí dotazy. Tyto názvy se vyskytují u každé položky dotazu v sestavě.

Co se stane, pokud se přejmenuje, přestrukturuje katalog, názvy jeho větví, který už obsahuje množství sestav?
  1. Na dashboardech nebude zobrazena žádná sestava. Pokud vyberete možnost „Upravit panel“, všechny sestavy na něm umístěné uvidíte se žlutým vykřičníkem. A pokud vyberete možnost „Upravit dotaz“, obrazovka se sice přepne do BI Answers, ale neotevře se vám daná sestava, jak bývá zvykem. V BI Answers je pak vidět upravený název větve katalogu se všemi sestavami. O této nové větvi však panely nic neví, proto sestavy nezobrazí. Co zbývá? Projít všechny panely a sestavy na nich a „zahnízdit“ tam znovu všechny sestavy, ale již z nově pojmenovaného, nebo přestrukturovaného katalogu.

  2. Sestavy, které se nově zahnízdí na panelech a obsahují volání (navigaci) na jinou sestavu, nefungují, tedy nefunguje toto volání. Proč? Navigace obsahuje původní název dané větve katalogu. To znamená, každou takovou sestavu otevřít a nově připojit volanou sestavu.

Tuto cestu jsem již absolvoval a je poměrně časově náročná. Je možné tímto způsobem strávit i několik neproduktivních hodin. Existuje i jiné řešení? Ano, hromadná změna přímo ve větvi katalogu, jehož se změna týká.

Napřed umístění sestav na panelech:
Pro takové akce je dobré napřed stopnout službu „Oracle BI Presentation Server“. Poté v souborovém systému, kde je katalog fyzicky umístěn, najít příslušnou větev …/_portal. Na ní jsou soubory (bez koncovky), které představují jednotlivé panely. Pokud daný soubor s názvem příslušného panelu otevřete v textovém editoru, vyskytují se tam původní cesty k sestavám (včetně výzev panelů). Zde je možné pak přejmenovat původní cestu na novou cestu. Po nastartování „Oracle BI Presentation Server“ se již všechny sestavy zobrazí správně. Avšak volání sestav ze sestavy stále nefunguje. K tomu je třeba provést obdobný krok.

Poté navigace v sestavách:
V adresáři katalogu, ve kterém jsou příslušné sestavy znovu soubory bez koncovek), je třeba v daných sestavách najít původní volání sestavy a opravit cestu na nový adresář. Např.


Po takových úpravách jsou znovu funkční jak panely, tak volání sestav. Pro ještě větší urychlení je možné libovolným freewarem nechat prohledat celý adresář a nechat nahradit původní název, novým. To je pak cesta s odezvou několika málo minut.

Co se ale stane, pokud v nástroji “BI Administration Tool” změníte název prezentačního katalogu? Zdánlivě nic. Panely stále zobrazují sestavy a data. Pokud však budete chtít editovat sestavu a budete na ní navigovat přímo z panelu “Upravit dotaz”, přepne vás to sice do Answers, ale v levé části vidíte pouze nápis:”Buď nemáte oprávnění k použití cílové oblasti XXX v rámci aplikace BI Answers, nebo cílová oblast neexistuje.“ Jak z toho ven?

Obdobným způsobem – viz výše. Je nutné v každé sestavě změnit název prezentačního katalogu. V příslušných souborech se musí znovu změnit tag:

kde XXX je název nového prezentačního katalogu. Tento název je součástí dotazů v každé sestavě, takže je nutné v sestavách provést všechny změny, které by kopírovaly změny jak v samotném katalogu (adresářovém), tag v prezentačním katalogu (změna v nástroji BI Administration Tool).

Ještě jedno upozornění: Předem doporučuji celý katalog zazálohovat.

A na závěr – nezapomeňte, že uvedené změny se mohou týkat i uložených filtrů.

Věřím, že někomu moje zkušenost pomůže urychlit mnohdy časově náročné neproduktivní práce, které můžou vzniknout bohužel I rychlou, nekoncepční práci, kterou však zákazník mnohdy vyžaduje.



Petr Jurászek (konzultant společnosti IT Systems)


Žádné komentáře: