FireRules
Zastosowanie
Funkcja FireRules() uruchamia reguły automatyczne z określonej tabeli lub sprawy (innej niż bieżąca), do której odwołuje się identyfikator lub pole typu odnośnik do procesu.
UWAGA! Nie należy używać funkcji FireRules() dla bieżącej sprawy, czyli robić czegoś takiego: FireRules([CaseId]). Nie dotyczy to wywołania tej funkcji na tabeli z bieżącej sprawy. Jeżeli chcemy wymusić wywołanie się jakiejś reguły na bieżącej sprawie, to należy wykorzystać funkcję reguł CallFunction().
Składnia
FireRules(source); FireRules(source, rowSpecifier);
Argumenty
- source – (String) Określa, skąd mają być uzyskane dane. Ten parametr może określać tabelę (również z zagnieżdżonymi tabelami), tj . tabela lub tabela1> tabela2> tabela3 lub nazwę pola typu odnośnik do procesu lub wprost identyfikator (innej niż bieżąca) sprawy.
- rowSpecifier– (String) Określa wiersz, dla którego mają zostać uruchomione reguły (domyślnie = pierwszy).
- Dozwolone wartości: [first | last| rowNumber] (rowNumber to numeryczny indeks wiersza, tj. „3” dla trzeciego wiersza). Gdy jako źródło używasz nazwy pola typu odnośnik do procesu lub wprost identyfikatora sprawy, to ten parametr jest ignorowany.
Zwracana wartość
Ta funkcja zwraca wartość logiczną.
FireRules() zwraca true, jeśli reguły zostały pomyślnie uruchomione, w przeciwnym razie false.
Przykłady
Przykład 1
Positions to nazwa tabeli na sprawie. Użycie jak w poniższym przykładzie spowoduje uruchomienie reguły dla tabeli Positions dla wszystkich wierszy.
FireRules("Positions");
Przykład 2
W tym przypadku zostanie uruchomiona reguła dla tabeli People dla trzeciego wiersza.
FireRules("People", 3);
Przykład 3
W tym przypadku zostanie uruchomiona reguła dla ostatniego wiersza zagnieżdżonej tabeli Positions.
FireRules("Invoices>Positions", "last");
Przykład 4
W tym przypadku tworzona jest nowa sprawa w procesie „Invoice acceptation” i dodatkowo uruchamiane są reguły dla tej nowo utworzonej sprawy.
caseID = CreateCase("Invoice acceptation"); FireRules(caseID);
Przykład 5
W tym przypadku po ustawieniu parametrów w innej sprawie o identyfikatorze 6171, uruchamiamy dla tamtej sprawy reguły, aby np. przeliczyły się wartości w tamtej sprawie.
_other_caseid = 6171; Set(_other_caseid, "Quantity", 200); FireRules(_other_caseid);