This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)
A softlink can be created at any point of a process without being considered in the modeling of the main process.
Unlike a subprocess a softlink does not proceed sequentially to its main process.
A limited sequencing can be achieved by the inclusion of a timer/actionhandler.
The connection is done by a process variable in the softlink which has the ID of the main process as value.
A softlink can either be created by implementing the necessary JavaScript functions or by an ActionHandler.
A softlink has no special conditions so every runnable process can be considered as softlink.
In order to evaluate the launched softlinks of a process, the corresponding JavaScript code must be implemented, which allows a graphical analysis in the smartform of the main process.
webService.ProcessVariableManager.startNewSubProcessInstanceWithSoftLink
Parameter:
Example:
webService.ProcessVariableManager.startNewSubProcessInstanceWithSoftLink('IAMTHEPROCESSTOBESTARTED', true, '010101', 'THATISHOWMYINSTANCESHOULDBENAMED', function(WEBSERVICEANSWER){ PROCESSING THE REPLY... });
It is possible to include a button in the smartform which starts a softlink by clicking.
The button needs the initMethod: 'createSoftLink'.
Parameter in value (';' seperate):
Example:
<input type='BUTTON' id='REPLACEME' name='REPLACEME' value='PROCESSDEFINITIONNAME;true;NEWNAME;IAMTHENAMEOFTHECALLBACK' initMethod='createSoftLink'>Softlink Button</input>
To find all softlinks of a process:
webService.ProcessInstanceManager.getSoftLinkedSubprocesses('IDOFTHEMAINPROCESS', function(WEBSERVICEANSWER){ PROCESSING THE REPLY... });
To evaluate all variables of a softlink:
webService.ProcessVariableManager.getProcessContextEntity('IDOFTHESOFTLINK', function(WEBSERVICEANSWER){ PROCESSING THE REPLY... });
For changing the variables of a softlink, the WSEntity which was received by webService.ProcessVariableManager.getProcessContextEntity must be changed and returned .
webService.GenericEntityManager.merge(WSENTITY);