Przykład magistral
Zasadniczą cechą magistrali jest jej budowa, czyli:
- rekordy (wiersze)
- bity (kolumny) transportujące dane w strumieniu danych, które posiadają określony typ danych (integer, text itp.)
- magistrala jest “płaska” - dane nie posiadają zagłębień. Transportowanie danych typu rodzic → dziecko (zamówienie i jego pozycje) jest możliwe tylko poprzez powielenie danych w bitach rodzica tyle razy ile rodzic ma dzieci.
Operatory powodujące rozgałęzienie magistrali (SPLITTER, IF) powodują duplikacje danych na dwa różne strumienie danych. W takim wypadku system zawsze w pierwszej kolejności będzie prowadził przepływ danych po górnej magistrali wychodzącej z takiego operatora.
KONFIGURACJA MAGISTRALI
Po połączeniu dwóch operatorów magistrala jest automatycznie konfigurowana na podstawie sygnału operatora źródłowego.
Zaznaczając magistrale poprzez kliknięcie myszki widzisz z jakich bitów składa się magistrala danych, bity posiadają nazwę, którą będziesz się posługiwał na operatorach, opis oraz typ.
Możesz wprowadzić samodzielnie opisy do kolumn.
Typ bitu odpowiada typowi danych jaki transportuje magistrala (jaki wynika z operatora źródłowego).
Dostępne typy bitów:
- Text → tekst o dowolnej długości
- Integer → liczby całkowite (odpowiednik typu int32)
- Long → liczby całkowite (odpowiednik typu int64)
- Double → liczby zmiennoprzecinkowe
- Boolean → stan true lub false
- DateTime → Data oraz czasem
- Date → Data
- Time → Czas
- Blob → Dane binarne - trybie uruchomienia procesu manualnym jako debuger są widoczne jako Text zakodowany w base64
Z zasady typów bitów nie można zmienić na magistrali. Istnieją jednak wyjątki, w których jest to możliwe. Jest to miejsce podłączenia z operatorem typu INPUT (operatory wejścia) oraz operatory mające możliwość zmiany magistrali danych (np. CALL SQL). Ponieważ w tych sytuacjach operatory automatycznie rozpoznają dane jakie zaczytują istnieje możliwość korekty typu danych. Możesz jej dokonać klikając na magistralę bezpośrednio podłączoną z operatorem np. typu INPUT, a następnie modyfikując typ danych wybranego bitu.
Wykonując tę operację system będzie się starał propagować zamianę typu na cały projekt. Zarówno na wszystkich magistralach jak i operatorach korzystających z tego bitu typ zostanie zmieniony.
AUTOGENEROWANIE COLUMN
W przypadku zmian szerokości magistrali (operator WIDTH BUSBAR) lub ich struktury (np. opcja Create a busbar from result w operatorze CALL SQL lub innych zmianach) może okazać się, że konieczne będzie ponowne wygenerowanie kolumn na magistrali. W takim wypadku użyj przecisku AUTOGENERATE COLUMNS na oknie właściwości magistrali.
Opcja ta generuje ponownie bity magistrali na podstawie strumienia danych wychodzącego z operatora źródłowego, a system propaguje ją na wszystkie kolejne operatory i magistrale, co może powodować problemy z już zdefiniowanymi operatorami (patrz uwaga powyżej).