W systemie GRAVITY każdy projekt (aplikacja) może być wzbogacony o zestaw parametrów projektowych, które pełnią rolę dodatkowych zmiennych sterujących przepływem danych i logiką działania operatorów w ramach danego projektu. Są one niezależne od źródłowych danych wejściowych i mogą być wykorzystywane w wielu miejscach jednocześnie – co pozwala zwiększyć elastyczność, czytelność i modułowość projektów integracyjnych.
Główne cechy parametrów projektowych:
- Mogą być zadeklarowane ręcznie przez użytkownika podczas tworzenia lub edycji projektu.
- Ich wartość może być przekazana:
- ręcznie przez użytkownika podczas manualnego uruchamiania projektu (wyświetlane w formularzu startowym),
- automatycznie przez trigger (wyzwalacz), który przekazuje parametry podczas wywołania projektu (np. z zapytania HTTP w przypadku WebService),
- wewnętrznie z poziomu operatora specjalnego typu
OUTPUT PARAMETER , który oblicza lub przekazuje wartość parametru dalej.
- Parametry są widoczne w konfiguracji operatorów i mogą być używane np. do:
- dynamicznego filtrowania danych,
- kierowania logiką działania projektu (np. warunkowe przełączanie przepływu),
- określania źródeł lub ścieżek zapisu,
- komunikacji między operatorami.
Typowe zastosowania parametrów:
- Wprowadzenie ID klienta przekazywanego do zapytania SQL.
- Określenie daty przetwarzania danych (np.
dataOd
,dataDo
). - Sterowanie trybem działania projektu (np. testowy/produkcyjny).
- Wskazanie adresu pliku, z którego mają być pobrane dane.
Konfiguracja parametrów
Globalną wszystkich parametrów możesz zobaczyć klikając w ikonę na elemencie ToolBox.
Lista parametrów jest podzielona na grupy obiektów, w których dany parametr został zdefiniowany.
Każdy parametr jest określonego typu, co determinuje jego sposób wykorzystania w operatorach systemu, ma swoją nazwę i opis, oraz może mieć zdefiniowaną domyślną wartość jak i być oznaczony jako wymagany.
Możliwe typy parametrów to:
String
→ dowolny ciąg znakówInteger
→ wartość liczbowa dziesiętnaDouble
→ wartość liczbowa zmiennoprzecinkowaDateTime
→ data z czasem (w przypadku podania samej daty czas będzie miał wartość 00:00:00)Boolean
→ przyjmuje wartośćtrue
lubfalse
Blob
→ wartość binarnaArrayString
→ tablica ciągów znaków w formacie:[’pozycja 1’, ‘pozycja 2’]
ArrayInteger
→ tablica wartości dziesiętnych w formacie[2,3,4,5]
ArrayDouble
→ tablica wartości zmiennoprzecinkowych w formacie[1.1, 1.2, 2.1]
Przykład użycia parametru w projekcie
Wiele operatorów systemu GRAVITY pozwala na użycie parametrów w trakcie przetwarzania procesu. Zapoznając się z definicją operatorów zapoznasz się również z sposobem wykorzystania parametrów na poszczególnych operatorach. Poniżej przedstawiono tylko dwa przykłady w celu zapoznania się z ogólną koncepcją.
Przykład wywołania Triggera z parametrami
- w wywołaniu triggera jako REST API
- w wywołaniu notyfikacji bazy danych (PostgreSQL)
funkcja pg_notify
jako drugi parametr powinna zawierać obiekt JSON zgodny z konstrukcją parametrów w procesie jaki zostanie wywołany
{ “id”: 23 }