FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)// ===== Explanation softlinks ===== 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 [[en:software:tim:actionhandler:startsoftlinksfromprocessvariableshandler|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.\\ \\ === JavaScript === == WebService == webService.ProcessVariableManager.startNewSubProcessInstanceWithSoftLink __Parameter:__\\ - Name of the process definition to be started - Inheritance of all process variables of the main process (true/false) - ID of the main process - Name of the softlink instance - Callback function __Example:__\\ webService.ProcessVariableManager.startNewSubProcessInstanceWithSoftLink('IAMTHEPROCESSTOBESTARTED', true, '010101', 'THATISHOWMYINSTANCESHOULDBENAMED', function(WEBSERVICEANSWER){ PROCESSING THE REPLY... }); == Button in smartform == 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):__\\ - Name of the process definition to be started or name of a process variable which contains the name of the process definition!! - Inheritance of process variables of the main process (true/false) - Name of the softlink instance or name of a process variable which contains the name!! - Callback function OPTIONAL!! __Example:__\\ Softlink Button === Evaluate softlinks === == Webservice == 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);