The following example, in JSON format, defines a more complex Job Order that defines a packaging order that contains three levels of packaging, quantities for each level, and details for each packaging level. The example uses project specific properties.

{

"Job Order": {

"ID": "81e54f03-9e4e-48c9-97e6-0554f3f6a4a0",

"Description": "A test job order with all packaging/material master data defined",

"StartTime": "2020-06-12T12:00:00+01:00",

"Equipment Requirement": {

"ID": "LineController#2"

},

"JobOrderParameters": [

{

"ID": "Item Expiration Date",

"Value": "2022-12-31T23:59:59+01:00"

},

{

"ID": "Printed Item Expiration Date",

"Value": "2022-12-31"

},

{

"ID": "ERP Order Number",

"Value": "TestOrderNo1"

},

{

"Event Context": {

"uom": "L3OrderId",

"value": "IAmJustAnOrderID"

}

}

],

"Material Requirement": {

"MaterialDefinitionID": "A548646-5",

"MaterialLotID": "TestBatchNo",

"MaterielUse": "material produced",

"Quantity": "500000",

"Material Requirement Property": [

{

"ID": "Product Name",

"Value": "Test Material"

},

{

"ID": "Param1",

"Value": "XXX"

},

{

"ID": "Param2",

"Value": "XXX"

},

{

"ID": "Product Packaging Code",

"Value": "0123456712345x",

"Material Requirement Property": [

{

"ID": "Product Packaging Code Type",

"Value": "GTIN"

},

{

"ID": "Package Type Code",

"Value": "FOB"

},

{

"ID": "Level Is Serialized",

"Value": "true"

},

{

"ID": "Has Parent Level",

"Value": "true"

},

{

"ID": "Has Pre-Printed Serial Numbers",

"Value": "false"

},

{

"ID": "Is Definition For Partial",

"Value": "false"

},

{

"ID": "Pool Selection Criteria",

"Value": "Box#TestBatch#54841",

"Material Requirement Property": {

"ID": "Pool Selection Criteria Type",

"Value": "PoolID"

}

}

]

},

{

"ID": "Product Packaging Code",

"Value": "",

"Material Requirement Property": [

{

"ID": "Child Package Type Code",

"Value": "FOB"

},

{

"ID": "Package Type Code",

"Value": "BD"

},

{

"ID": "Immediate Children Items Quantity",

"Value": "5"

},

{

"ID": "Level Is Serialized",

"Value": "false"

},

{

"ID": "Has Parent Level",

"Value": "true"

}

]

},

{

"ID": "Product Packaging Code",

"Value": "3123456712345x",

"Material Requirement Property": [

{

"ID": "Product Packaging Code Type",

"Value": "GTIN"

},

{

"ID": "Child Package Type Code",

"Value": "BD"

},

{

"ID": "Package Type Code",

"Value": "CS"

},

{

"ID": "Immediate Children Items Quantity",

"Value": "4"

},

{

"ID": "Level Is Serialized",

"Value": "true"

},

{

"ID": "Has Parent Level",

"Value": "true"

},

{

"ID": "Has Pre-Printed Serial Numbers",

"Value": "false"

},

{

"ID": "Is Definition For Partial",

"Value": "false"

},

{

"ID": "Pool Selection Criteria",

"Value": "Case#TestBatch#5484#Full",

"Material Requirement Property": {

"ID": "Pool Selection Criteria Type",

"Value": "PoolID"

}

}

]

},

{

"ID": "Product Packaging Code",

"Value": "1234567",

"Material Requirement Property": [

{

"ID": "Product Packaging Code Type",

"Value": "SSCCGCP",

"Material Requirement Property": {

"ID": "Product Packaging Code",

"Value": "5",

"Material Requirement Property": {

"ID": "Product Packaging Code Type",

"Value": "SSCCExtension"

}

}

},

{

"ID": "Child Package Type Code",

"Value": "BD"

},

{

"ID": "Package Type Code",

"Value": "CS"

},

{

"ID": "Immediate Children Items Quantity",

"Value": "4"

},

{

"ID": "Level Is Serialized",

"Value": "true"

},

{

"ID": "Has Parent Level",

"Value": "true"

},

{

"ID": "Has Pre-Printed Serial Numbers",

"Value": "false"

},

{

"ID": "Is Definition For Partial",

"Value": "true"

},

{

"ID": "Pool Selection Criteria",

"Value": "Case#TestBatch#5484#Partial",

"Material Requirement Property": {

"ID": "Pool Selection Criteria Type",

"Value": "PoolID"

}

}

]

},

{

"ID": "Product Packaging Code",

"Value": "1234567",

"Material Requirement Property": [

{

"ID": "Product Packaging Code Type",

"Value": "SSCCGCP",

"Material Requirement Property": {

"ID": "Product Packaging Code",

"Value": "7",

"Material Requirement Property": {

"ID": "Product Packaging Code Type",

"Value": "SSCCExtension"

}

}

},

{

"ID": "Planned Quantity",

"Value": "782"

},

{

"ID": "Child Package Type Code",

"Value": "CS"

},

{

"ID": "Package Type Code",

"Value": "PX"

},

{

"ID": "Immediate Children Items Quantity",

"Value": "32"

},

{

"ID": "Level Is Serialized",

"Value": "true"

},

{

"ID": "Has Parent Level",

"Value": "false"

},

{

"ID": "Has Pre-Printed Serial Numbers",

"Value": "false"

},

{

"ID": "Is Definition For Partial",

"Value": "false"

},

{

"ID": "Pool Selection Criteria",

"Value": "Pallet#TestBatch#5484#Partial",

"Material Requirement Property": {

"ID": "Pool Selection Criteria Type",

"Value": "PoolID"

}

}

]

}

]

}

}

}

Bibliography

OPC 10000-2, OPC Unified Architecture - Part 2: Security Model

DOCPROPERTY Part2URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part2/

OPC 10000-8, OPC Unified Architecture - Part 8: Data Access

DOCPROPERTY Part8URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part8/

OPC 10000-9, OPC UA Specification: Part 9 – Alarms & Conditions

DOCPROPERTY Part9URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part9/

OPC 10000-10, OPC UA Specification: Part 10 - Programs

DOCPROPERTY Part10URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part10/

OPC 10000-11, OPC Unified Architecture - Part 11: Historical Access

DOCPROPERTY Part11URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part11/

OPC 10000-13, OPC Unified Architecture - Part 13: Aggregates

DOCPROPERTY Part13URL \* MERGEFORMAT http://www.opcfoundation.org/UA/Part13/