Argumenty funkcji
W AMODIT wiele funkcji używa argumentów np AddTableRow(„tableName”,”rowCount”);.
Funkcje mogą:
- nie mieć żadnych argumentów np CurrentStage()
- mieć stałą liczbę argumentów np ShowField(„Nazwa pola”)
- mieć zmienną liczbę argumentów np ForwardCase(„userLogin”,”stageName”,”sendEmail”) gdzie ostatni argument jest opcjonalny i można go nie podawać
W AMODIT, co oczywiste, występują pola na formularzu. Te pola mają swoje nazwy nadawane przez twórcę procesu. Przykładowo niech, to będzie „Numer faktury”. Załóżmy że to pole zawiera wartość „FV/2020/01/95”
W jaki sposób należy odwoływać się do pola i wartości w polu i w jaki sposób zapisać to w sekcji argumentów konkretnej funkcji.
Pierwsze co musimy rozważyć, to czy odnosimy się do pola jako takiego, czy do wartości w tym polu.
Używanie cudzysłowu
Użycie cudzysłowu z nazwą pola
Gdybyśmy chcieli ukryć pole „Numer faktury”, to musimy odnieść się do nazwy pola i nie interesuje nas, co w tym polu jest zapisane, więc funkcja HideField zostanie użyta w ten sposób
HideField("Numer faktury")
Umieściliśmy nazwę pola w cudzysłowie, bo odnosimy się do pola, a nie do wartości w tym polu.
Podobnie gdy chcemy dodać wiersze do tabeli o nazwie „Pozycje faktury” to użyjemy następującego zapisu
AddTableRow("Pozycje faktury")
Użycie cudzysłowu dla oznaczenia tekstu
Cudzysłów używamy również dla bezpośredniego podania tekstu jako argumentu funkcji.
Przykładowo obliczenie długości tekstu „To jest mój tekst” wykonamy w następujący sposób:
_dl = Length("To jest mój tekst")
i funkcja zwróci wartość 17, bo tyle znaków zawiera ten tekst.
Podobnie gdy używamy funkcji ForwardCase i wprost podajemy do kogo i na jaki etap ma być przekazana sprawa np:
ForwardCase("jkowalski","Księgowanie")
W tym przypadku jkowalski jest loginem użytkownika i jako tekst podajemy go w cudzysłowie. Księgowanie jest nazwą etapu i jako tekst podajemy ją w cudzysłowie
Użycie nawiasów kwadratowych []
Jeżeli chcemy odnieść się do wartości w polu, to nazwę pola podajemy w nawiasach kwadratowych.
Zobaczmy na przykładzie funkcji Length, która zwraca długość tekstu. Załóżmy, że istnieje pole tekstowe o nazwie „Numer faktury”. i zawiera ono wartość „FV/2020/01/956”. Gdy użyjemy funkcji
_dl = Length( [Numer faktury] )
to zwróci ona nam długość tekstu „FV/2020/01/956”, bo taki aktualnie jest w polu Numer faktury, dla tej konkretnej sprawy, dla której uruchamiana jest reguła.
Kolejny przykład w oparciu o funkcję ForwardCase. Załóżmy że istnieje pole o nazwie „Osoba opiniująca” i pole to zawiera aktualnie wartość „piotrb”, to użycie funkcji
ForwardCase( [Osoba opiniująca] , "Etap zbierania opinii")
spowoduje przekazanie sprawy do osoby o loginie „piotrb” na etap o nazwie „Etap zbierania opinii”
Bez użycia cudzysłowu i bez użycia nawiasów kwadratowych
Niektóre typu argumentów mogą być podane bez użycia cudzysłowu i bez nawiasów.
Użycie zmiennej
W regułach możemy używać zmiennych lokalnych i możemy je dowolnie nazywać zaczynając od litery lub podkreślnika np
_zmienna = "jkowalski"
użycie jej w funkcji np GetUserData będzie wyglądało tak
_stanowisko = GetUserData( _zmienna, "position")
W wyniku wywołania funkcji zostanie pobrana nazwa stanowiska dla użytkownika „jkowalski”
Użycie wartości logicznych true i false
Wartości logiczne mogą być podawane bez cudzysłowu. Przykładowo w funkcji
IsFormValid(true);
W tym przypadku możemy słowo true podać jako argument bez użycia cudzysłowu. Oczywiście można również wywołać ją w ten sposób
IsFormValid("true");
i też zostanie to przyjęte i wykonane prawidłowo.
Użycie wartości liczbowych
Możemy w niektórych funkcjach podawać bezpośrednio wartości liczbowe np w funkcji AddTableRow, gdy chcemy podać ile wierszy ma być dodanych np tak
AddTableRow("Pozycje faktury", 3 )
gdzie 3 jest liczbą podaną bezpośrednio bez cudzysłowu. Oczywiście prawidłowym jest również następujące wywołanie
AddTableRow("Pozycje faktury", "3" )