I denne Connected Learning Path tar vi et datauttrekk fra et system og utfører en rekke transformasjoner for å klargjøre datafilen for innlasting i et annet system.
| Primært læringsmål | For å fremheve noen av de enkle, men kraftige kommandoene i Tabular Transformation Connector som kan brukes til å løse vanlige transformasjonsbehov |
| Forutsetninger | Konfigurer HTTP, File Utilities, og Tabular Transformation Connector Connections |
| Mal for støttekjede | CLP | Tabellformede transformasjoner |
Trinn 1: Opprett en kjede
- Legg til en ny kjede
- Gi kjeden et navn: CLP | Tabellformede transformasjoner
- Opprett en kjedevariabel
- Navn: cv-TT-SampleData
- Verdi: https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/sample.txt
- Redd kjeden
Trinn 2: Hent data fra et kildesystem
Bruk HTTP Connector for å illustrere hvordan du henter data fra en datakilde som det ikke finnes en Workiva Connector for.
- Legg til en GET-kommando fra HTTP Connector til Start-noden
- Konfigurer kommandoen med følgende:
Trinn 3: Oppdater overskriftene i datafilen
Oppdater overskriftene i filen slik at de samsvarer med feltnavnene i systemet som datafilen skal lastes inn i etter at transformasjonene er fullført. Med Map Headers-kommandoen kan vi oppdatere feltnavnet basert på indeksen, noe som gjør kommandoen mer fleksibel i tilfelle et feltnavn endres i fremtiden.
- Legg til en Map Headers -kommando fra Tabular Transformation Connector til kjeden
- Koble startnoden (HTTP - Get Source System Data) til Map Headers Kommando
- Rediger kommandoen:
- Gi kommandoen et navn: Kartlegge overskrifter
- Klikk på parameteren Input file. Ruten Variabelvalg åpnes til venstre. Under Kommando utvider du kommandoen Get - Source System Data og velger Response Output
- La parameteren Utdatafil stå tom
- Merk av i boksen til Forhåndsvisning av resultater
- La Delimiter stå som Comma siden kildesystemets datafil er kommaseparert
- I parameteren Input Headers skriver du inn tallene null (0) til sju (7), siden filen har åtte felt og listene er nullbaserte. Husk å trykke på Enter-tasten etter at du har skrevet inn hvert tall!
- Merk av i boksen Use Indexes. Dette forteller kommandoen at inngangsoverskriftene er basert på posisjon i filen i stedet for det faktiske kolonnenavnet.
- I utdataoverskriftene angir du navnet på de nye feltene som skal opprettes. Rekkefølgen er viktig, ettersom den første oppføringen i listen erstatter headernavnet til det første feltet i kildesystemfilen, og så videre for hver av de resterende oppføringene. Skriv inn følgende overskrifter, og trykk på Enter-tasten etter hver:
- Produkt
- Marked
- Måned
- Scenario
- Salg
- COGS
- Utgifter
- Driftsinntekter
- Lagre kommandoen
Trinn 4: Flytt datakolonner til rader
Deretter oppdaterer du datafilen for å transponere de mange kolonnene med data til rader for å opprette én enkelt datakolonne. Denne operasjonen kalles en unpivot. Unpivot-operasjonen justerer dataene til det forventede formatet, en enkelt kolonne som inneholder alle data, i nedstrømssystemet.
- Legg til en Unpivot -kommando fra Tabular Transformation Connector til kjeden
- Koble kommandoen Map Headers til kommandoen Unpivot
- Rediger kommandoen
- Gi kommandoen et navn: Unpivot - Flytt mål til rader
- Velg Map Headers Output for Input file parameter
- Map Headers Output er fortsatt kommaseparert, så vi lar Delimiter stå som Comma
- I parameteren Aggregation velger du Sum. Når du velger Sum, vil alle radene som opprettes ved unpivot, og som er like i alle kolonnene, bli aggregert til ett enkelt datapunkt.
- I parameteren New Column Label skriver du inn Measures. Dette er overskriften for den nye kolonnen som skal opprettes og fylles ut med overskriftsverdiene fra kolonnene som skal avpivoteres.
- I parameteren Data Column Label skriver du inn Amount
- Feltene Data Headers, Starting Pivot Column Name, Ending Pivot Column Name, Starting Pivot Column Index, og Ending Pivot Column Index brukes til å utføre pivotoperasjonen. Det er ikke nødvendig å spesifisere alle disse parameterne.
- Hvis du bruker parameteren Data Headers, bør du la de resterende parameterne stå tomme. Parameteren Data Headers gjør det mulig å angi navnet på kolonnene. Denne parameteren er nyttig for felt som ikke er samtidige/side om side.
- Parameterne Starting/Ending Column Name gjør det mulig å angi navnet på den første og siste kolonnen (for et samtidig område). Hvis du bruker disse parameterne, må parameterne Data Headers og Starting/Ending Column Index stå tomme. Hvis Ending Column Name ikke fylles ut, vil unpivot utføres for alle felt etter (og inkludert) Starting Column Name.
- Parameterne Starting/Ending Column Index gjør det mulig å angi posisjonen til den første og siste kolonnen (for et samtidig område). Hvis du bruker disse parameterne, må parameterne Data Headers og Starting/Ending Column Name stå tomme. Hvis Ending Column Index ikke fylles ut, vil unpivot utføres for alle felt etter (og inkludert) Starting Column Index. Vi bruker disse parameterne i denne øvelsen.
- I Starting Pivot Column Index skriver du inn 4. Dette forteller kommandoen at den skal pivotere fra og med den femte kolonnen, siden indeksen er nullbasert.
- La Ending Pivot Column Index stå tom.
- Merk av for Forhåndsvisning av resultater
- Lagre kommandoen
Trinn 5: Oppdater scenarioet
Deretter endrer du navnet på scenarioet. Dette illustrerer en enkel, enkeltstående transformasjon som egner seg godt for Integration Studio. Mer omfattende eller komplekse omdøpingstransformasjoner blir betydelig enklere med Data Prep.
- Legg til en Finn og erstatt -kommando fra Tabular Transformation Connector til kjeden
- Koble kommandoen Unpivot til kommandoen Find and Replace
- Rediger kommandoen:
- Gi kommandoen et navn: Finn og erstatt - Budsjett med Plan
- I parameteren Input file velger du Pivotted Result Output from the Unpivot Command
- La parameteren Output file stå tom
- Merk av i boksen til Forhåndsvisning av resultater
- Den ikke-pivoterte filen er fortsatt kommaseparert, så angi Delimiter som Comma
- Vi skal finne teksten Budsjett og erstatte den med teksten Plan. I parameteren Finn mønster skriver du inn Budsjett.
- I parameteren Match Pattern Value velger du Exact
- Eksakt betyr at vi leter etter hele teksten som er angitt i parameterne for søkemønsteret. For å søke etter delstrenger eller jokertegn må vi bruke mønstertypen Regular Expression (regex).
- I parameteren Erstatningsverdi skriver du inn Plan. Alle forekomster av teksten Budsjett erstattes med teksten Plan.
- Parameteren Replace matches only gjelder ikke for eksakte treff, og kan stå ukontrollert ettersom den er standardinnstillingen.
- La alternativet Case Insensitive være ukontrollert. Dette gjør at Finn og erstatt-operasjonen tar hensyn til store og små bokstaver, slik at Budsjett vil bli erstattet av Plan, men ikke Budsjett .
- Scenario-kolonnen der søkemønsteret (budsjett) er plassert i den fjerde kolonnen. I parameteren Columns skriver du inn en numerisk tre (3), siden parameteren er nullbasert.
- Lagre kommandoen
Trinn 6: Behold kun data fra New York-planen
Deretter beholder du bare New York's Plan ved hjelp av Smart Filter-kommandoen. Med dette smartfilteret kan vi spesifisere betingelser basert på dataene som skal brukes til å beholde eller slette bestemte rader fra datasettet.
- Legg til en Smart Filter Rows -kommando fra Tabular Transformation Connector til kjeden
- Koble Smart Filter Rows -kommandoen til Find and Replace -kommandoen
- Rediger kommandoen:
- Gi kommandoen et navn: Smartfilterrader - kun for New York-planen
- I parameteren Input file (Inndatafil) velger du Find & Replace Output fra Find and Replace Command (Finn og erstatt)
- La parameteren Output file stå tom
- Angi Komma som Skilletegn
- I delen Filters kan du filtrere Text, Number og Date. Det er mulig å angi flere filterbetingelser. Hvis du bruker filtre på forskjellige typer (tekst, tall, dato), må operatøren øverst til venstre spesifiseres i henhold til dette. Hvis du bruker flere betingelser innenfor en gitt type (f.eks. Tekst), må operatøren for den aktuelle filtertypen spesifiseres.
- I denne øvelsen vil vi bruke tekstbaserte filtre, slik at den globale operatøren kan være enten And eller Or.
- Om nødvendig, sett den generelle operatøren til AND
- Klikk på Legg til-knappen på Tekst filtre
- Skriv inn Scenario i parameteren Kolonnenavn
- La Case Insensitive være avmerket
- Velg Equals fra rullegardinmenyen Condition
- I parameteren Compare Text skriver du inn Actual
- La avmerkingsboksene Not og Trim være avmerket
- Dette filteret vil bli brukt til å fjerne alle poster der Scenario-feltet inneholder verdien Actual
- Klikk på Legg til-knappen igjen i delen Tekstfiltre
- Sett tekstfilteroperatoren til OR
- Velg OR-kombinasjonen for å filtrere ut både Actual og New York
- I den andre betingelsen angir du Market som Column Name
- Sett Condition til Equals
- Angi Sammenlign tekst som New York
- Til slutt, og sjekk alternativet Not
- Sett tekstfilteroperatoren til OR
- La alternativet Forhåndsvisning av resultat være avmerket
- Om nødvendig, sett den generelle operatøren til AND
- I denne øvelsen vil vi bruke tekstbaserte filtre, slik at den globale operatøren kan være enten And eller Or.
- Med alternativet Invers kan Smartfilteret enten beholde (avkrysset) eller fjerne (ikke avkrysset) alle rader som samsvarer med filterkriteriene. I denne øvelsen ønsker vi å fjerne alle radene der Scenario er lik Faktisk eller der Markedet ikke er lik New York. For å oppnå dette fjerner vi avmerkingen alternativet Inverse.
- Lagre kommandoen
Trinn 7: Legg til en årskolonne
Til slutt legger du til en ekstra kolonne i datasettet for å angi årstall for dataene.
- Legg til en Insert Column-kommando fra Tabular Transformation Connector i kjeden
- Koble kommandoen Sett inn kolonne til kommandoen Smartfilter rader
- Rediger kommandoen og konfigurer med følgende:
| Navn | Sett inn kolonne - Planår |
| Inndatafil | Smart filterradutgang |
| Utdatafil | <la stå tomt> |
| Forhåndsvisning av resultater | Kontrollert |
| Deliimiter | Komma |
| Overskriftstekst | År |
| Dataverdi | 2022 |
| Sett inn indeks | 3 |
- Lagre kommandoen
Trinn 8: Test øvelsen
Nå som kjeden er ferdig, kan du teste resultatet.
- Publiser kjeden
- Klikk på Utfør, og velg deretter Kjør kjede
- Når kjeden er fullført, klikker du på noden Sett inn kolonne - Planår
- På fanen Utdata bekrefter du at 385 poster ble sendt ut
- Klikk på fanen Logger og bekreft dataene i henhold til bildet nedenfor
Fanen Output
Fanen Logger
Hvis du vil lære mer om datatransformasjon ved hjelp av kjeder, kan du sjekke ut Connected Learning Paths - Transformation Introduction!