...
Tip | ||
---|---|---|
| ||
Akcja
Akcje formularza to komponenty użytkownika, umożliwiające wykonywanie dowolnych akcji na formularzu zadania w reakcji na działania użytkownika, zmiany danych czy też inne zdarzenia formularza. Przykładowe akcje mogą np.
...
Stworzone akcje dostępne są w edytorze procesów i mogą być łatwo wykorzystane w procesie biznesowym umożliwiając tym samym realizacje logiki biznesowej. Ich zachowanie może być dodatkowo konfigurowane za pomocą parametrów.
Definiowanie akcji
Akcje tworzone są w oparciu o ich definicję stworzoną przez użytkownika. Definicja taka musi zawierać następujące elementy:
...
Code Block |
---|
@Actions @ActionsScript( value = "actions/example.js", fragments = { ActionUIFragment.FORM, ActionUIFragment.HISTORY } ) public class ExampleActions |
Elementy docelowe (destination)
Elementy docelowe wskazywane są na etapie tworzenia definicji akcji w metodzie destination()
. Określają one, do jakich elementów formularza może być dodana akcja:
Element | Opis | Przykłady akcji | Wybór w PWE | ||||||
---|---|---|---|---|---|---|---|---|---|
ActionDestination.form() | Formularz Akcja dodana do formularza inicjowana jest metodą | Akcje w których nie można wskazać głównego elementu np.
| |||||||
ActionDestination.variable() | Zmienna Akcja dodana do zmiennej formularza inicjowana jest metodą
| Akcje w których można jednoznacznie wskazać zmienną, której akcje dotyczy (w największym stopniu) np.
| |||||||
ActionDestination.variableSet() | Tabelka dynamiczna Akcja dodana do zmiennej formularza inicjowana jest metodą
| Akcje które dotyczą tabelki dynamicznej i potrzebują jej identyfikator np.
| |||||||
ActionDestination.button() | Przycisk Akcja dodana do przycisku formularza inicjowana jest metodą
| Akcje których źródłem jest przycisk np.
|
Inicjalizacja akcji
Warning |
---|
Funkcjonalność jeszcze niedostępna. |
...
Wybrany parametr jest możliwy do odczytu w akcji w funkcji getInitializationType. Ustawienie tego parametru NIE WPŁYWA na działanie akcji, jeżeli nie zaimplementował tego twórca akcji.
Przypisanie elementu docelowego do parametru (bindTo)
Wybrany element docelowy akcji może zostać przekazany do parametru akcji poprzez podanie w parametrze bindTo
identyfikatora parametru docelowego. Np.
...
Element docelowy | Przypisana wartość |
---|---|
Zmienna | Zmienna |
Tabelka dynamiczna | Identyfikator tabelki dynamicznej |
Przycisk | Identyfikator przycisku (nazwa akcji) |
Implementacja akcji
Zdefiniowana na serwerze akcja formularza musi zostać zarejestrowana i zaimplementowana po stronie przeglądarki. Rejestrację umożliwia klasa
Jsdoc | ||||
---|---|---|---|---|
|
Jsdoc | ||||||
---|---|---|---|---|---|---|
|
Code Block | ||||
---|---|---|---|---|
| ||||
PW.FormActions.create('hide-variables', { init: function(){ this.variables = this.get("variables"); this.variablesNames = []; }, enable: function(){ this.hideVariables(); }, disable: function(){ this.showVariables(); }, hideVariables: function() { this.setVariablesVisibility(false); }, showVariables: function() { this.setVariablesVisibility(true); }, setVariablesVisibility: function(visible) { PW.each(this.variables, function(variable){ if(visible){ variable.show(); } else{ variable.hide(); } }, this); } }); |
Akcje domyślne
W celu ułatwienia tworzenia akcji które reagują na domyślne zdarzenia elementów docelowych możliwe jest zdefiniowanie tzw. akcji domyślnych.
...
Code Block |
---|
PW.FormActions.create('message', { // domyślne akcje defaultActions: { button: function(button){ this.showMsg(); }, variable: function(variable, newValue, oldValue){ this.showMsg(); }, variableSet: function(variableSet, added, updated, removed){ this.showMsg(); } }, showMsg: function(){ ServiceFactory.getMessageService().showSuccess(this.get('msg')); } }); |
Wiele źródeł (targetów) akcji
Warning |
---|
Funkcjonalność jeszcze niedostępna. |
...
Symbol błyskawicy zostaje wyświetlony przy każdym z dodanych targetów, lecz edycja takiej akcji jest globalna.
Rejestracja akcji we wtyczce
Jeżeli akcja jest definiowana we wtyczce to należy dodatkowo zaznaczyć, że wtyczka ta udostępnia akcje. W tym celu należy w pliku suncode-plugin.xml dodać wpis:
...