01-10-2022
02:43 PM
- last edited on
02-10-2022
01:47 PM
by
jvonallmen
Does any one know if there is a BR command that can get the Workflow Name value from the Workflow Settings area of the Profile Properties (e.g. Import, Validate, Process) in a business rule?
To be clear, I'm not looking for the name of the workflow from the General section. I'm looking for the part of the workflow that determines the chevrons/bubbles that walk the user through the workflow steps
Thanks,
G
Solved! Go to Solution.
01-10-2022 09:19 PM - edited 01-10-2022 09:32 PM
Hi Gidon,
I'm not aware of a supported or clean way to convert a workflow name key to a meaningful name. Perhaps someone else here may know a way?
How is the workflow to check being determined in your rule? If the workflow to check the property for is the user's POV workflow profile, you can use the following approach to retrieve the user's WorkflowInitInfo object and from there, you can retrieve a legible workflow name.
'get the user's POV WF profile info
Dim wfInfo As WorkflowInitInfo = BRApi.Workflow.General.GetUserWorkflowInitInfo(si)
'retrieve the WF name property from the WF
Dim wfName As String = wfInfo.GetSelectedWorkflowUnitInfo().WorkflowName
Regards,
Nick Kroppe
01-10-2022 05:11 PM
Hi Gidon,
The GetAttributeValue workflow profile info property will enable you to retrieve the workflow key value equivalent to the property you are attempting to query. You then may be able to make use of this key by leveraging the shared constants workflow enumeration helper. Hoping this snippet helps.
'retrieve the WF Info for houston.import
Dim wfProfileInfo As WorkflowProfileInfo = BRApi.Workflow.Metadata.GetProfile(si, "Houston.Import")
'retrieve the wf name key as a string for the default scenario type
Dim wfNameKey As String = wfProfileInfo.GetAttributeValueForDefaultScenarioType(sharedConstants.WorkflowProfileAttributeIndexes.Workflow, String.Empty)
'check to see if houston.import has a workflow name of Import-Validate-Load aka a Simple Data Load
If wfNameKey.XFEqualsIgnoreCase(SharedConstants.WorkflowKeys.Workflows.SimpleDataLoad) Then
'do something
End If
Regards,
Nick Kroppe
01-10-2022 05:53 PM
Thanks Nick,
Is there a way to lookup what wfNameKey equates to in English? In other words, I want to return the name, not check to if it is "Import, Validate, Load".
01-10-2022 09:19 PM - edited 01-10-2022 09:32 PM
Hi Gidon,
I'm not aware of a supported or clean way to convert a workflow name key to a meaningful name. Perhaps someone else here may know a way?
How is the workflow to check being determined in your rule? If the workflow to check the property for is the user's POV workflow profile, you can use the following approach to retrieve the user's WorkflowInitInfo object and from there, you can retrieve a legible workflow name.
'get the user's POV WF profile info
Dim wfInfo As WorkflowInitInfo = BRApi.Workflow.General.GetUserWorkflowInitInfo(si)
'retrieve the WF name property from the WF
Dim wfName As String = wfInfo.GetSelectedWorkflowUnitInfo().WorkflowName
Regards,
Nick Kroppe
01-10-2022 09:37 PM
Thanks Nick! This solution works perfectly.