...
Akcja
Akcje formularza to komponenty, 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:
- Adnotację
Javadoc |
---|
displayValue | @Actions |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.Actions |
---|
|
(jeżeli akcja nie jest definiowana we wtyczce, musi ona pochodzić z pakietu com.suncode
) - Adnotację
Javadoc |
---|
displayValue | @ActionsScript |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.ActionsScript |
---|
|
ze ścieżką do skryptu z classpath - Publiczną metodę oznaczoną adnotacją
Javadoc |
---|
displayValue | @Define |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.component.annotation.Define |
---|
|
z jednym parametrem Javadoc |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.ActionDefinitionBuilder |
---|
|
(w jednej klasie @Actions
może być zdefiniowanych wiele różnych akcji)
Przykładowa definicja przedstawiona jest poniżej:
Code Block |
---|
language | java |
---|
linenumbers | true |
---|
|
@Action
@ActionScript( "actions/example.js" )
public class ExampleActions
{
@Define
public void logger( ActionDefinitionBuilder action )
{
// tworzenie definicji akcji
}
} |
Akcja musi być zdefiniowana po stronie serwera. W tym celu należy utworzyć klasę i oznaczyć ją adnotacją
Javadoc |
---|
displayValue | @Action |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.Action |
---|
|
. Adnotacja ta sprawia, że system będzie szukał definicji akcji w tej klasie. Dodatkowo należy dodać adnotację Javadoc |
---|
displayValue | @ActionScript |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.ActionScript |
---|
|
i jako jej wartość podać relatywną ścieżkę do skryptu z implementacją akcji. W tak przygotowanej klasie należy teraz dodać definicję akcji. W tym celu trzeba dodać metodę i oznaczyć ją adnotacją Javadoc |
---|
displayValue | @DefineAction |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.DefineAction |
---|
|
. Metoda musi przyjmować jeden parametr typu Javadoc |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.ActionDefinitionBuilder |
---|
|
. W implementacji metody należy za pomocą przekazanego builder'a zdefiniować wszystkie własności akcji.
Elementy docelowe
Elementy docelowe wskazywane są na etapie tworzenia definicji akcji. Określają one, do jakich elementów formularza może być dodana akcja:
...
Jeżeli przekazana zostanie do parametru wartość innego typu niż w definicji, to zostanie ona skonwertowana do tego typu.
Definiowanie akcji
Akcja musi być zdefiniowana po stronie serwera. W tym celu należy utworzyć klasę i oznaczyć ją adnotacją
Javadoc |
---|
displayValue | @Action |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.Action |
---|
|
. Adnotacja ta sprawia, że system będzie szukał definicji akcji w tej klasie. Dodatkowo należy dodać adnotację
Javadoc |
---|
displayValue | @ActionScript |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.ActionScript |
---|
|
i jako jej wartość podać relatywną ścieżkę do skryptu z implementacją akcji. W tak przygotowanej klasie należy teraz dodać definicję akcji. W tym celu trzeba dodać metodę i oznaczyć ją adnotacją
Javadoc |
---|
displayValue | @DefineAction |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.annotation.DefineAction |
---|
|
. Metoda musi przyjmować jeden parametr typu
Javadoc |
---|
property | javadoc.plusworkflow |
---|
className | com.suncode.pwfl.workflow.form.action.ActionDefinitionBuilder |
---|
|
. W implementacji metody należy za pomocą przekazanego builder'a zdefiniować wszystkie własności akcji.
...