Każda iteracja grupy poleceń tworzy nową tabelę wyników lub plik CSV z danymi i chcesz połączyć je wszystkie w jeden plik.
Powszechne, ale ryzykowne podejścia
- Opcja 1: Ustaw dynamiczną zmienną łańcuchową
- Ograniczona skalowalność: Zmienne dynamiczne mają ścisły limit rozmiaru. Nawet jeśli twoje dane mieszczą się teraz, w przyszłości mogą osiągnąć limit w miarę ich wzrostu.
- Ciche awarie: Jeśli zmienna osiągnie limit rozmiaru, łańcuch nie wyrzuci błędu; po prostu obetnie dane, co doprowadzi do brakujących rekordów.
- Dodatkowe przetwarzanie: Nadal musisz przekonwertować końcowy zmienny ciąg z powrotem na plik, aby go użyć.
- Opcja 2: Zapisz każdy plik do tabeli Wdata
- Niska wydajność: Wymaga to wielu wywołań API z uwierzytelnianiem dla każdej pojedynczej iteracji, co znacznie spowalnia wykonywanie łańcucha.
- Złożone pobieranie: Nie możesz użyć danych natychmiast; musisz uruchomić zapytanie, aby połączyć je wszystkie razem.
- Wymagane czyszczenie: Jeśli musisz ponownie uruchomić łańcuch, musisz najpierw zbudować dodatkową logikę, aby usunąć lub zastąpić stare pliki w tabeli.
- Opcja 3: Zapisz każdy plik do arkusza kalkulacyjnego Workiva
- Niska wydajność: Podobnie jak w przypadku metody Wdata, powtarzające się wywołania API wewnątrz pętli powodują długi czas wykonywania.
- Wysokie ryzyko błędu: Musisz obliczyć dokładny numer wiersza dla każdego wstawienia; w przeciwnym razie ryzykujesz nadpisanie danych lub pozostawienie luk.
Najlepsze rozwiązanie: Poprzedni plik stosu danych wyjściowych
Jeśli kolumny są zawsze takie same z tymi samymi nagłówkami, najlepszym rozwiązaniem będzie użycie polecenia Tabular Transformations Stack Files wraz z wbudowaną opcją układania w stos w iteracjach grupy poleceń.
Uwaga: W tym przypadku użycia upewnij się, że używasz pliku stosu "Tabular Transformations", a nie pliku File Utilities o tej samej nazwie. Jest to ważne, ponieważ File Utilities nie rozpozna i nie usunie nagłówków kolumn z plików po pierwszym, podczas gdy Tabular Transformations to zrobi.
Gdy to polecenie znajduje się w grupie poleceń i włączona jest iteracja, opcja zmiennej "Poprzednie pliki stosu na wyjściu" pojawi się pod własną sekcją "Pliki stosu" w panelu zmiennych.
Użyj tej zmiennej , po której następuje przecinek, a następnie polecenie zawierające dane, które chcesz zestawić w iteracjach.
Uwaga: Ważne jest, aby twój łańcuch przechodził przez polecenie stack files w każdej iteracji i nie pomijał go. Jeśli łańcuch tego nie zrobi, wszelkie dane ułożone przed tą iteracją zostaną utracone, a w ostatecznym pliku będzie brakować danych.
Każde polecenie w twoim łańcuchu po grupie poleceń może następnie użyć zmiennej Stack Files - "Stack Files Output", która będzie pełnym plikiem ze wszystkimi iteracjami.
Inne uwagi
- Polecenie file utilities stack file jest przydatne, jeśli chcesz połączyć zestawy danych, w których nagłówek kolumny nie jest wymagany i ma tę samą opcję "Previous Stack Files Output".
- Polecenia Handlebars "Render Text Template" i "Render File Template" mają opcje o nazwach "Previous Rendered Text" i "Previous Rendered File", które działają w taki sam sposób, jak opcja "Previous Stack Files Output" widoczna tutaj i mogą być przydatne do sklejania szablonów i/lub plików JSON w różnych iteracjach.
- Jest w porządku, jeśli nowy plik do ułożenia w stos w poleceniu stack files nie ma wyników, o ile nagłówki kolumn tam są.