Translation not up to date
Tych funkcji można używać w edytorach kodu w trybie Pipelines, na przykład w celu zdefiniowania zmiennej użytkownika lub zbudowania warunku zaawansowanego.
Aby wyświetlić funkcje Pipelines przesyłane z programu DataStage, należy zapoznać się z funkcjami DataStage Functions używani w programie budującym wyrażenia potokowe.
Program budujący rozszerzenia używa tych katagories do obsługi funkcji kodowania:
- funkcje przekształcania
- Funkcje standardowe
- Uzyskiwanie dostępu do zaawansowanych obiektów globalnych
funkcje przekształcania
Przekształca pojedynczy format elementu danych w inny.
Tabela dla konwersji podstawowego typu danych
Typ | Akceptuje | Zwraca | Składnia |
---|---|---|---|
double |
int, uint, string |
double |
double(val) |
duration |
string |
duration |
duration(string) Czas trwania powinien kończyć się na "s", co oznacza sekundy. |
int |
int, uint, double, string, timestamp |
int |
int(val) |
timestamp |
string |
timestamp |
timestamp(string) Konwertuje łańcuchy do datowników zgodnie z RFC3339, tj. "1972-01-01T10:00:20.021-05:00". |
uint |
int, double, string |
uint |
uint(val) |
Przykład
Na przykład, aby rzutować wartość na typ double
:
double(%val%)
Odnosi się to do wszystkich funkcji rzutowania wymienionych w poprzedniej tabeli. Podczas rzutowania typu double na wartość int | uint
, wynik zaokrągla się do zera i błędy, jeśli wynik jest spoza zakresu.
Funkcje standardowe
Funkcje, które są unikalne dla IBM Watson Pipelines.
Sub
Zastępuje podłańcuchy łańcucha, który jest zgodny z danym wyrażeniem regularnym rozpoczynając od pozycji przesunięcia pozycji.
Składnia
(string).sub(substring (string), replacement (string), [occurrence (int), [offset (int)]])
zwroty: łańcuch z aktualizowanymi podłańcuchami.
Przykłady
'aaabbbcccbbb'.sub('[b]+','RE')
Zwraca wartość 'aaaREcccRE'.
format
Formatuje łańcuch lub znacznik czasu zgodnie ze specyfikatorem formatu i zwraca wynikowy łańcuch.
Składnia
format jako metoda łańcuchów
(string).format(parameter 1 (string or bool or number)... parameter 10 (string or bool or number))
zwraca: łańcuch zawierający sformatowane wartości wejściowe.
format jako metoda datowników
(timestamp).format(layout(string))
zwroty: sformatowany znacznik czasu w formacie łańcucha.
Przykłady
'number=%d, text=%s'.format(1, 'str')
Zwraca łańcuch 'number=1, text=str'.
timestamp('2020-07-24T09:07:29.000-00:00').format('%Y/%m/%d')
Zwraca łańcuch "2020/07/24".
teraz
Zwraca bieżący znacznik czasu.
Składnia
now()
zwraca: bieżący znacznik czasu.
parseTimestamp
Zwraca bieżący znacznik czasu w formacie łańcucha.
Składnia
parseTimestamp([timestamp_string(string)] [layout(string)])
zwraca: bieżący znacznik czasu do łańcucha typu łańcuchowego.
Przykłady
parseTimestamp('2020-07-24T09:07:29Z')
Zwraca wartość '2020-07-24T09:07:29.000-00:00'.
min.
Zwraca minimalną wartość z listy.
Składnia
(list).min()
zwraca: wartość minimalną z listy.
Przykłady
[1,2,3].min()
Zwraca liczbę całkowitą 1.
maks
Zwraca maksymalną wartość z listy.
Składnia
(list).max()
zwraca: maksymalną wartość listy.
Przykłady
[1,2,3].max()
Zwraca liczbę całkowitą 3.
argmin
Zwraca indeks minimalnej wartości na liście.
Składnia
(list).argmin()
zwraca: indeks minimalnej wartości listy.
Przykłady
[1,2,3].argmin()
Zwraca liczbę całkowitą 0.
argmax
Zwraca indeks maksymalnej wartości na liście.
Składnia
(list).argmax()
zwraca: indeks maksymalnej wartości listy.
Przykłady
[1,2,3].argmax()
Zwraca liczbę całkowitą 2.
suma
Zwraca sumę wartości z listy.
Składnia
(list).sum()
zwraca: indeks maksymalnej wartości listy.
Przykłady
[1,2,3].argmax()
Zwraca liczbę całkowitą 2.
base64.decode
Dekoduje łańcuch base64-encoded do bajtów. Ta funkcja zwróci błąd, jeśli łańcuch wejściowy nie jest base64-encoded.
Składnia
base64.decode(base64_encoded_string(string))
zwraca: zdekodowany łańcuch base64-encoded w formacie bajtowym.
Przykłady
base64.decode('aGVsbG8=')
Zwraca wartość 'hello' w bajtach.
base64.encode
Koduje bajty do łańcucha base64-encoded .
Składnia
base64.encode(bytes_to_encode (bytes))
zwraca: zakodowany łańcuch base64-encoded oryginalnej wartości bajtowej.
Przykłady
base64.decode(b'hello')
Zwraca wartość 'aGVsbG8=' w bajtach.
charAt
Zwraca znak na danej pozycji. Jeśli pozycja jest ujemna lub większa niż długość łańcucha, funkcja wygeneruje błąd.
Składnia
(string).charAt(index (int))
zwraca: znak określonej pozycji w formacie liczby całkowitej.
Przykłady
'hello'.charAt(4)
Zwraca znak 'o'.
indexOf
Zwraca indeks liczby całkowitej pierwszego wystąpienia łańcucha wyszukiwania. Jeśli wyszukiwany łańcuch nie zostanie znaleziony, funkcja zwróci wartość -1.
Składnia
(string).indexOf(search_string (string), [offset (int)])
zwraca: indeks pierwszego wystąpienia znaku po przesunięciom.
Przykłady
'hello mellow'.indexOf('ello', 2)
Zwraca liczbę całkowitą 7.
lowerAscii
Zwraca nowy łańcuch ze znakami ASCII, które są zamieniane na małe litery.
Składnia
(string).lowerAscii()
zwroty: nowy łańcuch małych liter.
Przykłady
'TacoCat'.lowerAscii()
Zwraca łańcuch "tacocat".
replace
Zwraca nowy łańcuch oparty na elemencie docelowym, który zastępuje wystąpienia łańcucha wyszukiwania zawierającego łańcuch zastępujący, jeśli jest on obecny. Ta funkcja akceptuje opcjonalny limit liczby zastępców podłańcuchów, które mają zostać wykonane.
Składnia
(string).replace(search_string (string), replacement (string), [offset (int)])
zwraca: nowy łańcuch z zastąpionym wystąpieniem łańcucha wyszukiwania.
Przykłady
'hello hello'.replace('he', 'we')
Zwraca łańcuch "wello wello".
dzielenie
Zwraca listę łańcuchów podzielonych na podstawie danych wejściowych przez dany separator. Funkcja akceptuje opcjonalny argument określający limit liczby podłańcuchów generowanych przez podział.
Składnia
(string).split(separator (string), [limit (int)])
zwraca: łańcuch podziału jako lista łańcuchów.
Przykłady
'hello hello hello'.split(' ')
Zwraca listę łańcuchów [ 'hello ',' hello ',' hello '].
substring
Zwraca podłańcuch podany w zakresie liczbowym odpowiadając na pozycje znaków. Opcjonalnie można pominąć końcowy zakres dla podłańcucha z danej pozycji znaku, aż do końca łańcucha.
Składnia
(string).substring(start (int), [end (int)])
zwraca: podłańcuch w określonym indeksie łańcucha.
Przykłady
'tacocat'.substring(4)
Zwraca łańcuch "kot".
trim
Zwraca nowy łańcuch, który usuwa początkowe i końcowe białe znaki w łańcuchu docelowym. Funkcja trim korzysta z definicji Unicode białych znaków, która nie zawiera spacji o zerowej szerokości.
Składnia
(string).trim()
zwraca: nowy łańcuch z usuniętą spacjami.
Przykłady
' \ttrim\n '.trim()
Zwraca łańcuch "trim".
upperAscii
Zwraca nowy łańcuch, w którym wszystkie znaki ASCII są wydzierżawione.
Składnia
(string).upperAscii()
zwroty: nowy łańcuch ze wszystkimi znakami zamienił się na wielkie litery.
Przykłady
'TacoCat'.upperAscii()
Zwraca łańcuch 'TACOCAT'.
wielkość
Zwraca długość łańcucha, bajtów, listy lub mapy.
Składnia
(string | bytes | list | map).size()
zwraca: długość łańcucha, bajtów, listy lub tablicy odwzorowań.
Przykłady
'hello'.size()
Zwraca liczbę całkowitą 5.
b'hello'.size()
Zwraca liczbę całkowitą 5.
['a','b','c'].size()
Zwraca liczbę całkowitą 3.
{'key': 'value'}.size()
Zwraca liczbę całkowitą 1.
zawiera
Sprawdza, czy operand typu string zawiera podłańcuch.
Składnia
(string).contains(substring (string))
zwroty: wartość boolowska o tym, czy podłańcuch istnieje w operandzie łańcuchowym.
Przykłady
'hello'.contains('ll')
Zwraca wartość true.
endsWith
Sprawdza, czy operand typu string kończy się określonym przyrostkiem.
Składnia
(string).endsWith(suffix (string))
zwroty: wartość boolowska o tym, czy łańcuch kończy się określonym przyrostkiem w operandzie łańcuchowym.
Przykłady
'hello'.endsWith('llo')
Zwraca wartość true.
startsWith
Sprawdza, czy operand typu string rozpoczyna się od argumentu przedrostka.
Składnia
(string).startsWith(prefix (string))
zwroty: wartość boolowska o tym, czy łańcuch rozpoczyna się od określonego przedrostka w operandzie łańcuchowym.
Przykłady
'hello'.startsWith('he')
Zwraca wartość true.
odpowiada
Sprawdza, czy operand łańcuchowy jest zgodny z wyrażeniem regularnym.
Składnia
(string).matches(prefix (string))
zwraca: wartość boolowska, która określa, czy łańcuch jest zgodny z określonym wyrażeniem regularnym.
Przykłady
'Hello'.matches('[Hh]ello')
Zwraca wartość true.
getDate
Pobierz dzień miesiąca od daty ze strefą czasową (domyślny czas UTC), indeksowanie oparte na jednej bazie danych.
Składnia
(timestamp).getDate([time_zone (string)])
zwraca: dzień miesiąca z indeksowaniem opartym na jednej bazie danych.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getDate()
Zwraca 24.
getDayOfMonth
Pobierz dzień miesiąca od daty ze strefą czasową (domyślnie UTC), indeksowaniem zerowym.
Składnia
(timestamp).getDayOfMonth([time_zone (string)])
zwroty: dzień miesiąca z indeksowaniem zerowym.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getDayOfMonth()
Zwraca 23.
getDayOfWeek
Pobierz dzień tygodnia od daty ze strefą czasową (domyślny czas UTC), indeksowanie zerowe, zero dla niedzieli.
Składnia
(timestamp).getDayOfWeek([time_zone (string)])
zwroty: dzień tygodnia z indeksowaniem zerowym.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getDayOfWeek()
Zwraca 5.
getDayOfYear
Pobierz dzień roku od daty ze strefą czasową (domyślnie UTC), indeksowaniem zerowym.
Składnia
(timestamp).getDayOfYear([time_zone (string)])
zwroty: dzień roku z indeksowaniem zerowym.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getDayOfYear()
Zwraca 205.
getFullRok
Pobierz rok od daty ze strefą czasową (domyślny czas UTC).
Składnia
(timestamp).getFullYear([time_zone (string)])
zwroty: rok od daty.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getFullYear()
Zwraca wartość 2020.
getMonth
Pobierz miesiąc od daty ze strefą czasową, 0-11.
Składnia
(timestamp).getMonth([time_zone (string)])
zwroty: miesiąc od daty.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getMonth()
Zwraca 6.
getHours
Pobieranie godzin od daty ze strefą czasową, 0-23.
Składnia
(timestamp).getHours([time_zone (string)])
zwroty: godzina od daty.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getHours()
Zwraca 9.
getMinutes
Pobieranie minut od daty ze strefą czasową, 0-59.
Składnia
(timestamp).getMinutes([time_zone (string)])
zwroty: minuta od daty.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getMinutes()
Zwraca 7.
getSeconds
Pobieranie sekund od daty ze strefą czasową, 0-59.
Składnia
(timestamp).getSeconds([time_zone (string)])
zwroty: sekunda od daty.
Przykłady
timestamp('2020-07-24T09:07:29.000-00:00').getSeconds()
Zwraca 29.
getMilliseconds
Pobierz milisekundy od daty ze strefą czasową, 0-999.
Składnia
(timestamp).getMilliseconds([time_zone (string)])
zwroty: milisekunda od daty.
Przykłady
timestamp('2020-07-24T09:07:29.021-00:00').getMilliseconds()
Zwraca 21.
Dostęp do zaawansowanych obiektów globalnych
Pobierz dane wyjściowe węzłów, zmienne użytkownika i parametry rurociągu, korzystając z następującego kodu rurociągów.
Pobierz zmienną użytkownika
Pobiera najbardziej aktualną wartość zmiennej użytkownika.
Składnia
vars.<var name>
Przykłady
Przykład | Dane wyjściowe |
---|---|
vars.my_user_var |
Pobiera wartość zmiennej użytkownika my_user_var |
Parametry metody GET
Pobiera parametry przepływu.
Składnia
params.<param name>
Przykłady
Przykład | Dane wyjściowe |
---|---|
params.a |
Pobiera wartość parametru a |
Pobierz zestawy parametrów
Pobiera zestawy parametrów przepływu.
Składnia
param_set.<param_set_name>.<param_name>
Przykłady
Przykład | Dane wyjściowe |
---|---|
param_set.ps.a |
Pobiera wartość parametru a z zestawu parametrów ps |
param_sets.config |
Pobiera wartości konfiguracyjne potoku |
param_sets.config.deadline |
Pobiera obiekt daty z zestawu parametrów konfiguracyjnych |
param_sets.ps["$PARAM"] |
Pobiera wartość parametru $PARAM z zestawu parametrów ps |
Pobierz wyniki zadania
Pobierz wynikowe dane wyjściowe zadania potoku i inne metryki z zadania potoku po zakończeniu jego działania.
Składnia
tasks.<node id>.<output name>
Przykłady
Przykład | Dane wyjściowe |
---|---|
tasks.run_datastage_job |
Pobiera słownik wyników dla danych wyjściowych zadania |
tasks.run_datastage_job.results.score |
Pobiera wartość score danych wyjściowych zadania |
tasks.run_datastage_job.results.timestamp |
Pobiera znacznik czasu zakończenia zadania. |
tasks.run_datastage_job.results.error |
Pobiera liczbę błędów z przebiegu zadania |
tasks.loop_task.loop.counter |
Pobiera iteracyjny licznik iteracyjny pętli dla uruchomienia zadania |
tasks.loop_task.loop.item |
Pobiera iteracyjny element pętli bieżącej dla uruchomienia zadania |
tasks.run_datastage_job.results.status |
Uzyskanie statusu powodzenia lub niepowodzenia uruchomienia zadania |
tasks.run_datastage_job.results.status_message |
Pobiera komunikat o statusie uruchomienia zadania |
tasks.run_datastage_job.results.job_name |
Pobiera nazwę zadania |
tasks.run_datastage_job.results.job |
Pobiera ścieżkę zadania Cloud Pak for Data . |
tasks.run_datastage_job.results.job_run |
Pobiera ścieżkę uruchomienia zadania Cloud Pak for Data (Cloud Pak for Data) |
Pobierz obiekty kontekstu potoku
Pobiera wartości, które są wartościowane w kontekście przebiegu potoku w danym zasięgu (projekt, obszar, katalog).
Przykłady
Przykład | Dane wyjściowe |
---|---|
ctx.scope.id |
Pobiera identyfikator zasięgu |
ctx.scope.type |
Zwraca wartość "project", "space" lub "catalog" |
ctx.scope.name |
Pobiera nazwę zasięgu |
ctx.pipeline.id |
Pobiera identyfikator potoku |
ctx.pipeline.name |
Pobiera nazwę potoku |
ctx.job.id |
Pobiera identyfikator zadania |
ctx.run_datastage_job.id |
Pobiera identyfikator uruchomienia zadania |
ctx.run_datastage_job.started_at |
Pobiera czas uruchomienia zadania |
ctx.user.id |
Pobiera identyfikator użytkownika. |
Pobierz status błędu
Jeśli procedura obsługi wyjątku zostanie wyzwolona, obiekt błędu zostanie utworzony i staje się dostępny tylko w ramach procedury obsługi wyjątku.
Przykłady
Przykład | Dane wyjściowe |
---|---|
error.status |
Uzyskanie statusu powodzenia lub niepowodzenia uruchomienia zadania, zwykle nie powiodło się |
error.status_message |
Pobiera komunikat o statusie błędu. |
error.job |
Pobiera ścieżkę zadania Cloud Pak for Data . |
error.run_datastage_job |
Pobiera ścieżkę uruchamiania zadania Cloud Pak for Data (Cloud Pak for Data) |
Temat nadrzędny: Dodawanie warunków do rurociągów