Skip to main content
Version: Next

Outbound Initialize

Introduction​

OutboundInitializeActivity is a MES-specific outbound initialization node used to initialize various state variables, verify product code validity, and acquire key information such as order, product model, and entry time when a product leaves the station. This node is the starting point of the outbound flow, providing necessary context data for subsequent quality judgment and trace recording.

Configuration Items​

Configuration Properties​

Property NameDisplay NameTypeDefault ValueDescription
EntryFinishTaskNameEntry Finish Task Namestring"Inbound Result Distribution"Name of the entry finish step, used to get entry time

Input Variables​

Variable NameConstantTypeDescription
SerialNumberFlowItemCollection.SerialNumberstringProduct Serial Number/Product Code
TrayCodeAssociationDescriptionValueFlowItemCollection.TrayCodeAssociationDescriptionValuestringTray Code Association Query Description
MaterialCodeAssociationDescriptionValueFlowItemCollection.MaterialCodeAssociationDescriptionValuestringMaterial Code Association Query Description
OrderModelFlowItemCollection.OrderModelOrderModelOrder Model (Optional, reuse if exists)
ProductModelFlowItemCollection.ProductModelAssociationProductModelProduct Model (Optional, reuse if exists)
InboundWorkTypeValueFlowItemCollection.InboundWorkTypeValueintWork Type (Optional, reuse if exists)

Output Variables​

Variable NameConstantTypeDescription
Outbound_FinishSignalFlowItemCollection.OutboundFinishSignalstringOutbound Result
Outbound_Description_ValueFlowItemCollection.OutboundDescriptionValuestringOutbound Exception Description
Outbound_ResultVariable_ValueFlowItemCollection.OutboundResultValuestringQualification Judgment Result
Outbound_QualityVariable_ValueFlowItemCollection.OutboundQualityValuestringEquipment Processing Result
Outbound_Completed_SignalFlowItemCollection.OutboundCompletedSignalintOutbound Completed Signal
Inspection_ResultVariable_ValueFlowItemCollection.InspectionResultValuestringInspection Result
OrderModelFlowItemCollection.OrderModelOrderModelProduction Order
ProductModelFlowItemCollection.ProductModelAssociationProductModelProduct Model
Inbound_EntryTimeFlowItemCollection.InboundEntryTimeDateTime?Entry Time
Inbound_WorkType_ValueFlowItemCollection.InboundWorkTypeValueintWork Type

Business Logic​

Execution Flow​

┌─────────────────────────────────────────────────────────────┐
│ OutboundInitializeActivity │
├─────────────────────────────────────────────────────────────┤
│ EnterAsync - Initialization Phase │
│ ├─ Init Tray/Material Code Association Desc │
│ ├─ Clear Outbound Description │
│ ├─ Set Outbound Result = "Not Initialized" │
│ ├─ Set Qualification Judgment = "Not Initialized" │
│ ├─ Set Inspection Result = "Not Initialized" │
│ └─ Set Outbound Completed Signal = 1 │
├─────────────────────────────────────────────────────────────┤
│ ProcessAsync - Processing Phase │
│ ├─ Check if product code is empty │
│ │ └─ Empty → Set corresponding error and return │
│ ├─ Set Outbound Result = OK │
│ ├─ Get Order and Product Info │
│ │ ├─ Prioritize using existing data │
│ │ ├─ Get from processing record │
│ │ ├─ Get from recipe application │
│ │ └─ Get from current order │
│ ├─ Check Inspection Mark │
│ │ └─ Has Inspection → Set inspection task and product │
│ ├─ Set Work Type │
│ └─ Get Entry Time │
└─────────────────────────────────────────────────────────────┘

Data Acquisition Priority​

Order and Product Info​

  1. Existing Data: Prioritize using existing order and product info in flow context.
  2. Processing Record: Get from product processing record.
  3. Recipe Application: Get from recipe application of current process.
  4. Current Order: Get from current distributed order of process segment.

Entry Time​

  1. Flow Context: Prioritize using existing entry time.
  2. Entry Step: Get start time from specified entry finish step.
  3. Processing Record: Get from product processing record.

Work Types​

TypeValueDescription
NormalWorkType.Normal.ValueNormal Processing
InspectionWorkType.Inspection.ValueInspection
ResetWorkType.Reset.ValueReset

Usage Example​

Typical Outbound Flow​

┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Scan/Read Code │────▶│OutboundInitialize│────▶│QualificationJudgment│
│ │ │ Outbound Init │ │ Qualification │
└──────────────────┘ └──────────────────┘ └──────────────────┘

Outbound Result Configuration​

Result NameConstantDescription
OKExitResultConfig.OKOutbound Success
NoProductEntryExitResultConfig.NoProductEntryNo Product Entry
TrayCodeNotBoundProductCodeExitResultConfig.TrayCodeNotBoundProductCodeTray Code Not Bound to Product Code
MaterialCodeNotBoundProductCodeExitResultConfig.MaterialCodeNotBoundProductCodeMaterial Code Not Bound to Product Code

Notes​

  1. Flow Start: This node is usually the first business node in the outbound flow.
  2. Product Code Required: Error result is set if product code is empty.
  3. Entry Step Name: Ensure EntryFinishTaskName matches actual entry step name.
  4. Data Reuse: Existing order and product info will be reused to avoid repeated queries.
  5. Inspection Handling: Inspection mode automatically sets inspection task and corresponding product info.
  6. Signal Output: Outbound completed signal can be used for communication with PLC etc.