- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-17-2019 12:20 PM
Hello,
I have an activiti workflow that i start with this function:
function startWorkflow(assigneePerson) { var workflow = actions.create("start-workflow"); workflow.parameters.workflowName = "activiti$activitiWorkflow"; workflow.parameters["bpm:assignee"] = assigneePerson; var futureDate = new Date(); futureDate.setDate(futureDate.getDate() +7); workflow.parameters["bpm:workflowDueDate"] = futureDate; workflow.parameters["bpm:sendEMailNotifications"] = true; return workflow.execute(document); }
I want the assignee to receive until the due date (during those 7 days) each day a daily reminder to do the task assigned.
How can I do that?
I tried the following:
<process id="activitiWorkflow" name="Review process"> <startEvent id="start" name="Submit Review Task" activiti:formKey="wfa:submitReviewTaskk" /> <sequenceFlow id='flow1' sourceRef='start' targetRef='reviewTask' /> <userTask id="reviewTask" name="Autorisation" activiti:formKey="wfa:activitiReviewTaskk"> </userTask> <endEvent id="end" /> <boundaryEvent id="sid-E18EA6BC-64EC-4511-B9EF-01D8152829AE" attachedToRef="reviewTask" cancelActivity="false"> <timerEventDefinition> <timeCycle>R6/PT24H</timeCycle> </timerEventDefinition> </boundaryEvent> </process>
- Labels:
-
Alfresco Process Services
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-18-2019 11:47 AM
Hello,
I tried the following and it works!!
<process id="activitiWorkflow" name="Review process"> <startEvent id="start" name="Submit Review Task" activiti:formKey="wfa:submitReviewTaskk" /> <sequenceFlow id='flow1' sourceRef='start' targetRef='reviewTask' /> <userTask id="reviewTask" name="Autorisation" activiti:formKey="wfa:activitiReviewTaskk"> <extensionElements> <activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener"> <activiti:field name="script"> <activiti:string> if (typeof bpm_workflowDueDate != 'undefined') task.dueDate = bpm_workflowDueDate if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority; </activiti:string> </activiti:field> </activiti:taskListener> <activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener"> <activiti:field name="script"> <activiti:string> ....... </activiti:string> </activiti:field> <activiti:field name="runAs"> <activiti:string>admin</activiti:string> </activiti:field> </activiti:taskListener> </extensionElements> <humanPerformer> <resourceAssignmentExpression> <formalExpression>${bpm_assignee.properties.userName}</formalExpression> </resourceAssignmentExpression> </humanPerformer> </userTask> <endEvent id="end" />
<boundaryEvent id="timer_review" name="Timer" attachedToRef="reviewTask" cancelActivity="false"> <timerEventDefinition> <timeCycle>R/PT1M</timeCycle> </timerEventDefinition>
</boundaryEvent> <serviceTask id="mailtask_review" name="E-mail Reminder" activiti:class="org.alfresco.repo.workflow.activiti.script.AlfrescoScriptDelegate"> <extensionElements> <activiti:field name="script"> <activiti:string> logger.log("E-mail reminder sent"); <!-- Send e-mail reminder if assignee defined--> if (bpm_assignee != null) { var mail = actions.create("mail"); mail.parameters.to = bpm_assignee.properties.email; mail.parameters.subject = "Subject"; mail.parameters.text = "Reminder task test"; mail.execute(bpm_package.children[0]); logger.log("E-mail reminder sent"); } </activiti:string> </activiti:field> </extensionElements> </serviceTask> <sequenceFlow id="flow7" sourceRef="timer_review" targetRef="mailtask_review"></sequenceFlow> </process>
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-18-2019 03:49 AM
Add an alfresco script task linked to your timer boundary event and add your send email action in that script. put an end event after the script task. you can set variables with Listener to be used in the script task for triggering the mail action.
Be sure to uncheck cancelActivity flag in your Boundary Event.
Abbas
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-18-2019 11:47 AM
Hello,
I tried the following and it works!!
<process id="activitiWorkflow" name="Review process"> <startEvent id="start" name="Submit Review Task" activiti:formKey="wfa:submitReviewTaskk" /> <sequenceFlow id='flow1' sourceRef='start' targetRef='reviewTask' /> <userTask id="reviewTask" name="Autorisation" activiti:formKey="wfa:activitiReviewTaskk"> <extensionElements> <activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener"> <activiti:field name="script"> <activiti:string> if (typeof bpm_workflowDueDate != 'undefined') task.dueDate = bpm_workflowDueDate if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority; </activiti:string> </activiti:field> </activiti:taskListener> <activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener"> <activiti:field name="script"> <activiti:string> ....... </activiti:string> </activiti:field> <activiti:field name="runAs"> <activiti:string>admin</activiti:string> </activiti:field> </activiti:taskListener> </extensionElements> <humanPerformer> <resourceAssignmentExpression> <formalExpression>${bpm_assignee.properties.userName}</formalExpression> </resourceAssignmentExpression> </humanPerformer> </userTask> <endEvent id="end" />
<boundaryEvent id="timer_review" name="Timer" attachedToRef="reviewTask" cancelActivity="false"> <timerEventDefinition> <timeCycle>R/PT1M</timeCycle> </timerEventDefinition>
</boundaryEvent> <serviceTask id="mailtask_review" name="E-mail Reminder" activiti:class="org.alfresco.repo.workflow.activiti.script.AlfrescoScriptDelegate"> <extensionElements> <activiti:field name="script"> <activiti:string> logger.log("E-mail reminder sent"); <!-- Send e-mail reminder if assignee defined--> if (bpm_assignee != null) { var mail = actions.create("mail"); mail.parameters.to = bpm_assignee.properties.email; mail.parameters.subject = "Subject"; mail.parameters.text = "Reminder task test"; mail.execute(bpm_package.children[0]); logger.log("E-mail reminder sent"); } </activiti:string> </activiti:field> </extensionElements> </serviceTask> <sequenceFlow id="flow7" sourceRef="timer_review" targetRef="mailtask_review"></sequenceFlow> </process>

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-20-2022 09:19 AM
is it possible to add custom notification date, 10, 5 or 2 days before to the email notification? Thank you
