Oppslagstransformasjon i Informatica (eksempel)
⚡ Smart oppsummering
Oppslagstransformasjonen i Informatica leser en relasjonstabell, flat fil, visning eller synonym og returnerer de samsvarende verdiene for hver innkommende rad, og fungerer som en sammenføyning der den ene siden er oppslagskilden.

Hva er oppslagstransformasjon?
En oppslagstransformasjon er en transformasjon som brukes til å slå opp en kilde, kildekvalifikator eller mål for å få relevante data. I bunn og grunn er det en slags sammenføyningsoperasjon der en av sammenføyningstabellene er kildedataene, og den andre sammenføyningstabellen er oppslagstabellen. Selve oppslagskilden kan være en relasjonstabell, en visning, et synonym eller en flat fil.
Transformasjonen er passiv, mens den returnerer én rad for hver innkommende rad. Fra PowerCenter 9.x og utover kan den også opprettes for å returnere hver rad som samsvarer med betingelsen, og i den modusen er det en aktiv transformasjon. Valget tas når transformasjonen opprettes og kan ikke endres etterpå.
Det er to måter å plassere det på et kartping, og differansen bestemmer hvordan den returnerte verdien når resten av pipelinen.
| Aspekt | Tilkoblet oppslag | Ukoblet oppslag |
| Stilling | Ligger inne i pipelinen og mottar verdier fra den forrige transformasjonen | Sitter utenfor pipelinen og kalles fra et uttrykk |
| Hvordan det kalles | Rader flyter inn i inngangsportene | Kalt med :LKP-referansekvalifikatoren |
| Verdier returnert | Flere utgangsporter kan kobles nedstrøms | Én returverdi går tilbake til det kallende uttrykket |
| Typisk bruk | Hver rad trenger de oppslåtte kolonnene | Oppslaget er bare nødvendig for noen rader, eller det samme oppslaget kalles fra flere steder |
I tidligere emner brukte vi Snekker transformasjon for å koble sammen tabellene «emp» og «dept» for å hente avdelingsnavn. I denne delen skal vi implementere det samme ved hjelp av oppslagstransformasjon.
Hvordan lage oppslagstransformasjon
Følgende er trinnene for å opprette en oppslagstransformasjon i Informatica.
Trinn 1) Lag et nytt kartping med EMP som kilde og EMP_DEPTNAME som mål. Kartetping Designer-lerretet inneholder deretter kilden, kildekvalifikatoren og måldefinisjonen.
Trinn 2) Opprett en ny transformasjon ved hjelp av Transformasjon-menyen, og gjør deretter følgende i Opprett transformasjon-vinduet:
- Velg Oppslagstransformasjon som transformasjon
- Skriv inn transformasjonsnavnet "lkp_dept"
- Velg opprettingsalternativ
Trinn 3) Dette åpner oppslagstabellvinduet. I dette vinduet:
- Velg kilde-knapp
- Velg DEPT-tabell
- Velg OK-knappen
Trinn 4) Oppslagstransformasjonen vil bli opprettet med kolonnene i DEPT-tabellen. Klikk nå på fullført-knappen. lkp_dept-objektet har nå DEPTNO, DNAME og LOC som oppslagsporter.
Trinn 5) Dra og slipp DEPTNO-kolonnen fra kildekvalifikatoren til oppslagstransformasjonen. Dette vil opprette en ny kolonne DEPTNO1 i oppslagstransformasjonen. Koble deretter DNAME-kolonnen fra oppslagstransformasjonen til måltabellen.
Oppslagstransformasjonen vil slå opp og returnere avdelingsnavn basert på DEPTNO1-verdien. DEPTNO1 er inngangsporten som bærer den ansattes avdelingsnummer, mens DEPTNO forblir porten som leses fra DEPT-oppslagstabellen.
Trinn 6) Double Klikk på oppslagstransformasjonen. Deretter i redigeringsvinduet for transformasjon:
- Velg tilstandsfanen
- Sett betingelseskolonnen til DEPTNO = DEPTNO1
- Velg OK-knappen
Trinn 7) Koble resten av kolonnene fra kildekvalifikatoren til måltabellen.
Lagre nå kartping og utfør den etter at økten og arbeidsflyten er opprettet. Dette kartetping vil hente avdelingsnavnene ved hjelp av oppslagstransformasjonen.
Oppslagstransformasjonen er satt til å slå opp i DEPT-tabellen, og sammenføyningsbetingelsen er satt basert på avdelingsnummer. Hvis mer enn én DEPT-rad kan oppfylle betingelsen, bestemmer egenskapen Oppslagspolicy for flere treff i Egenskaper-fanen hvilken verdi som returneres.
Gjenbrukbar transformasjon
En normal transformasjon er et objekt som tilhører et kartping og kan brukes inne i kartetping bare. Ved å gjøre en transformasjon gjenbrukbar kan den imidlertid brukes på nytt i flere kartpings.
For eksempel kan en oppslagstransformasjon som henter ansattdetaljer basert på ansattnummer brukes i flere kartpingder ansattdetaljer er påkrevd.
Ved å bruke en gjenbrukbar transformasjon reduseres overarbeidet med å opprette den samme funksjonaliteten på nytt. Hvert kartping inneholder en forekomst av det ene lagrede objektet, slik at en endring gjort i den gjenbrukbare transformasjonen når alle dem.
Hvordan lage gjenbrukbar transformasjon
Følgende er trinnene for å opprette en gjenbrukbar transformasjon.
Trinn 1) Åpne kartetping som har transformasjonen, her lager vi Rangtransformasjon gjenbrukbare.
Trinn 2) Double Klikk på transformasjonen for å åpne vinduet for redigering av transformasjon. Deretter:
- Velg kategorien Transformasjon i vinduet
- Merk av i boksen for å gjøre transformasjon gjenbrukbar
- Velg ja i bekreftelsesvinduet
- Velg OK i vinduet for transformasjonsegenskaper.
Dette vil gjøre transformasjonen gjenbrukbar. Bekreftelsesvinduet i det tredje elementet er verdt å lese før det godtas: å forfremme en transformasjon til gjenbrukbar er en enveis endring i Designer, og objektet kan ikke degraderes etterpå. Der et enkelt kartping trenger sin egen kopi, drar du det gjenbrukbare objektet over på lerretet mens du holder Ctrl-tasten nede for å opprette en ikke-gjenbrukbar instans i stedet.









