I haven't found much documentation on the args structure. Whenever I need to use them, I get the info using intellisense and debugs. I then add the info to the top of the BR like this:
#Region "DataQuality args, steps and operations list"
#Region "Steps"
' DataQuality steps:
' BREventOperationType.DataQuality.Certify
' BREventOperationType.DataQuality.Confirm
' BREventOperationType.DataQuality.ICTransStatus
' BREventOperationType.DataQuality.PrepareICMatch
' BREventOperationType.DataQuality.ProcessCube
#End Region
#Region "Operation: Certify"
' DataQuality Certify operations:
' BREventOperationType.DataQuality.Certify.EndSetCertifyState
' BREventOperationType.DataQuality.Certify.EndSetQuestionairreState
' BREventOperationType.DataQuality.Certify.FinalizeSaveQuestionResponse
' BREventOperationType.DataQuality.Certify.FinalizeSetCertifyState
' BREventOperationType.DataQuality.Certify.FinalizeSetQuestionairreState
' BREventOperationType.DataQuality.Certify.SaveCertifyState
' BREventOperationType.DataQuality.Certify.SaveQuestionairreState
' BREventOperationType.DataQuality.Certify.SaveQuestionResponse
' BREventOperationType.DataQuality.Certify.StartSetCertifyState
' BREventOperationType.DataQuality.Certify.StartSetQuestionairreState
#End Region
#Region "Operation: Confirm"
' DataQuality Confirm operations:
' BREventOperationType.DataQuality.Confirm.EndConfirm
' BREventOperationType.DataQuality.Confirm.FinalizeConfirm
' BREventOperationType.DataQuality.Confirm.StartConfirm
#End Region
#Region "Operation: ICTransStatus"
' DataQuality ICTransStatus operations:
' BREventOperationType.DataQuality.ICTransStatus.AddICTransactionStatus
' BREventOperationType.DataQuality.ICTransStatus.FinalizeAddICTransactionStatus
#End Region
#Region "Operation: PrepareICMatch"
' DataQuality PrepareICMatch operations:
' BREventOperationType.DataQuality.PrepareICMatch.EndICMatch
' BREventOperationType.DataQuality.PrepareICMatch.PrepareICMatchData
' BREventOperationType.DataQuality.PrepareICMatch.StartICMatch
#End Region
#Region "Operation: ProcessCube"
' ProcessCube operations:
' BREventOperationType.DataQuality.ProcessCube.Calculate
' BREventOperationType.DataQuality.ProcessCube.Consolidate
' BREventOperationType.DataQuality.ProcessCube.EndProcessCube
' BREventOperationType.DataQuality.ProcessCube.NoCalculate
' BREventOperationType.DataQuality.ProcessCube.StartProcessCube
' BREventOperationType.DataQuality.ProcessCube.Translate
#End Region
#Region "args inputs"
#Region "Operation: Certify"
' Dim wfUnitClust As WorkflowUnitPk = DirectCast(args.Inputs(1), WorkflowUnitPk)
' Dim certifyInstance As CertifyInstanceInfo = DirectCast(args.Inputs(2), CertifyInstanceInfo)
' Dim certifyInstance As CertifySignOffInstanceInfo = DirectCast(args.Inputs(2), CertifySignOffInstanceInfo)
#End Region
#Region "Operation: ProcessCube"
' Dim wfUnitPK As WorkflowUnitPk = DirectCast(args.inputs(0), WorkflowUnitPk)
' Dim tskActivity As TaskActivityItem = DirectCast(args.inputs(1), TaskActivityItem)
' Dim calcInfo As DataUnitInfo = DirectCast(args.Inputs(2), DataUnitInfo)
#End Region
#Region "Operation: ICTransStatus"
' Dim TransactionStatus As ICMatchStatusInfo = DirectCast(args.inputs(0), ICMatchStatusInfo)
#End Region
#End Region
#End Region
If I ever have to use the DataQualityEventHandler for the Confirm or PrepareICMatch steps, I will investigate and update the header.