Bruk av egendefinert kode i SAS Data Integration Studio D a g H å k o n S o l b e r g C e n t r i c i n n o v a t i o n S A S F A N S 2 6. 1 1. 1 5
Etablert i 2011, men med røtter tilbake til slutten av 1990-tallet SAS Partner 6 ansatte Alle med lang erfaring med ulike BI-løsninger selvfølgelig primært med SAS! Ønsker å rekruttere flere Har erfaring fra mange ulike bransjer, men jobber nå primært innenfor bank/finans og sykehus
Egendefinert kode i DI Studio I DI Studio finnes det flere standard transformasjoner som genererer sas kode for deg Med egendefinert kode menes her kode man selv skriver og på ulike måter inkluderer i DI Studio jobber
Hvorfor bruke egendefinert kode Implementere logikk som ikke lar seg løse med standardobjektene Samle mange steg i et objekt for å gi bedre oversikt i jobben Gjenbruk av eksisterende kode Samtidig som man får fordelene med DI Studio Metadata sporbarhet på tabell- og kolonnenivå Enklere å standardisere Felles struktur
3 ulike måter Pre- & Post Code
3 ulike måter Pre- & Post Code User Written Code
3 ulike måter Pre- & Post Code User Written Code User Written Transformations
Bruk av egen kode i en jobb
Metadata sporbarhet En av de største fordelene med å bruke DI Studio fremfor å kjøre alt som egne sasprogammer er bruk av metadata Se hvor data kommer fra og hvor de brukes videre (Impact Analysis) Spesielt nyttig når man tar over kode andre har laget eller skal gjøre endringer i eksisterende jobber
Metadata sporbarhet Tabellnivå Gjøres automatisk når man trekker avhengigheter mellom transformasjonene
Metadata sporbarhet Tabellnivå Gjøres automatisk når man trekker avhengigheter mellom transformasjonene Kolonnenivå Krever mapping av kolonner også i transformasjonene med egendefinert kode selv om mappingen ikke er nødvending for å laste måltabellen
Metadata sporbarhet Hva man skriver som Expression i mappingen har ingen betydning for innholdet i kolonnen, kun for metadata sporbarheten Det vil si at alle beregninger og manipulasjon av variable gjøres i den egendefinerte koden
Automatisk genererte markovariable For alle tabeller som enten er kilde eller utdata til en egen transformasjon, lages det referanser til metadataobjektene som brukes
Automatisk genererte markovariable For alle tabeller som enten er kilde eller utdata til en egen transformasjon, lages det referanser til metadataobjektene som brukes I en User Written Code vil disse automatisk få navn som _INPUT1, _INPUT2, _OUTPUT1 osv.
Automatisk genererte markovariable For alle tabeller som enten er kilde eller utdata til en egen transformasjon, lages det referanser til metadataobjektene som brukes I en User Written Code vil disse automatisk få navn som _INPUT1, _INPUT2, _OUTPUT1 osv. I en egendefinert transformasjon kan man velge navnene selv
Automatisk genererte markovariable DI Studio kan også generere makrovariabler for alle kolonner som er definert i metadata Tilgjengelig både i egne transformasjoner
Automatisk genererte markovariable DI Studio kan også generere makrovariabler for alle kolonner som er definert i metadata Tilgjengelig både i egne transformasjoner og i User Written Code objektet
Automatisk genererte markovariable DI Studio kan også generere makrovariabler for alle kolonner som er definert i metadata Tilgjengelig både i egne transformasjoner og i User Written Code objektet Navn, kildetabell, feltlengde, type format, label og uttrykk blir generert som egne markovariabler
Automatisk genererte markovariable
Feilhåndtering Det genereres automatisk en makro som heter %rcset i alle DI Studio jobber
Feilhåndtering Det genereres automatisk en makro som heter %rcset i alle DI Studio jobber Denne kan også brukes i egen kode for å fange opp feil
Eksempler på egendefinerte transformasjoner Tid for demo
Spørsmål?