Codeunit "Workflow Setup"

ID 1502
Namespace: System.Automation

Methods

InitWorkflow

procedure InitWorkflow()

InsertWorkflowCategories

procedure InsertWorkflowCategories()

InsertWorkflowTemplate

procedure InsertWorkflowTemplate(var Workflow: Record Workflow, WorkflowCode: Code[17], WorkflowDescription: Text[100], CategoryCode: Code[20])

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
WorkflowCode Code[17]
WorkflowDescription Text[100]
CategoryCode Code[20]

InsertApprovalsTableRelations

procedure InsertApprovalsTableRelations()

InsertIncomingDocumentApprovalWorkflowTemplate

procedure InsertIncomingDocumentApprovalWorkflowTemplate()

InsertOverdueApprovalsWorkflow

procedure InsertOverdueApprovalsWorkflow(): Code[20]

Returns

Type Description
Code[20]

InsertCustomerApprovalWorkflow

procedure InsertCustomerApprovalWorkflow()

InsertVendorApprovalWorkflow

procedure InsertVendorApprovalWorkflow()

InsertItemApprovalWorkflow

procedure InsertItemApprovalWorkflow()

JobQueueEntryWorkflowCode

procedure JobQueueEntryWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

IncomingDocumentWorkflowCode

procedure IncomingDocumentWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

IncomingDocumentApprovalWorkflowCode

procedure IncomingDocumentApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

IncomingDocumentOCRWorkflowCode

procedure IncomingDocumentOCRWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

IncomingDocumentToGenJnlLineOCRWorkflowCode

procedure IncomingDocumentToGenJnlLineOCRWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseInvoiceWorkflowCode

procedure PurchaseInvoiceWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseInvoiceApprovalWorkflowCode

procedure PurchaseInvoiceApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseBlanketOrderApprovalWorkflowCode

procedure PurchaseBlanketOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseCreditMemoApprovalWorkflowCode

procedure PurchaseCreditMemoApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseQuoteApprovalWorkflowCode

procedure PurchaseQuoteApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseOrderApprovalWorkflowCode

procedure PurchaseOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

PurchaseReturnOrderApprovalWorkflowCode

procedure PurchaseReturnOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesInvoiceApprovalWorkflowCode

procedure SalesInvoiceApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesBlanketOrderApprovalWorkflowCode

procedure SalesBlanketOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesCreditMemoApprovalWorkflowCode

procedure SalesCreditMemoApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesQuoteApprovalWorkflowCode

procedure SalesQuoteApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesOrderApprovalWorkflowCode

procedure SalesOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesReturnOrderApprovalWorkflowCode

procedure SalesReturnOrderApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

OverdueNotificationsWorkflowCode

procedure OverdueNotificationsWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesInvoiceCreditLimitApprovalWorkflowCode

procedure SalesInvoiceCreditLimitApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SalesOrderCreditLimitApprovalWorkflowCode

procedure SalesOrderCreditLimitApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

CustomerWorkflowCode

procedure CustomerWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

CustomerCreditLimitChangeApprovalWorkflowCode

procedure CustomerCreditLimitChangeApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

VendorWorkflowCode

procedure VendorWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

ItemWorkflowCode

procedure ItemWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

ItemUnitPriceChangeApprovalWorkflowCode

procedure ItemUnitPriceChangeApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

GeneralJournalBatchApprovalWorkflowCode

procedure GeneralJournalBatchApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

GeneralJournalLineApprovalWorkflowCode

procedure GeneralJournalLineApprovalWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

SendToOCRWorkflowCode

procedure SendToOCRWorkflowCode(): Code[17]

Returns

Type Description
Code[17]

InsertDocApprovalWorkflowSteps

procedure InsertDocApprovalWorkflowSteps(Workflow: Record Workflow, DocSendForApprovalConditionString: Text, DocSendForApprovalEventCode: Code[128], DocCanceledConditionString: Text, DocCanceledEventCode: Code[128], WorkflowStepArgument: Record "Workflow Step Argument", ShowConfirmationMessage: Boolean)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
DocSendForApprovalConditionString Text
DocSendForApprovalEventCode Code[128]
DocCanceledConditionString Text
DocCanceledEventCode Code[128]
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
ShowConfirmationMessage Boolean

InsertRecApprovalWorkflowSteps

procedure InsertRecApprovalWorkflowSteps(Workflow: Record Workflow, ConditionString: Text, RecSendForApprovalEventCode: Code[128], RecCreateApprovalRequestsCode: Code[128], RecSendApprovalRequestForApprovalCode: Code[128], RecCanceledEventCode: Code[128], WorkflowStepArgument: Record "Workflow Step Argument", ShowConfirmationMessage: Boolean, RemoveRestrictionOnCancel: Boolean)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
ConditionString Text
RecSendForApprovalEventCode Code[128]
RecCreateApprovalRequestsCode Code[128]
RecSendApprovalRequestForApprovalCode Code[128]
RecCanceledEventCode Code[128]
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
ShowConfirmationMessage Boolean
RemoveRestrictionOnCancel Boolean

InsertRecChangedApprovalWorkflowSteps

procedure InsertRecChangedApprovalWorkflowSteps(Workflow: Record Workflow, RuleOperator: Option, RecChangedEventCode: Code[128], RecCreateApprovalRequestsCode: Code[128], RecSendApprovalRequestForApprovalCode: Code[128], var WorkflowStepArgument: Record "Workflow Step Argument", TableNo: Integer, FieldNo: Integer, RecordChangeApprovalMsg: Text)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
RuleOperator Option
RecChangedEventCode Code[128]
RecCreateApprovalRequestsCode Code[128]
RecSendApprovalRequestForApprovalCode Code[128]
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
TableNo Integer
FieldNo Integer
RecordChangeApprovalMsg Text

InsertGenJnlBatchApprovalWorkflowSteps

procedure InsertGenJnlBatchApprovalWorkflowSteps(Workflow: Record Workflow, ConditionString: Text, RecSendForApprovalEventCode: Code[128], RecCreateApprovalRequestsCode: Code[128], RecSendApprovalRequestForApprovalCode: Code[128], RecCanceledEventCode: Code[128], WorkflowStepArgument: Record "Workflow Step Argument", ShowConfirmationMessage: Boolean)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
ConditionString Text
RecSendForApprovalEventCode Code[128]
RecCreateApprovalRequestsCode Code[128]
RecSendApprovalRequestForApprovalCode Code[128]
RecCanceledEventCode Code[128]
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
ShowConfirmationMessage Boolean

InsertGenJnlLineApprovalWorkflowSteps

procedure InsertGenJnlLineApprovalWorkflowSteps(var Workflow: Record Workflow, EventConditions: Text, ApproverType: Enum "Workflow Approver Type", LimitType: Enum "Workflow Approver Limit Type", WorkflowUserGroupCode: Code[20], SpecificApprover: Code[50], DueDateFormula: DateFormula)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
EventConditions Text
ApproverType Enum System.Automation."Workflow Approver Type"
LimitType Enum System.Automation."Workflow Approver Limit Type"
WorkflowUserGroupCode Code[20]
SpecificApprover Code[50]
DueDateFormula DateFormula

InsertPurchaseDocumentApprovalWorkflowSteps

procedure InsertPurchaseDocumentApprovalWorkflowSteps(var Workflow: Record Workflow, DocumentType: Enum "Purchase Document Type", ApproverType: Enum "Workflow Approver Type", LimitType: Enum "Workflow Approver Limit Type", WorkflowUserGroupCode: Code[20], DueDateFormula: DateFormula)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
DocumentType Enum Microsoft.Purchases.Document."Purchase Document Type"
ApproverType Enum System.Automation."Workflow Approver Type"
LimitType Enum System.Automation."Workflow Approver Limit Type"
WorkflowUserGroupCode Code[20]
DueDateFormula DateFormula

InsertSalesDocumentApprovalWorkflowSteps

procedure InsertSalesDocumentApprovalWorkflowSteps(var Workflow: Record Workflow, DocumentType: Enum "Sales Document Type", ApproverType: Enum "Workflow Approver Type", LimitType: Enum "Workflow Approver Limit Type", WorkflowUserGroupCode: Code[20], DueDateFormula: DateFormula)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
DocumentType Enum Microsoft.Sales.Document."Sales Document Type"
ApproverType Enum System.Automation."Workflow Approver Type"
LimitType Enum System.Automation."Workflow Approver Limit Type"
WorkflowUserGroupCode Code[20]
DueDateFormula DateFormula

InsertSalesDocumentCreditLimitApprovalWorkflowSteps

procedure InsertSalesDocumentCreditLimitApprovalWorkflowSteps(var Workflow: Record Workflow, DocumentType: Enum "Sales Document Type", ApproverType: Enum "Workflow Approver Type", LimitType: Enum "Workflow Approver Limit Type", WorkflowUserGroupCode: Code[20], DueDateFormula: DateFormula)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
DocumentType Enum Microsoft.Sales.Document."Sales Document Type"
ApproverType Enum System.Automation."Workflow Approver Type"
LimitType Enum System.Automation."Workflow Approver Limit Type"
WorkflowUserGroupCode Code[20]
DueDateFormula DateFormula

InsertEntryPointEventStep

procedure InsertEntryPointEventStep(Workflow: Record Workflow, FunctionName: Code[128]): Integer

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
FunctionName Code[128]

Returns

Type Description
Integer

InsertEventStep

procedure InsertEventStep(Workflow: Record Workflow, FunctionName: Code[128], PreviousStepID: Integer): Integer

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
FunctionName Code[128]
PreviousStepID Integer

Returns

Type Description
Integer

InsertResponseStep

procedure InsertResponseStep(Workflow: Record Workflow, FunctionName: Code[128], PreviousStepID: Integer): Integer

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
FunctionName Code[128]
PreviousStepID Integer

Returns

Type Description
Integer

InsertStep

procedure InsertStep(var WorkflowStep: Record "Workflow Step", WorkflowCode: Code[20], StepType: Option, FunctionName: Code[128])

Parameters

Name Type Description
WorkflowStep Table System.Automation."Workflow Step"
WorkflowCode Code[20]
StepType Option
FunctionName Code[128]

MarkWorkflowAsTemplate

procedure MarkWorkflowAsTemplate(var Workflow: Record Workflow)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow

GetSequenceNumber

procedure GetSequenceNumber(Workflow: Record Workflow, PreviousStepID: Integer): Integer

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
PreviousStepID Integer

Returns

Type Description
Integer

SetNextStep

procedure SetNextStep(Workflow: Record Workflow, WorkflowStepID: Integer, NextStepID: Integer)

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
WorkflowStepID Integer
NextStepID Integer

InsertTableRelation

procedure InsertTableRelation(TableId: Integer, FieldId: Integer, RelatedTableId: Integer, RelatedFieldId: Integer)

Parameters

Name Type Description
TableId Integer
FieldId Integer
RelatedTableId Integer
RelatedFieldId Integer

InsertWorkflowCategory

procedure InsertWorkflowCategory(Code: Code[20], Description: Text[100])

Parameters

Name Type Description
Code Code[20]
Description Text[100]

InsertEventArgument

procedure InsertEventArgument(WorkflowStepID: Integer, EventConditions: Text)

Parameters

Name Type Description
WorkflowStepID Integer
EventConditions Text

InsertEventRule

procedure InsertEventRule(WorkflowStepID: Integer, FieldNo: Integer, Operator: Option)

Parameters

Name Type Description
WorkflowStepID Integer
FieldNo Integer
Operator Option

InsertNotificationArgument

procedure InsertNotificationArgument(WorkflowStepID: Integer, NotifySender: Boolean, NotifUserID: Code[50], LinkTargetPage: Integer, CustomLink: Text[250])

Parameters

Name Type Description
WorkflowStepID Integer
NotifySender Boolean
NotifUserID Code[50]
LinkTargetPage Integer
CustomLink Text[250]

InsertPmtLineCreationArgument

procedure InsertPmtLineCreationArgument(WorkflowStepID: Integer, GenJnlTemplateName: Code[10], GenJnlBatchName: Code[10])

Parameters

Name Type Description
WorkflowStepID Integer
GenJnlTemplateName Code[10]
GenJnlBatchName Code[10]

InsertApprovalArgument

procedure InsertApprovalArgument(WorkflowStepID: Integer, ApproverType: Enum "Workflow Approver Type", ApproverLimitType: Enum "Workflow Approver Limit Type", WorkflowUserGroupCode: Code[20], ApproverId: Code[50], DueDateFormula: DateFormula, ShowConfirmationMessage: Boolean)

Parameters

Name Type Description
WorkflowStepID Integer
ApproverType Enum System.Automation."Workflow Approver Type"
ApproverLimitType Enum System.Automation."Workflow Approver Limit Type"
WorkflowUserGroupCode Code[20]
ApproverId Code[50]
DueDateFormula DateFormula
ShowConfirmationMessage Boolean

InsertMessageArgument

procedure InsertMessageArgument(WorkflowStepID: Integer, Message: Text[250])

Parameters

Name Type Description
WorkflowStepID Integer
Message Text[250]

InsertStepArgument

procedure InsertStepArgument(var WorkflowStepArgument: Record "Workflow Step Argument", WorkflowStepID: Integer)

Parameters

Name Type Description
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
WorkflowStepID Integer

GetWorkflowTemplateCode

procedure GetWorkflowTemplateCode(WorkflowCode: Code[17]): Code[20]

Parameters

Name Type Description
WorkflowCode Code[17]

Returns

Type Description
Code[20]

GetWorkflowTemplateToken

procedure GetWorkflowTemplateToken(): Code[3]

Returns

Type Description
Code[3]

GetWorkflowWizardCode

procedure GetWorkflowWizardCode(WorkflowCode: Code[17]): Code[20]

Parameters

Name Type Description
WorkflowCode Code[17]

Returns

Type Description
Code[20]

GetWorkflowWizardToken

procedure GetWorkflowWizardToken(): Code[3]

Returns

Type Description
Code[3]

SetTemplateForWorkflowStep

procedure SetTemplateForWorkflowStep(Workflow: Record Workflow, FunctionName: Code[128])

Parameters

Name Type Description
Workflow Table System.Automation.Workflow
FunctionName Code[128]

SetCustomTemplateToken

procedure SetCustomTemplateToken(NewCustomTemplateToken: Code[3])

Parameters

Name Type Description
NewCustomTemplateToken Code[3]

InitWorkflowStepArgument

procedure InitWorkflowStepArgument(var WorkflowStepArgument: Record "Workflow Step Argument", ApproverType: Enum "Workflow Approver Type", ApproverLimitType: Enum "Workflow Approver Limit Type", ApprovalEntriesPage: Integer, WorkflowUserGroupCode: Code[20], DueDateFormula: DateFormula, ShowConfirmationMessage: Boolean)

Parameters

Name Type Description
WorkflowStepArgument Table System.Automation."Workflow Step Argument"
ApproverType Enum System.Automation."Workflow Approver Type"
ApproverLimitType Enum System.Automation."Workflow Approver Limit Type"
ApprovalEntriesPage Integer
WorkflowUserGroupCode Code[20]
DueDateFormula DateFormula
ShowConfirmationMessage Boolean

BuildNoPendingApprovalsConditions

procedure BuildNoPendingApprovalsConditions(): Text

Returns

Type Description
Text

BuildPendingApprovalsConditions

procedure BuildPendingApprovalsConditions(): Text

Returns

Type Description
Text

BuildIncomingDocumentTypeConditions

procedure BuildIncomingDocumentTypeConditions(Status: Option): Text

Parameters

Name Type Description
Status Option

Returns

Type Description
Text

BuildIncomingDocumentOCRTypeConditions

procedure BuildIncomingDocumentOCRTypeConditions(OCRStatus: Option): Text

Parameters

Name Type Description
OCRStatus Option

Returns

Type Description
Text

BuildPurchHeaderTypeConditionsText

procedure BuildPurchHeaderTypeConditionsText(DocumentType: Enum "Purchase Document Type", Status: Enum "Purchase Document Status"): Text

Parameters

Name Type Description
DocumentType Enum Microsoft.Purchases.Document."Purchase Document Type"
Status Enum Microsoft.Purchases.Document."Purchase Document Status"

Returns

Type Description
Text

BuildSalesHeaderTypeConditionsText

procedure BuildSalesHeaderTypeConditionsText(DocumentType: Enum "Sales Document Type", Status: Enum "Sales Document Status"): Text

Parameters

Name Type Description
DocumentType Enum Microsoft.Sales.Document."Sales Document Type"
Status Enum Microsoft.Sales.Document."Sales Document Status"

Returns

Type Description
Text

BuildCustomerTypeConditions

procedure BuildCustomerTypeConditions(): Text

Returns

Type Description
Text

BuildVendorTypeConditions

procedure BuildVendorTypeConditions(): Text

Returns

Type Description
Text

BuildItemTypeConditions

procedure BuildItemTypeConditions(): Text

Returns

Type Description
Text

BuildGeneralJournalBatchTypeConditionsFromRec

procedure BuildGeneralJournalBatchTypeConditionsFromRec(var GenJournalBatch: Record "Gen. Journal Batch"): Text

Parameters

Name Type Description
GenJournalBatch Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Batch"

Returns

Type Description
Text

BuildGeneralJournalLineTypeConditions

procedure BuildGeneralJournalLineTypeConditions(var GenJournalLine: Record "Gen. Journal Line"): Text

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

Returns

Type Description
Text

CreateJobQueueEntry

procedure CreateJobQueueEntry(ObjectTypeToRun: Option, ObjectIdToRun: Integer, JobQueueEntryDescription: Text[250], NotBefore: DateTime, NoOfMinutesBetweenRuns: Integer)

Parameters

Name Type Description
ObjectTypeToRun Option
ObjectIdToRun Integer
JobQueueEntryDescription Text[250]
NotBefore DateTime
NoOfMinutesBetweenRuns Integer

Encode

procedure Encode(Text: Text): Text

Parameters

Name Type Description
Text Text

Returns

Type Description
Text

GetGeneralJournalBatchIsNotBalancedMsg

procedure GetGeneralJournalBatchIsNotBalancedMsg(): Text[250]

Returns

Type Description
Text[250]

Events

OnInsertWorkflowTemplates

[IntegrationEvent(True,False)]
local procedure OnInsertWorkflowTemplates()

OnAddWorkflowCategoriesToLibrary

[IntegrationEvent(False,False)]
local procedure OnAddWorkflowCategoriesToLibrary()

OnAfterInitWorkflowTemplates

[IntegrationEvent(False,False)]
local procedure OnAfterInitWorkflowTemplates()

OnAfterInsertApprovalsTableRelations

[IntegrationEvent(False,False)]
local procedure OnAfterInsertApprovalsTableRelations()

See also