General InformationThis opening ID is invoked:ApprovalSchemaInitialization This opening ID is used to customize the approval schema for change actions. The table below provides you with information related to the definition of the Opening ID.
Input ObjectsInput objects must be of the following types:
Context Object Parameters
SampleThe following sample describes how to define approval schema for change actions.
/* Define constants */ /* Input elements */ let promotedChangeAction("Change Action") let impactedObjectsList(List) let approvalSchema(ChangeApprovalSchema) /* Elements to be used to create the approval schema */ let approvalSchemaLevel(ChangeApprovalSchemaLevel) /* Elements to be used to process the logic */ let impactedObjectsListSize(Integer) let impactedObjectsListIterator(Integer) let impactedVPMReference(VPMReference) let impactedPart(Part) /* Retrieve the elements provided in input */ set promotedChangeAction = Parameters->GetAttributeObject("ChangeAction") set impactedObjectsList = Parameters->GetAttributeObject("ImpactedObjects") set approvalSchema = Parameters->GetAttributeObject("ComputedApprovalSchema") /* Apply the logic based on the inputs */ if(promotedChangeAction.organization == "MyCompany") { set approvalSchemaLevel = approvalSchema.addApprovalSchemaLevel(false) set impactedObjectsListSize = impactedObjectsList.Size() set impactedObjectsListIterator = 1 for impactedObjectsListIterator while impactedObjectsListIterator<=impactedObjectsListSize { set impactedVPMReference = impactedObjectsList->GetItem(impactedObjectsListIterator) set impactedPart = impactedObjectsList->GetItem(impactedObjectsListIterator) if(impactedVPMReference<>NULL) { approvalSchemaLevel.addApprovalTask("taskTitle","taskInstructions",false,"User1", false, "Route Start Date", "2") } if(impactedPart<>NULL) { approvalSchemaLevel.addApprovalTask("taskTitle","taskInstructions",false,"User2", false,"", "") } set impactedObjectsListIterator = impactedObjectsListIterator + 1 } } |