Material Registration#
In Critical Manufacturing MES, there are multiple methods available for creating Materials - including manual creation through the Material page, creation via Production Orders, and a method that can be scanner-assisted, represented by the Register Materials operation.
The system offers native support for several barcode label formats, such as ECIA, GS1, and MAT-Label. However, it is also designed with flexibility in mind, allowing for the configuration of additional custom label formats to accommodate specific business requirements.
Info
Material Logistics is a separately licensed module required to enable this feature.
Overview#
In this tutorial, we will walk through a complete scenario covering the configuration and execution of the Material Registration operation, using both both manual and scanner-assisted methods.
The tutorial is structured as follows:
- Initial Considerations: Key concepts and prerequisites to be aware of before getting started.
- Use Case Presentation: A clear description of the production context and specific system requirements.
- Configuration: Step-by-step setup, supported by video and images.
- Feature Execution: Hands-on walkthrough of the operation, covering both manual input and a simulation of scanner-assisted registration.
- Final Considerations: Additional tips and usability notes to help users get the most out of the functionality.
Initial Considerations#
Before starting the tutorial, there are a few key aspects you should be familiar with to ensure a smooth understanding of the process and its context.
The Register Materials operation is available under Planning and Logistics Menu, and is used for the creation of Materials of Products with the following types:
- Raw Material
- Durable
- Part
These are the only Product types that support the definition of Product Manufacturers, which is a prerequisite for the registration process.
Regarding the required user features, to execute the Register Materials operation, the user must be granted:
Material.Register – Required to access the operation in general
Material.RegisterManual – Required to perform manual registration specifically
For label support and customization, Critical Manufacturing MES supports several barcode label formats natively (ECIA, GS1, MAT-Label).
If you are considering supporting a custom label format, you should be aware of the following Lookup and Generic configuration tables, which define how label data is interpreted:
| Table Name | Description |
|---|---|
| LabelSpecification | Lookup Table for Label Specifications |
| LabelMaterialProperty | Lookup Table for Material Properties |
| LabelSpecification | Generic Table for defining the properties of the different Label Specifications |
| LabelSymbologyIdentifier | Generic Table for defining label specs with symbology identifiers and barcode types |
| LabelMaterialProperty | Generic Table for setting Material properties or attributes that can be referenced as a Label Specification Field |
| LabelSpecificationField | Defines each field in the label format, including prefix, length, and mapping |
Use Case#
In this use case, we are operating within a production environment where raw materials are delivered to the production site. Upon arrival, an employee is responsible for registering these materials in Critical Manufacturing MES.
For the purposes of this scenario, we consider that the Raw Material Business Partner supplies two products:
- Raw Material 1
- Raw Material 2
The following conditions and requirements apply to this use case:
Material Placement: When created, Materials are assigned to a designated physical location.
- Raw materials are created in the Warehouse Facility.
- They are placed in the Receiving and Storage Flow, at the Receiving Step.
Labeling Standard: The information provided by the supplier follows the GS1 label specification.
Data Capture at Registration: At the moment of Material creation, the employee must collect and register the following data:
| Data Point | CM MES Mapping |
|---|---|
| Facility | Maps to the Facility Material property |
| Manufacturer | Business Partner linked to the Material |
| GTIN | Maps to Part Number Identification Material property |
| COUNT | Maps to Primary Quantity Material property |
| BATCH/LOT | Maps to Manufacturer Lot Number Material property |
| PROD Date | Maps to Manufacturer Date Code Material property |
| ERP Code | Must be stored as Material attribute ERPCode |
Product Details: Logistical attributes linked to the Product definition.
| Product | Part Number | Standard Quantity Delivered | Moisture Sensitivity Level |
|---|---|---|---|
| Raw Material 1 | 11111111111111 | 100 | 2a |
| Raw Material 2 | 22222222222222 | 25 | 6 |
Configuration#
The following steps outline the configuration required to support material registration in this tutorial.
A video walkthrough of this configuration is included at the end of this section.
Warning
This configuration walkthrough does not cover the base model setup (e.g., Calendars, Facilities, and Areas).
Business Partner#
To create a Business Partner, navigate to: Business Data > Business Partner.
In order for a Business Partner to be recognized as a Product Manufacturer, the following conditions must be met:
- The Manufacturer property must be set to true
- A Label Specification must be defined - for this use case, select GS1
Example configuration:

See more information about this entity here
Entity Type Material Add Attribute#
Since ERPCode is not a native attribute of the Material entity, it must be added manually.
To do this, go to: Administration > Entity Types > Material > Manage Attributes, and add a new attribute named ERPCode.
Attribute details:
| Property | Value |
|---|---|
| Name | ERPCode |
| Type | NVarChar |
| Size | 256 |
| Is Reportable | Yes |
| Is History Enabled | Yes |
| IsMandatory | No |
| Other flags | Leave default unless needed |
Example configuration:

Note
If the attribute does not appear in the system after being added, you may need to use the Generate operation on the Material entity to apply changes.
See more information about this configuration here
Generic Tables#
First, you must include the ERPCode attribute as a collectable label property, in the LabelMaterialProperty Generic Table.
Set it as mandatory, define its sequence, and specify the data type.
Example configuration:

Then, add ERPCode as a valid field under the GS1 Label Specification at the LabelSpecificationField Generic Table, with a prefix (for example 43), a data type (for example String), length and sequence number.
Example configuration:

See more information about this configuration here
Flow and Step#
Create a simple Flow and Step structure at the Warehouse Facility:
- Flow: Receiving and Storage
- Step: Receiving
No further operation-related entities (e.g., Resource or Service) are required.
Example configuration:

See more information about these entities here
- User Guide: Step Page
- User Guide: Flow Page
- How to: Create a Step
- How to: Create a Flow
Products#
For this use case, create two Products: Raw Material 1 and Raw Material 2.
Each Product must include:
- Product Type: Raw Material
- Default Units, Form, and Flow Path
In the Products Manufacturer section, add the information for the Raw Material Business Partner and include:
- Part Number
- Standard Quantity
- Moisture Sensitivity Level (MSL)
Example configuration:




See more information about this entity here
The master data file supporting this model is available here: XML File, and was designed using version 11.1.
Warning
If you use the master data file to create the new attribute in the Material entity, you may still need to perform the Generate Schema operation referenced earlier.
Register Material Manual Process#
In this section we will simulate the creation of a Material through the Register Material operation.
When navigating to Planning and Logistics > Register Material, you will be presented with an interface designed to guide you through the registration process.
Creating a material for Raw Material 1:
| Property | Value | Note |
|---|---|---|
| Facility | Warehouse | This is where the material is being received |
| Manufacturer | Raw Material Business Partner | The Manufacturer must match the defined Supplier Part Number |
| Number of Identical Materials to Register | 2 | Defines how many identical material records will be created in this operation, each with the same properties |
| GTIN | 11111111111111 | The Part Number Identification Material |
| Count | 150 | The primary quantity of the material |
| Batch/Lot | 202505081 | The manufacturer lot number |
| Prod Date | 20250508 | The Manufacturer Date Code |
| ERP Code | ERP111111 | ERP Code Material attribute value |
Example:

Creating a material for Raw Material 2:
| Property | Value | Note |
|---|---|---|
| Facility | Warehouse | This is where the material is being received |
| Manufacturer | Raw Material Business Partner | The Manufacturer must match the defined Supplier Part Number |
| Number of Identical Materials to Register | 1 | Defines how many identical material records will be created in this operation, each with the same properties |
| GTIN | 22222222222222 | The Part Number Identification Material |
| Count | 85 | The primary quantity of the material |
| Batch/Lot | 202505082 | The manufacturer lot number |
| Prod Date | 20250508 | The Manufacturer Date Code |
| ERP Code | ERP222222 | ERP Code Material attribute value |
| Time on Label | 90 | Related to Moister Sensitivity Level |
Example:

In the upper-right corner of the interface, you’ll find an option to print labels. This allows the user to specify the number of labels to print for the Materials being registered.
To enable this functionality, the following conditions must be met:
- The Step where the Material is created must have a Printable Document assigned. To configure this, go to Step > Details View > Edit > Material Label, and set a Printable Document.
- The Print Material Label Automatically flag must be set to
true.
This process is demonstrated step-by-step in the accompanying video.
Register Material Using Barcode Scanner#
To simulate barcode scanning, you can generate the required barcodes, place them in a file, and use your device's camera to scan them, or use a barcode reader. The barcodes used in this demonstration are available in this PDF File, and were generated following GS1-Code128.
Using the same Register Material interface, simply select on the camera icon to activate the scanning mode and present the printed or on-screen barcodes.
You can follow this process step by step in the video below.
Final Considerations#
This section provides additional tips and usability notes to help users get the most out of the Register Materials functionality.
-
The Facility field can have a predefined default value. To configure this, use the GUIElementDefaultValue table with the following:
- Context:
Material.Register - Element:
Facility
- Context:
-
If the system configuration
/Cmf/System/Configuration/MaterialLogistics/RegisterMaterials/AutoPopulateDataFromProductManufacturer/is enabled, the system will attempt to automatically populate fields using data from the Product Manufacturer. - If the configuration
/Cmf/System/Configuration/MaterialLogistics/RegisterMaterials/InferManufacturerFromManufacturerPartNumber/is enabled, the system will attempt to infer the Manufacturer based on the provided Manufacturer Part Number.