Wiki source code of Statusverarbeitung


Show last authors
1 {{content/}}
2
3 == Interface: IPluginProcessing ==
4
5 === Uses ===
6
7 {{figure image="plugin_processing_en.png" width="400" clear="h3"}}
8 Placement of the status processing plugin within the process chain of {{formcycle case="dat"/}}
9 {{/figure}}
10
11 * Connection of own web service interfaces that are to further process transmitted form values.
12 * Connection of external systems which are to further process form values
13
14 === Method signatures ===
15
16 The plugin interface //IPluginProcessing// references all methods provided by the [[Basic Interface IFCPlugin>>doc:Formcycle.PluginDevelopment.Types.IFCPlugin]].
17 and additionally the following plugin-specific method signatures:
18
19 {{panel title="{{code language='java'~}~}IPluginProcessingRetVal execute(IPluginProcessingParams params) throws FCPluginException{{/code~}~}" triggerable="true" fullwidth="true"}}
20
21 **Transfer values.
22
23 {{warning}}
24 Placeholder substitution is applied to all parameters before they are passed to the plugin. For example, //[%tf1%]// within the value of a parameter is replaced by the content of the form field with the name //tf1//. At present, it is not possible to set whether the placeholder replacement should be carried out or not.
25 {{/warning}}
26
27 The //IPluginProcessingParams// type provides the following properties:
28 * Access to the workflow processing context (//IWorkflowProcessingContext//) and thus to central object such as:
29 ** current process
30 ** form data
31 ** session parameters
32 ** parameters from upstream action processing of the same status
33 ** current user context in order to be able to perform database operations, for example
34 * Access to the action object in which the processing is carried out and thus information about the classification of the current action within the status processing.
35 * Access to the parameters configured on the status processing plug-in.
36
37 **Return values
38 The return value must be of type //IPluginProcessingRetVal//.
39 This makes it possible to return simple status values (//true// or //false//), but also several values in the form of strings or binary data of a file.
40
41 The following table names the possible return interfaces and their reference implementation:
42
43 {{table dataTypeAlpha="0-1"}}
44 |= Interface|= Reference implementation|= Description
45 |IProcessingResultSuccess|ProcessingResultSuccess|Return a status (//true// or //false//)
46 |IProcessingResultIntValue|ProcessingResultIntValue|Returns a status and an integer value.
47 |IProcessingResultStringValue|ProcessingResultStringValue|Returns a status and a string value.
48 |IProcessingResultMultiValue|ProcessingResultMultiValue|Returns a status and a map with string values.
49 |IProcessingResultFilePath|ProcessingResultFilePath|Returns a status and a file path.
50 |IProcessingResultFileData|ProcessingResultFileData|returns a status and the binary data of a file.
51 {{/table}}
52 {{html}}<br>{{/html}}
53 If the plugin is processed incorrectly, an //FCPluginException// is thrown. This can be reacted to in the status processing of {{formcycle case="dat"/}}, by configuring an action to be executed in the event of an error.
54 {{/panel}}