Cancel Workflow through Code in x++
Cancel Workflow through Code in x++
private void updateWorkflowStatus(SalesTable salesTable)
{
WorkflowTrackingStatusTable _workflowTrackingStatusTable;
select firstonly CorrelationId, TrackingStatus
from _workflowTrackingStatusTable
where salesTable.RecId == _workflowTrackingStatusTable.ContextRecId
&& salesTable.TableId == _workflowTrackingStatusTable.ContextTableId
&& _workflowTrackingStatusTable.TrackingStatus != WorkflowTrackingStatus::Cancelled;
if(_workflowTrackingStatusTable
&& _workflowTrackingStatusTable.TrackingStatus != WorkflowTrackingStatus::Cancelled)
{
Workflow::cancelWorkflow(_workflowTrackingStatusTable.CorrelationId, "cancel by code");
}
salesTable.selectForUpdate(true);
ttsbegin;
salesTable.DSSH_WorkFlowStatus = DSSH_WorkFlowStatus::NotSubmitted;
salesTable.update();
ttscommit;
}
Comments
Post a Comment