跳转至

DEEs#

SMTAutomaticLabelPrinting#

Print a Label based on SmartTable SMTMaterialPrintableDocumentContext

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackInMaterials.Post
    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Post
    MaterialManagement.MaterialManagementOrchestration.MoveMaterialsToNextStep.Post
    MaterialManagement.MaterialManagementOrchestration.ExpandMaterial.Post
    BusinessObjects.Material.AutomaticAssemble.Post
    
  • Pre Conditions:

    Configuration entry: '/SMT/MaterialAutomaticLabelPrinting/IsEnabled' must be enabled
    Materials must be from the same Product Step and Form
    SmartTable 'SMTMaterialNameGenerationContext' must be configured
    SmartTable 'PrinterTypePrintersContext' must be configured
    
  • Action:

    Prints a label for each material
    If the config /SMT/MaterialAutomaticLabelPrinting/LabelCounterEnabled is enabled, a printer counter will be injected for each Material in the printer context.
    
    Remarks:
        In case of Expand the materials to be printed are the expanded
        In case of AutomaticAssemble the materials to printed are the consumed
    

SMTAutoShipOnLastStep#

MoveNext to the last step of the flow should automatically ship to the shipping facility.

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexMoveMaterialsToNextStep.Post
    
  • Pre Conditions:

    Config /SMT/MaterialTracking/AutoTerminateAndShipOnLastStep must be true
    Step is the last of the Flow
    ShippingAllowed is True
    MarksProductCompletion is True
    Materials have the same ProductionOrder and FlowPath
    
  • Action:

    Ship Materials to the to the first Facility that has TerminateOnShip enabled.
    

SMTBlockChecklistOnFalseParameters#

Block Checklist on parameters that are boolean and false. It will check if there is any checklist item with boolean parameters that are false.

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackInMaterials.Pre
    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Pre
    
  • Pre Conditions:

    Configuration entry: /SMT/BlockCheckListOnFalseParameters/IsEnabled must be enabled
    Configuration entry: /SMT/BlockCheckListOnFalseParameters/CheckListType must be configured with the checklist types. Can be either a wildcard for every checklist or a set of strings separated by ';'
    
  • Action:

    - If ChecklistType is * or the ChecklistType matches the configured the checklist
        - Will check all checklist items 
        - If they are boolean
            - Check if they are false
    

SMTCallExternalApplication#

Create a new IntegrationEntry based on SmartTable SMTCallExternalApplicationContext.

  • Action Groups:

    BusinessObjects.MaterialCollection.TrackIn.Post
    BusinessObjects.MaterialCollection.TrackOut.Post
    BusinessObjects.MaterialCollection.MoveToNextStep.Pre
    BusinessObjects.MaterialCollection.MoveToNextStep.Post
    BusinessObjects.MaterialCollection.Rework.Post
    
  • Pre Conditions:

    Configuration entry: /SMT/CallExternalApplication/IsEnabled must be enabled
    SmartTable SMTCallExternalApplicationContext must be configured
    
  • Action:

    Creates a new IntegrationEntry to call an external application for each material.
    

SMTCreateNotificationAlert#

Creates new notification based on generic templates.

  • Pre Conditions:

    Notification template exists
    Details parameter is not empty
    
  • Action:

    Loads the template
    Change Name, Title and Details
    Create the new Notification
    

SMTDataCollectionPostOperation#

Perform a MES operation (TrackIn, TrackOut, MoveNext, TrackOutAndMoveNext, TrackOutAndAddToContainer, Rework, Abort) based on Material DataCollectionPoints and SmartTable SMTDataCollectionPostOperationContext.

  • Action Groups:

    BusinessObjects.DataCollectionInstance.Post.Post
    DataCollectionManagement.DataCollectionInstanceManagementOrchestration.PerformImmediateDataCollection.Post
    
  • Pre Conditions:

    Configuration entry: /SMT/DataCollectionPostOperation/IsEnabled must be enabled.
    SmartTable SMTDataCollectionPostOperationContext should be configured.
    In case of Rework, Step has an associated Rework Reason.
    In case of TrackOutAndAddToContainer, Resource where material was processed has Parent Resource that has a Load Port SubResource with a docked Container.
    Step has a DataCollection defined.
    
  • Action:

    Resolves SmartTable SMTDataCollectionPostOperationContext to validate if an action is required.
    Performs MES operation (TrackIn, TrackOut, MoveNext, TrackOutAndMoveNext, TrackOutAndAddToContainer, Rework, Abort).
    

SMTDataCollectionPostOperationContextST#

Validate the Operation and Rework Reason added in the SmartTable SMTDataCollectionPostOperationContext.

  • Action:
    - If it is not a `Rework` Operation and the `ReworkReason` is filled:
        - Throw error message: ReworkReason filled when operation is not Rework.
    - If it is a `Rework` Operation and the `ReworkReason` is not filled:
        - Throw error message: ReworkReason needed for Rework Operation.
    - If it is a `Rework` Operation and the `ReworkReason` is filled but is not a Rework Reason:
        - Throw error message: Reason is not a Rework Reason.
    - If it is not a `TrackOutAndAddToContainer` Operation and the `LoadPortType` is filled:
        - Throw error message: LoadPortType filled when operation is not TrackOutAndAddToContainer.
    - If it is a `TrackOutAndAddToContainer` Operation and the `LoadPortType` is not filled:
        - Throw error message: LoadPortType needed for TrackOutAndAddToContainer Operation.
    

SMTDefectAction#

Perform a Defect Action based on configured Defect Actions defined at SmartTable SMTDefectActionContext and the list of Defect Actions defined at the "Defects" section of the referred Product.

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.RecordMaterialDefects.Post
    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Post
    
  • Pre Conditions:

    SmartTable SMTDefectActionContext should be configured.
    Product from SMTDefectActionContext should have Defect Actions configured through the ManageDefectActions.
    
  • Action:

    - When a Material completes the predefined operation (either tracking out or recording a defect), the DEE runs, checking if the material's product
    is present in the `SMTDefectActionContext`. If so, it checks if the product has the Defect Action defined in the `SMTDefectActionContext` as a Defect
    Action and runs the Action according to the specified parameters.
    - If the Product has no defined Defect Actions, no errors should be thrown, it should just "do nothing". 
    If it has multiple Defect Actions matching the context and the precedenceKey level, they should be executed having in mind the following order:
        1. None (highest precedence)
        2. Scrap
        3. Hold
        4. Change Material Quantity
        5. Go Back to Step
        6. Send to Rework
        7. Open a Protocol
        8. Send a Notification
    

SMTEnforceMaximumReprocessingLimit#

Enforce the maximum number of times that a material can be reprocessed at a step

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackInMaterials.Pre
    
  • Pre Conditions:

    SmartTable SMTReprocessLimitContext should be configured.
    
  • Action:

    When a Material is tracked in to a step, the DEE runs, checking if the material's fields match an entry in the `SMTReprocessLimitContext` smart table. 
    If so, the DEE updates the counts of the current step and logicalFlowPath in the material's `SMTStepCountLookup` custom attribute.
    
    If the count exceeds the value of the field `MaximumReprocessLimit` of the matched entry in the smart table, 
    the material is not tracked in and an error shown to the user with the message "Material has reached the maximum number of reprocesses for this step.".
    

SMTMaterialAsyncLabelPrinting#

Process Integration Entries of Type SMTMaterialAutomaticLabelPrinting

  • Pre Conditions:

    Configuration entry: /SMT/MaterialAutomaticLabelPrinting/IsEnabled must be enabled
    
  • Action:

    Process the information inside of the integration entry to print the corresponding label.
    

SMTMaterialPartialTrackOut#

Detach the Panels/Boards from the Lot/WorkOrder in the end of the Line Process based on SmartTable SMTPartialTrackOutContext.

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Post
    
  • Pre Conditions:

    Configuration entry: /SMT/MaterialPartialTrackOut/IsEnabled must be enabled
    SmartTable SMTPartialTrackOutContext must be configured
    
  • Action:

    Detach the Panels/Boards from the Lot/WorkOrder in the end of the Line Process.
    

SMTMaterialSerialization#

Expand Material if needed, after TrackIn or TrackOut based on the SMTMaterialExpandContext Smart Table - i.e. for Serialization - and to validate the printed labels-

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackInMaterials.Post
    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Post
    
  • Pre Conditions:

    Configuration entry: /SMT/MaterialSerialization/IsEnabled must be enabled
    Smart Table SMTMaterialExpandContext should be configured
    
  • Action:

    - If IsExternalNaming is set to false
        - Resolves the SMTMaterialNameGenerationContext to get which Name Generator to use
    - If IsExternalNaming is set to true
        - Resolves the SMTMaterialNameGenerationContext to get which Label Validation Mask to use
    - Then:
        - Resolves the SMTMaterialPrintableDocumentContext to get which Printable Document to use
            - Resolves the PrinterTypePrintersContext to get which Printer to use
        - Expands the Material from defined ParentForm to ChildForm with:
            - PrimaryQuantity = 1
            - Form = ChildForm resolved in the SMTMaterialExpandContext
    

SMTProductionOrderCompletion#

Automatically close the Production Order on Completion. It will check if there is any Production Order with the correct quantity of material terminated, otherwise it will update the Material quantity in the Production Order.

  • Action Groups:

    BusinessObjects.MaterialCollection.Terminate.Pre
    BusinessObjects.MaterialCollection.Terminate.Post
    
  • Pre Conditions:

    Configuration entry: /SMT/ProductionOrderCompletion/IsEnabled must be enabled.
    Ship is performed to Facility with TerminateOnShip
    RecordLoss is performed with TerminateOnZeroQuantity
    ProductionOrder InProgress Quantity is 0
    
  • Action:

    Material ProductionOrder is closed and Terminated.
    

SMTProcessAssembledMaterials#

Processes asynchronously consumption provided through API AssembleMaterialFromConsumptionSummary.

  • Action:
    Prints a label for each material
    If the config /SMT/AssembleMaterialFromConsumption/AsynchronousTraceabilityProcessing is enabled,
    traceability information from API AssembleMaterialFromConsumptionSummary will be delegated to 
    and Integration Entry that will be processed by this DEE
    

SMTUpdateUnitsExcludedOnTerminate#

Updates the SMTUnitsExcluded attribute on Parent Materials by appending entries from terminated Sub-Materials that meet specific criteria, including being SMT Boards and having a valid MESPositionID attribute defined.

  • Action Groups:

    BusinessObjects.MaterialCollection.Terminate.Pre
    
  • Pre Conditions:

    Terminated Materials must have a Parent Material and no Sub-Materials.
    Terminated Materials *Form* must match one of the Forms present on the Lookup Table SMTBoardForms.
    
  • Action:

    When a Sub-Material meets the criteria of being an Board—meaning it has a Parent Material,
    no Child Materials, and its Form matches one of the Forms present on the Lookup Table SMTBoardForms
    —this DEE action will evaluate whether the Sub-Material has a valid MESPositionID attribute defined.
    
    The goal is to identify Boards that were defective and were automatically scrapped (i.e. Terminated).
    
    When the Terminate action occurs, this DEE action will collect the Sub-Material name
    and its MESPositionID attribute value, then append both 
    as a string separated by `-` to the Parent Material SMTUnitsExcluded attribute.
    

SMTValidateMaterialForm#

Prevents the user from adding material forms that don't exist in the MES to the SMTPanelForms and SMTBoardForms lookup tables.

  • Action Groups:

    TableManagement.TableManagementOrchestration.FullUpdateLookupTable.Pre
    
  • Pre Conditions:

    The lookup table being modified must either be the SMTPanelForms or the SMTBoardForms lookup table.
    
  • Action:

    If a value that doesn't exist in the MaterialForm lookup table is being added to one of the two
    previously mentioned lookup tables, prevent it from happening by throwing an exception.
    

SMTRecipeValidation#

Validate Line Resource Recipe at Material TrackIn based on RecipeContext

  • Action Groups:

    BusinessObjects.MaterialCollection.TrackIn.Pre
    
  • Pre Conditions:

    Config /SMT/RecipeValidation/IsEnabled must be true
    Smart Table RecipeContext is configured 
    The Material is in a line Step
    The Material has a Parent Material
    
  • Action:

    Validates that the resource's Current Recipe matches the RecipeContext.
    

SMTTimeConstraintTrackerPurgeClosed#

Purges all entries from SMTTimeConstraintTracker Generic Table with System State Closed

  • Pre Conditions:

    The timer SMTTimeConstraintTrackerPurgeClosedTimer must be configured with the appropriate recurrence.
    
  • Action:

    Any entries in the SMTTimeConstraintTracker Generic Table with the SystemState set to Closed will be purged.
    

SMTTimeConstraintTrackerTriggerActions#

Periodically checks materials with time constraints and triggers warning or time limit actions from the SMTTimeConstraintTracker Generic Table

  • Pre Conditions:

    The timer SMTTimeConstraintTrackerTriggerActionsTimer must be configured with the appropriate recurrence.
    
  • Action:

    Periodically checks the SMTTimeConstraintTracker Generic Table to identify entries that have reached either their warning or time limits.
    When the warning limit is reached and the state is Open, the corresponding warning rule is executed and the state is updated to PostWarning.
    If the time limit is reached and the state is PostWarning, the time limit rule is executed and the state is updated to PostTimeLimit.
    The identified entries will have their rules executed through integration entries.
    

SMTExecuteTimeConstraintTrackerRule#

Execute the time constraint tracker rules from Integration Entries created by the DEE SMTTimeConstraintTrackerTriggerActions

  • Action:
    Determines which Rule to execute through Integration Entry EventName Input - Warning or Time Limit.
    The Rule is then executed, having as Input a dictionary with the respective SMTTimeConstraintTracker Generic Table DataRow information.
    The dictionary sent as Input has the following keys:
      - Material
      - WarningLimitDate
      - TimeLimitDate
      - TimeLimitRule
      - WarningLimitRule
      - FromStep
      - FromOperation
      - ToStep
      - ToFlow
      - ToOperation
      - Type
      - SystemState
    

SMTTimeConstraintsEnforcer#

Create and enforce Time Constraints for Sub-Materials in Line Flows defined on the SMTTimeConstraintTracker Generic Table

  • Action Groups:

    MaterialManagement.MaterialManagementOrchestration.ComplexTrackInMaterials.Pre
    MaterialManagement.MaterialManagementOrchestration.ComplexTrackOutMaterials.Pre
    BusinessObjects.MaterialCollection.Rework.Pre
    
  • Pre Conditions:

    Generic Table SMTTimeConstraintTracker is configured.
    Material Step property EnableTimeConstraints must be True.
    
  • Action:

    Identifies the MES operation being executed (Track-In, Track-Out, Rework).
    Loads the Materials involved in the operation and filters those currently in a Line Step with Time Constraints enabled.
    Queries the SMTTimeConstraintTracker Generic Table to retrieve existing time constraint records for the Materials.
    Resolves applicable time constraints from the TimeConstraintsContext Smart Table based on the Sub-Material information.
    Adds new Time Constraint records if matching rules are found and no equivalent open record exists.
    Validates each Material against the constraint type (Minimum or Maximum) by comparing with the current UTC time.
    Throws a localized exception to block the MES operation if a constraint is violated.
    Marks the constraint as closed if the Material action satisfies the timing rule.
    Updates the SMTTimeConstraintTracker Generic Table with any new or modified constraint entries.
    

SMTPropagateFloorLifeAndExpirationDate#

Support Floor Life and Expiration Date Propagation for Specific Products and MES Operations

  • Action Groups:

    BusinessObjects.Material.Combine.Post
    BusinessObjects.Material.Compose.Post
    BusinessObjects.Material.AutomaticAssemble.Post
    MaterialManagement.MaterialManagementOrchestration.AssembleMaterial.Post
    MaterialManagement.MaterialManagementOrchestration.ReplaceAssembledMaterial.Post
    MaterialManagement.MaterialManagementOrchestration.SpecialReplaceAssembledMaterial.Post
    
  • Pre Conditions:

    Source Materials should have their product attributes, `SMTPropagateFloorLife` and/or `SMTPropagateExpirationDate`, set to true.
    
  • Action:

    Check if floor life or expiration date propagation is required for each source Material.
    Evaluate if the target Material’s floor life remaining hours need updating based on the source Material being closer to expiry.
    Evaluate if the target Material’s expiration date needs updating based on the source Material's sooner expiration.
    If an update is needed, stop the floor life counter if it’s currently running.
    Update the target Material with the new floor life remaining hours and expiration date.
    Start or restart the floor life counter for the target Material.