Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Składnia rozszerzeń po stronie serwera

Przegląd rozszerzeń po stronie serwera (SSE) Qlik można znaleźć tutaj: https://github.com/qlik-oss/server-side-extension.

Funkcje skryptów

Istnieje osiem odmian funkcji skryptu. W skrypcie ładowania wszystkie powinny działać tak samo, ale w tym zastosowaniu typowe jest użycie ScriptEval.

Użycie skryptu ładowania LOAD * EXTENSION działa na zasadzie tabela wejściowa-tabela wyjściowa (TITO) i wnioskuje prawidłowe typy danych z wewnętrznych definicji tabeli i metadanych.

Podczas używania tych funkcji jako wyrażeń wykresu używana funkcja jest ważna i będzie mieć znaczny wpływ na wyniki i wydajność żądania.

ScriptEval a ScriptAggr

Istnieją dwa zestawy funkcji skryptowych: ScriptEval i ScriptAggr:

ScriptEval: po zagregowaniu hiperkostki wszystkie wiersze w określonych kolumnach są wysyłane do łącznika SSE. Oczekiwana odpowiedź to pojedyncza kolumna. W przypadku zwrócenia większej liczby kolumn zostanie wybrana pierwsza kolumna, która ma taką samą liczbę wierszy jak dane wejściowe. Wiersze w zwróconej kolumnie muszą być w tej samej kolejności co dane wejściowe.

ScriptAggr: przed agregacją hiperkostki wysyłane są wszystkie wiersze dla pojedynczej grupy wymiarów hiperkostki i oczekuje się, że SSE zwróci pojedynczą odpowiedź: 1 kolumna i 1 wiersz. Dla każdej wartości wymiaru zostanie wysłane do SSE jedno żądanie. Chociaż istnieją zastosowania takiego przypadku, ta metoda jest rzadko używana, ponieważ może powodować problemy z wydajnością, jeśli funkcja ScriptAggr zostania wywołana z dużą liczbą wartości wymiarów.

Typy danych

Istnieją cztery warianty żądań, które określają kombinacje typów danych wejściowych i wyjściowych:

  • ScriptEval(Script, Field1, [Field n]): W tym przykładzie wszystkie pola wejściowe muszą być liczbowe i odpowiedź również musi być liczbowa.

  • ScriptEvalStr(Script, Field 1, [Field n]): W tym przykładzie wszystkie pola wejściowe muszą być ciągiem i odpowiedź również musi być ciągiem.

  • ScriptEvalEx(DataTypes, Script, Field 1, [Field n]): W tym przykładzie pola wejściowe mogą być ciągiem lub liczbą, jednak pierwszy parametr jest ciągiem typów danych, a odpowiedź musi być liczbowa.

  • ScriptEvalExStr(DataTypes, Script, Field 1, [Field n]): W tym przykładzie pola wejściowe mogą być ciągiem lub liczbą, jednak pierwszy parametr jest ciągiem typów danych, a odpowiedź musi być ciągiem.

Parametr DataTypes to ciąg składający się ze znaków S i N w kolejności pól.

Przykłady

Przykład:  

Skrypt, który dodaje 2 pola liczbowe:

ScriptEval('Script',num1,num2)

Przykład:  

Skrypt, który konkatenuje 2 ciągi znaków:

ScriptEvalStr('Script',str1,str2)

Przykład:  

Skrypt, który przewiduje prawdopodobieństwo (liczbę) przy użyciu kombinacji danych wejściowych w postaci ciągów i liczb:

ScriptEvalEx('SSNN','Script',str1, str2, num1, num2)

Przykład:  

Skrypt, który przewiduje klasyfikację (ciąg znaków) przy użyciu kombinacji danych wejściowych w postaci ciągów i liczb:

ScriptEvalExStr('SSNN','Script',str1, str2, num1, num2)

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ć, co możemy poprawić!