Procesor skryptu Qlik | Qlik Cloud Pomoc
Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Procesor skryptu Qlik

Tworzy lub przekształca dane wejściowe za pomocą skryptu Qlik.

Procesor Skrypt Qlik umożliwia bezpośrednie wprowadzanie skryptu Qlik w edytorze tekstu w celu przygotowania danych lub ładowania danych, gdy jest używany jako wejście. Skierowany do bardziej zaawansowanych użytkowników, pozwala na korzystanie z całej składni Qlik, jeśli wolisz ręcznie kodować określone operacje podczas manipulowania tabelami.

Użycie

  • Aby użyć procesora Scrypt w przepływie danych, kod dodany w edytorze musi być zgodny ze schematem danych przychodzących oraz działaniami przygotowawczymi, które zostały wykonane do tego momentu. Ponadto skrypt musi przestrzegać pewnych zasad:

    • Skrypt musi zawierać instrukcję resident, aby użyć tabeli pochodzącej z przepływu wejściowego.

      resident tablename

      Więcej informacji zawiera temat Load.

    • Należy dołączyć instrukcję NoConcatenate.

      NoConcatenate LOAD A,B

      Więcej informacji zawiera temat NoConcatenate.

    • Po dodaniu skryptu dla określonej operacji, którą chcesz wykonać, musisz na końcu dołączyć instrukcję drop table, aby usunąć tabelę przychodzącą i zachować tylko wygenerowane dane wyjściowe.

      drop table  tablename

      Więcej informacji zawiera temat Drop table.

  • Gdy procesor jest używany jako węzeł wejściowy, można mieć maksymalnie dwa przepływy wyjściowe, aby załadować dwie różne tabele.
  • Gdy procesor jest używany jako węzeł pośredniczący, można mieć wiele przepływów wejściowych i maksymalnie dwa przepływy wyjściowe.
  • W przepływie danych można użyć maksymalnie 50 procesorów skryptu Qlik.
OstrzeżenieAby uniknąć błędów w przepływie danych, upewnij się, że nazwy tabel generowane przez procesor Scrypt są unikalne i różnią się od tabel generowanych przez inne procesory w przepływie.

Właściwości

Konfiguracja
Właściwość Konfiguracja
Scrypt

Wprowadź swój skrypt Qlik w edytorze tekstu, który zawiera następujący symbol zastępczy z wymaganymi instrukcjami.

MyTable:
NoConcatenate Load *
Resident [name of input table];
Drop Table [name of input table];

Nazwy tabel wejściowych są wymienione nad edytorem skryptów. Odpowiadają one wejściom podłączonym do procesora. Kliknij nazwę tabeli, aby wstawić ją bezpośrednio do skryptu.

Aby zmienić nazwę procesora lub edytować jego opis, wskaż myszą nazwę lub opis do zmiany w panelu Właściwości i kliknij ikonę Edytuj Edytuj.

Korzystanie z widoku skondensowanego

W panelu po prawej stronie można wykonywać szybkie aktualizacje procesora bez otwierania pełnego edytora. Możesz:

  • Wpisywać tekst bezpośrednio w polu Scrypt.

  • Dodawać tabele wejściowe do skryptu, klikając je w sekcji Tabele wejściowe.

Podświetlanie tekstu skryptu i wybieranie tabeli wejściowej w celu dodania jej w określonym miejscu w skrypcie

Aby uzyskać więcej opcji i zaawansowanych funkcji, otwórz edytor skryptów. Zobacz Korzystanie z edytora skryptów.

Korzystanie z edytora skryptów

Kliknięcie przycisku Otwórz edytor w panelu konfiguracji otwiera potężny Edytor skryptów, który pomaga w pisaniu skryptu Qlik. Z łatwością wstawiaj tabele, nazwy pól lub funkcje, otwieraj dokumentację, wstawiaj skrypty i sprawdzaj poprawność swojego skryptu.

Korzystanie z edytora skryptów do pisania skryptu Qlik

W lewym panelu można przeglądać tabele i pola aktualnie załadowane w przepływie danych oraz przeglądać szeroką gamę funkcji skryptu Qlik. Ten panel jest podzielony na trzy karty:

  • Tabele, gdzie wymienione są tabele załadowane w przepływie. Wskaż myszą dowolną z nazw tabel i kliknij +, aby wstawić ją bezpośrednio do skryptu.

  • Pola, gdzie wymienione są pola dostępne w tym momencie przepływu. Wskaż myszą dowolną z nazw pól i kliknij +, aby wstawić ją bezpośrednio do wyrażenia.

  • Funkcje, gdzie można przeglądać funkcje Qlik. Możesz użyć pola wyszukiwania, aby poszukać określonej funkcji, lub użyć listy rozwijanej Kategoria funkcji, aby je przefiltrować.

    Wskaż myszą dowolną z funkcji i kliknij +, aby wstawić ją bezpośrednio do wyrażenia.

    • Jeśli wybierzesz przełącznik Przewodnik objaśniający, po kliknięciu funkcji wyświetlony zostanie krótki opis i link do dokumentacji.

W górnym panelu można włączyć lub wyłączyć trzy narzędzia, które pomagają i prowadzą podczas pisania skryptu, użyć skrótu do wstawiania skryptu z innych plików, a także przycisków cofania i ponawiania, aby naprawić potencjalne błędy.

  • Wyszukaj i zamień, aby automatycznie szukać określonych wartości i w razie potrzeby je zamieniać.

    Funkcja wyszukiwania i zamiany w edytorze skryptów

  • Tryb pomocy, aby zamienić dowolną funkcję napisaną w skrypcie w klikalne linki, które przeniosą Cię do dokumentacji.

    Aktywacja trybu pomocy w edytorze skryptów

  • Autouzupełnianie, aby wyświetlać sugestie podczas pisania, wraz z krótkim opisem i przykładem funkcji.

    Korzystanie z autouzupełniania do pisania funkcji skryptu

  • Dołącz skrypt, aby wstawiać skrypty. Zobacz Wstawianie innych skryptów do skryptów ładowania.

    Wstawianie skryptu z pliku qvf

Dolny panel opisuje wszelkie potencjalne błędy w skrypcie, takie jak nieprawidłowe nazwy pól lub nieprawidłowe wyrażenia.

Narzędzie walidacji pokazujące błąd w skrypcie

Gdy panel stanu pokazuje zielone Ok, skrypt jest prawidłowy. Kliknij Potwierdź, aby użyć tego skryptu dla procesora skryptu Qlik i wrócić do edytora przepływu danych. Następnie możesz zweryfikować konfigurację procesora.

Przykłady

  • Ładowanie wielu tabel o tym samym schemacie do jednego wejścia dla przepływu. W tym przykładzie użyto dwóch plików .txt z katalogu, z tymi samymi polami, ale z inną zawartością. Ponadto to wyrażenie doda pole do śledzenia, z której tabeli pochodzą dane, i wygeneruje liczbę całkowitą jako numer identyfikacyjny:

    [MyTable_1]:
    LOAD
    'table1' as source_table,
    [firstname],
    [lastname],
    [nationality]
    FROM [lib://DataFiles/MyTable_1.txt] (txt, codepage is 28591, embedded labels, delimiter is ',', msq);
    
    [MyTable_2]:
    CONCATENATE (MyTable_1)
    LOAD
    'table2' as source_table,
    [firstname],
    [lastname],
    [nationality]
    FROM [lib://DataFiles/MyTable_2.txt] (txt, codepage is 28591, embedded labels, delimiter is ',', msq);
    
    [NewTable]:
    LOAD
    recno() as id,
    * RESIDENT MyTable_1;
    
    drop table MyTable_1;

    Więcej informacji zawiera temat Concatenate.

  • Utwórz tabelę wbudowaną z edytowalnymi danymi jako wejście dla przepływu:

    MyTable:
    Load * Inline [
    Country, Year, Sales
    Argentina, 2014, 66295.03
    Argentina, 2015, 140037.89
    Austria, 2014, 54166.09
    Austria, 205,182739.87
    ];
    

    Więcej informacji zawiera temat Using inline loads to load data.

  • Ładowanie wszystkich plików z folderu jako wejścia dla przepływu. Ten przykład iteruje po wszystkich plikach z określonym rozszerzeniem w folderze i ładuje je do pojedynczej tabeli. Zastąp nazwę połączenia danych i ścieżkę folderu własnymi wartościami oraz dostosuj rozszerzenie pliku i ustawienia formatu w razie potrzeby:

    SET vFolderPath = 'lib://YourDataConnection/FolderName';
    
    FOR EACH vFile IN filelist('$(vFolderPath)/*.csv')
        LOAD * FROM [$(vFile)]
        (txt, utf8, embedded labels, delimiter is ',');
    NEXT

    Więcej informacji zawiera temat For each..next.

  • Więcej przykładów wyrażeń skryptu zawiera temat Regular statements oraz Script and chart functions.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać!