cap08
7 months agoNew Contributor III
Lock all workflows and descendants using a business rule
I'm creating a business rule to automatically lock all workflows and descendants using:
BRApi.Workflow.Locking.LockWorkflowUnitDescendants(si, wfClusterPk, profileTypeFilter, workflowChannelKey)
but I'm getting the error: 'the item was not found'. I found an example online but it's not working for me. I didn't know what to populate wfClusterPk with so I defined it as (). I'm fairly new to VB.net and appreciate any help with this - thanks!
Dim wfClusterPk As New WorkflowUnitClusterPk()
Dim wfChannelKey As Guid = Guid.Empty
BRapi.Workflow.Locking.LockWorkflowUnitDescendants(si, wfClusterPk, WorkflowProfileTypes.AllProfiles, wfChannelKey)
cap08 - Here is an example basically it is getting the current WF Profile and locking it using extender rule.
Dim wfInfo As WorkflowInfo = BRApi.Workflow.Status.GetWorkflowStatus(si,si.WorkflowClusterPk) Dim A As String = wfInfo.Name brapi.ErrorLog.LogMessage(si,A) If wfInfo.Locked Then Brapi.ErrorLog.LogMessage(si,"Not Locked") Else 'BRApi.Workflow.Locking.LockWorkflowUnit(si,si.WorkflowClusterPk) BRApi.Workflow.Locking.LockWorkflowUnitDescendants(si,si.WorkflowClusterPk,workflowprofiletypes.InputImportChild,si.WorkflowClusterPk.ProfileKey) Brapi.ErrorLog.LogMessage(si," Locked") End If