čtvrtek 23. října 2008

BI Publisher – Query Builder – doplnění chybějících agregačních funkcí

Jestliže pro vytváření SQL dotazů v BI Publisheru používáte Query Builder, pak jste si možná všimli, že v záložce „Podmínky - Funkce“ chybí agregační funkce pro číselné datové typy.

BI Publisher v pořádku rozezná datové typy sloupců z vybrané tabulky:

ale pak pro jednotlivé datové typy vždy nabízí stejný seznam SQL funkcí – tj. funkcí, které jsou vhodné pro datový typ obsahují text.

Seznam dostupných SQL funkcí pro jednotlivé datové typy je ve zdrojovém kódu BI Publisheru uveden správně, viz. funkce qb_rend[DATATYPE]Select().


Bohužel z nějakého důvodu (nezkoumal jsem jej) dojde k chybnému zvolení datového typu a vždy je volána funkce qb_rendCharSelect, která generuje SQL funkce pro text.


Workaround
Upozornění: jde pouze o workaround a nasazením nové verze může být vše jinak!

1/ V adresáři J2EE serveru (server ve kterém běží aplikace BI Publisheru) najděte soubor „qb_gensql.js“ (např. D:\ OracleBI\oc4j_bi\j2ee\home\applications\xmlpserver\xmlpserver\qb\qbfiles\qb_gensql.js)

2/ Soubor zazálohujte

3/ Soubor otevřete a najděte v něm funkci qb_rendCharSelect

4/ Doplňte agregační funkce (řádky zkopírujte z funkce qb_rendNumberSelect)

5/ Soubor uložte

6/ Promažte lokální cache internetového prohlížeče a obnovte stránku Query Builderu – výsledkem je doplněný seznam SQL funkcí o funkce agregační



Erik Eckhardt.

Žádné komentáře: