Gepost door: Frederik | februari 29, 2008

Stageweek V 25 – 29 februari

Hoi iedereen,

Ondertussen ben ik het hier reeds gewoon. ’s Morgens opstaan (ondertussen ken ek mijn limiet qua tijd ;) ) en naar Brussel vertrekken. Zitten met een boekje op de trein en in no time in Brussel.

Deze week bestond voornamelijk uit het echt beter leren werken met Business Objects infoview.
Onze procedure om de feitentabellen te vullen zijn zo goed als afgewerkt, dus we konden beginnen met het business intelligence luik effectief te testen. Na de voorgaande rapport analyses kregen we nu de opdracht om de rapporten effectief na te bouwen.

De huidige manier om deze gegevens te analyseren is via een pivot table en een excel bestand. Onze taak is dan ook om ervoor te zorgen dat de excel file vervangen kan worden door een BO rapport.Lijkt makkelijk dacht ek zo bij mezelf, maar in de realiteit bleek al snel anders.
Iets op het scherm krijgen is geen probleem, dat hebben we al meerdere malen gedaan, maar een rapport maken dat makkelijk, intuitief en snel analyseerbaar is, is toch iets heel anders.

Tijdens de lessen B.I. werd er niet echt veel aandacht geschonken aan defitge lay-out en dergelijke meer, maar hier is het wel nodig dat managers deze informatie effectief kunnen gebruiken zonder er uren op te moeten staren en uit te zoeken voor welk veld dient.

Deze week hebben we ook een maand aggregatie tabel moeten maken. Een shrunken dimension van de normale tijdsdimensie. Er moest een procedure geschreven worden om een kalender te vullen.
2 maand geleden zou ek nog moeilijkheden gehad hebben met zulke zaken uit mijn duim te zuigen, maar tegenwoordig is het allemaal wel een pak makkelijker. De SQL en PL/SQL  zit zo in de vingers dat het nu een kwestie is van je af te vragen wat er nodig is en niet zozeer, hoe ga ik die query schrijven.

Na het maken van sommige rapporten was het duidelijk dat er nog vreemde gegevens kwamen opduiken. Deze waren te wijten aan en NVL clause die we gebruiken om correcte data uit de query te halen. Sommige van deze date waren echter niet correct. Er moest dus een oplossing gevonden.
De oplossing die ik bedacht heb was om rond een NVL functie een case functie te schrijven die dan zal vergelijken met bepaalde andere waarden. Het bleek te werken (hopelijk althans =))
Het was even concentreren geblazen om ervoor te zorgen dat alle paramaters en haken op de juist plaats stonden, maar het is in orde. Hieronder een extract uit de query.
case when NVL(NVL (TO_CHAR (TO_DATE (retkpdate, ‘YYYYMMDD’), ‘YYYYMMDD’),TO_CHAR ((TO_DATE (rethubdate, ‘YYYYMMDD’) – 1),’YYYYMMDD’)),TO_CHAR ((TO_DATE (retdepotdate, ‘YYYYMMDD’) – 1),’YYYYMMDD’)) < to_char(to_date(referencedate, ‘YYYYMMDD’), ‘YYYYMMDD’) then to_char(to_date(referencedate, ‘YYYYMMDD’), ‘YYYYMMDD’)else NVL (NVL (TO_CHAR (TO_DATE (retkpdate, ‘YYYYMMDD’), ‘YYYYMMDD’),TO_CHAR ((TO_DATE (rethubdate, ‘YYYYMMDD’) – 1),’YYYYMMDD’)), TO_CHAR ((TO_DATE (retdepotdate, ‘YYYYMMDD’) – 1),’YYYYMMDD’)) end new_kpdate.

Uitdagende, intensieve, maar enorm boeiende week!

Jammer dat het bijna gedaan is, want ik zit hier wel op mijn gemak!

Cya next time,

Frederik


Geef een reactie

Fill in your details below or click an icon to log in:

WordPress.com logo

Je reageert onder je WordPress.com account. Log Out / Bijwerken )

Twitter-afbeelding

Je reageert onder je Twitter account. Log Out / Bijwerken )

Facebook foto

Je reageert onder je Facebook account. Log Out / Bijwerken )

Verbinden met %s

Categorieën

Follow

Get every new post delivered to your Inbox.