W tej połączonej ścieżce edukacyjnej pobierzemy wyciąg danych z systemu i wykonamy szereg przekształceń, aby przygotować plik danych do załadowania do innego systemu.
| Podstawowy cel edukacyjny | Aby podkreślić niektóre z prostych, ale potężnych poleceń Tabular Transformation Connector, które można wykorzystać do zaspokojenia typowych potrzeb związanych z transformacją |
| Wymagania wstępne | Skonfiguruj HTTP, File Utilities i Tabular Transformation Connector Connections |
| Szablon łańcucha wsparcia | CLP | Transformacje tabelaryczne |
Krok 1: Utwórz łańcuch
- Dodaj nowy łańcuch
- Nazwij łańcuch: CLP | Transformacje tabelaryczne
- Utwórz zmienną łańcuchową
- Nazwa: cv-TT-SampleData
- Wartość: https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/sample.txt
- Uratuj łańcuch
Krok 2: Pobieranie danych z systemu źródłowego
Użyj konektora HTTP, aby zilustrować sposób pobierania danych ze źródła danych, dla którego nie istnieje konektor Workiva.
- Dodaj polecenie GET z łącznika HTTP do węzła Start
- Skonfiguruj polecenie w następujący sposób:
Krok 3: Zaktualizuj nagłówki w pliku danych
Zaktualizuj nagłówki w pliku, aby odpowiadały nazwom pól systemu, do którego plik danych zostanie załadowany po zakończeniu transformacji. Polecenie Map Headers pozwala nam zaktualizować nazwę pola na podstawie indeksu, dzięki czemu polecenie może być bardziej elastyczne w przypadku zmiany nazwy pola w przyszłości.
- Dodaj polecenie Map Headers z konektora Tabular Transformation Connector do łańcucha
- Połącz węzeł startowy (HTTP - Get Source System Data) z poleceniem Map Headers
- Edytuj polecenie:
- Nazwij polecenie: Map Headers
- Kliknij parametr Input file. Po lewej stronie otworzy się panel wyboru zmiennej. W sekcji Command rozwiń Get - Source System Data Command i wybierz Response Output
- Pozostaw parametr Plik wyjściowy pusty
- Zaznacz pole Podgląd wyników
- Pozostaw ogranicznik jako Przecinek, ponieważ plik danych systemu źródłowego jest ograniczony przecinkami
- W parametrze Input Headers wprowadź cyfry od zera (0) do siedmiu (7), ponieważ plik ma osiem pól, a listy mają wartość zero. Pamiętaj, aby nacisnąć klawisz Enter po wpisaniu każdej liczby!
- Zaznacz pole Użyj indeksów. Mówi to poleceniu, że nagłówki wejściowe są oparte na pozycji w pliku, a nie na rzeczywistej nazwie kolumny.
- W nagłówkach wyjściowych podaj nazwy nowych pól, które mają zostać utworzone. Kolejność ma znaczenie, ponieważ pierwszy wpis na liście zastąpi nazwę nagłówka pierwszego pola w źródłowym pliku systemowym i tak dalej dla każdego z pozostałych wpisów. Wpisz następujące nagłówki i naciśnij klawisz Enter po każdym z nich:
- Produkt
- Rynek
- Miesiąc
- Scenariusz
- Sprzedaż
- COGS
- Wydatki
- Dochód operacyjny
- Zapisz polecenie
Krok 4: Przenieś kolumny danych do wierszy
Następnie zaktualizuj plik danych, aby przetransponować wiele kolumn danych do wierszy w celu utworzenia pojedynczej kolumny danych. Operacja ta nazywana jest unpivot. Operacja unpivot wyrównuje dane do oczekiwanego formatu, pojedynczej kolumny zawierającej wszystkie dane, systemu niższego szczebla.
- Dodaj polecenie Unpivot z konektora Tabular Transformation Connector do łańcucha
- Połącz polecenie Map Headers z poleceniem Unpivot
- Edytuj polecenie
- Nazwij polecenie: Unpivot - Przenieś miary do wierszy
- Wybierz parametr Map Headers Output dla pliku wejściowego
- Dane wyjściowe nagłówków mapy są nadal rozdzielane przecinkami, więc pozostawiamy ogranicznik jako Przecinek
- W parametrze Aggregation wybierz Sum. W przypadku wybrania opcji Suma, wszystkie wiersze wynikowe utworzone przez rozłączenie, które są takie same we wszystkich kolumnach, będą agregować wartości danych do pojedynczego punktu danych.
- W parametrze New Column Label wpisz Measures. Jest to nagłówek nowej kolumny, która zostanie utworzona i wypełniona wartościami nagłówków z kolumn, które nie są podzielone.
- W parametrze Data Column Label wpisz Amount
- Nagłówki danych , Nazwa początkowej kolumny przestawnej, Nazwa końcowej kolumny przestawnej, Indeks początkowej kolumny przestawnej i Indeks końcowej kolumny przestawnej są używane do wykonywania operacji przestawiania. Nie wszystkie z tych parametrów muszą być określone.
- Jeśli używasz parametru Data Headers, pozostałe parametry powinny pozostać puste. Parametr Data Headers umożliwia określenie nazw kolumn. Ten parametr jest przydatny w przypadku pól, które nie są współbieżne/obok siebie.
- Parametry Starting/Ending Column Name umożliwiają określenie nazwy pierwszej i ostatniej kolumny (dla współbieżnego zakresu). W przypadku korzystania z tych parametrów, parametr Data Headers oraz Starting/Ending Column Index muszą pozostać puste. Jeśli pole Ending Column Name pozostanie puste, przestawienie zostanie wykonane dla wszystkich pól po (i włącznie z) polu Starting Column Name.
- Parametry Starting/Ending Column Index umożliwiają określenie pozycji pierwszej i ostatniej kolumny (dla współbieżnego zakresu). Jeśli korzystasz z tych parametrów, parametr Data Headers oraz Starting/Ending Column Name muszą pozostać puste. Jeśli pole Ending Column Index pozostanie puste, przestawienie zostanie wykonane dla wszystkich pól po (i włącznie z) Starting Column Index. Używamy tych parametrów w tym ćwiczeniu.
- W polu Starting Pivot Column Index wpisz 4. Powoduje to, że polecenie obraca się, zaczynając od piątej kolumny, ponieważ indeks jest oparty na zerze.
- Pozostaw pole Ending Pivot Column Index puste.
- Zaznacz opcję Podgląd wyników
- Zapisz polecenie
Krok 5: Zaktualizuj scenariusz
Następnie zmień nazwę scenariusza. Ilustruje to prostą, jednorazową transformację, która dobrze nadaje się do Integration Studio. Bardziej rozbudowane lub złożone transformacje zmiany nazwy są znacznie usprawnione przez Data Prep.
- Dodaj do łańcucha polecenie Znajdź i zamień z konektora transformacji tabelarycznej
- Połącz polecenie Unpivot z poleceniem Find and Replace
- Edytuj polecenie:
- Nazwij polecenie: Znajdź i zamień - Budżet na Plan
- W parametrze Input file wybierz Pivoted Result Output from Unpivot Command
- Pozostaw parametr Output file pusty
- Zaznacz pole Podgląd wyników
- Nierozdzielony plik jest nadal rozdzielany przecinkami, więc określ Delimiter jako Comma
- Zamierzamy znaleźć tekst Budget i zastąpić go tekstem Plan. W parametrze Find pattern wpisz Budget.
- W parametrze Match Pattern Value wybierz Exact
- Dokładne oznacza, że szukamy całego tekstu określonego w parametrach wzorca wyszukiwania. Aby wyszukać podciągi lub symbole wieloznaczne, musimy użyć typu wzorca wyrażenia regularnego (regex).
- W parametrze Replacement Value wpisz Plan. Każde wystąpienie tekstu Budżet zostanie zastąpione tekstem Plan.
- Parametr Replace matches only nie ma zastosowania do dokładnych dopasowań i może pozostać niezaznaczony, ponieważ jest domyślny.
- Pozostaw opcję Case Insensitive niezaznaczoną. Sprawia to, że operacja Znajdź i zamień rozróżnia wielkość liter, więc Budżet zostanie zastąpiony przez Plan, ale Budżet nie.
- Kolumna Scenario, w której znajduje się Find Pattern (Budget), znajduje się w czwartej kolumnie. W parametrze Columns wprowadź liczbę trzy (3), ponieważ parametr jest oparty na zerze.
- Zapisz polecenie
Krok 6: Zachowaj tylko dane planu Nowy Jork
Następnie zachowaj tylko plan Nowego Jorku za pomocą polecenia inteligentnego filtra. Ten inteligentny filtr pozwala nam określić warunki oparte na danych, które zostaną wykorzystane do zachowania lub usunięcia określonych wierszy z zestawu danych.
- Dodaj polecenie Smart Filter Rows z konektora Tabular Transformation Connector do łańcucha
- Połącz polecenie Smart Filter Rows z poleceniem Find and Replace
- Edytuj polecenie:
- Nazwij polecenie: Inteligentny filtr wierszy - tylko plan Nowy Jork
- W parametrze pliku wejściowego wybierz plik wyjściowy Znajdź i zamień z polecenia Znajdź i zamień
- Pozostaw parametr Output file pusty
- Określ Przecinek jako separator
- W sekcji Filtry dostępna jest opcja Filtry tekstowe, Filtry liczbowe i Filtry daty. Można określić wiele warunków filtrowania. Jeśli stosujesz filtry do różnych typów (tekst, liczba, data), musisz odpowiednio określić operatora w lewym górnym rogu. W przypadku stosowania wielu warunków w ramach danego typu (np. Tekst), należy określić Operator dla tego typu filtra.
- W tym ćwiczeniu zastosujemy filtry tekstowe, aby globalny operator mógł mieć postać And lub Or.
- W razie potrzeby ustaw operator ogólny na AND
- Kliknij przycisk Dodaj na stronie Tekst filtry
- W parametrze Column name wpisz Scenario
- Pozostaw pole wyboru Case Insensitive niezaznaczone
- Z listy rozwijanej Condition wybierz Equals
- W parametrze Compare Text wpisz Actual
- Pozostaw pola wyboru Not i Trim niezaznaczone
- Filtr ten zostanie użyty do usunięcia wszystkich rekordów, w których pole Scenariusz zawiera wartość Actual
- Kliknij ponownie przycisk Dodaj w sekcji Filtry tekstowe
- Ustaw Operator filtrów tekstowych na OR
- Wybierz kombinację OR, aby odfiltrować zarówno Rzeczywisty, jak i Nowy Jork
- W drugim warunku podaj Market jako nazwę kolumny
- Ustaw warunek na Equals
- Podaj tekst porównawczy jako Nowy Jork
- Na koniec zaznacz opcję Not
- Ustaw Operator filtrów tekstowych na OR
- Pozostaw zaznaczoną opcję Podgląd wyniku
- W razie potrzeby ustaw operator ogólny na AND
- W tym ćwiczeniu zastosujemy filtry tekstowe, aby globalny operator mógł mieć postać And lub Or.
- Opcja Odwrotnie pozwala inteligentnemu filtrowi zachować (zaznaczone) lub usunąć (niezaznaczone) wszystkie wiersze spełniające kryteria filtra. W tym ćwiczeniu chcemy usunąć wszystkie wiersze, w których Scenariusz jest równy Rzeczywisty lub Rynek nie jest równy Nowy Jork. Aby to osiągnąć, odznacz opcję Inverse.
- Zapisz polecenie
Krok 7: Dodaj kolumnę roku
Na koniec dodaj dodatkową kolumnę do zestawu danych, aby oznaczyć rok danych.
- Dodaj polecenie wstawiania kolumny z łącznika transformacji tabelarycznej do łańcucha
- Połącz polecenie Wstaw kolumnę z poleceniem Inteligentny filtr wierszy
- Edytuj polecenie i skonfiguruj je w następujący sposób:
| Nazwa | Wstaw kolumnę - rok planu |
| Plik wejściowy | Wyjście wiersza inteligentnego filtra |
| Plik wyjściowy | <pozostaw puste> |
| Wyniki podglądu | Sprawdzone |
| Deliimiter | Przecinek |
| Tekst nagłówka | Rok |
| Wartość danych | 2022 |
| Wstaw Indeks | 3 |
- Zapisz polecenie
Krok 8: Przetestuj ćwiczenie
Teraz, gdy łańcuch jest gotowy, przetestuj wynik.
- Opublikuj Łańcuch
- Kliknij przycisk Wykonaj, a następnie wybierz Run Chain
- Po zakończeniu tworzenia łańcucha kliknij węzeł Wstaw kolumnę - Rok planu
- Na karcie Dane wyjściowe potwierdź, że 385 rekordów zostało wyprowadzonych
- Kliknij zakładkę Logs i potwierdź dane zgodnie z poniższym obrazkiem
Karta Wyjście
Karta Dzienniki
Aby dowiedzieć się więcej na temat transformacji danych przy użyciu łańcuchów, zapoznaj się ze ścieżką szkoleniową Connected Learning Paths - Transformation Introduction!