In EZ-MES it is possible to model the sequencing of parts into subparts and to generate UIDs for the subparts.

In some manufacturing processes, it may be neccessary to sequence parts into a grid and to generate UIDs in a matrix notation. 


Suppose a manufacturor of displays starts with a glass sheet. First panels are cut-out from the sheet and than individual displays are cut-out from each panel. 

For tracking of the displays, it is neccessary to have in the UID of each display: the grid position of both the display in the panel and the panel in the sheet.

This is visualized in the image below:


Here is an example of how the Traveller for first sequencing the sheet into panels would look like:

In this example, 'SH-1824-14-08' is the UID of the Sheet. After sequencing this sheet. the UID of the first panel has become: 'SH-1824-14-08-A1'.


The way to achieve this in EZ-MES is to use a special variable 'VAR{GRID}' in the Calculation of the UID of the sheet:


This special 'VAR{GRID}' must be placed at the front of the UID calculation syntax line as shown below. 

Please note, the syntax value of this variable is defined in another step NV, as also show below. We have named this extra NV: 'Grid-definition'


The string formula line in the 'Grid-definition'  NV must start with the function name '_GRID' and this function _GRID() has a number of parameters, as illustrated below:

These parameters are:

cols: the number of colums in the matrix.

rows: the number of rows in the matrix.

d: the number of decimals to be used for the index numbers.

shift: the positions the matrix notation should be shifted to the left to overwrite the standard UID sequence nummering.

cs: the first column number.

rs: the first row number.

str: the print string for the matrix index. This print str can contain the following variables:

str=".....%cn....": the variable %cn will be repaced be a column nummer.

str=".....%cs....": the variable %cs will be repaced be a column alfa string (i.e. A, B, C etc....)

str=".....%rn....": the variable %rn will be repaced be a row nummer.

str=".....%rs....": the variable %rs will be repaced be a row alfa string (i.e. A, B, C etc....)


Here are some examples:

_Grid(cols=2,rows=3,d=1,str=\"_[X%cn,Y%rn | %cs,%rs | %rs%cn ]\") -> SH-1821-021-001_[X1.Y2 | A,B | B1]

_Grid(cols=3,rows=4,d=1,cs=4,rs=3,str=\"_[X%cn,Y%rn | %cs,%rs | %rs%cn ]\") -> SH-1821-021-001_[X4.Y3 | D,C | C4]

_Grid(cols=2,rows=3,d=1,shift=3, str=\"_[X%cn,Y%rn | %cs,%rs | %rs%cn ]\") -> SH-1821-021_[X1.Y2 | A,B | B1]


Next, displays are cut out from panels, The mechanism is same as in the step above, only the UID of a panel is exented with the grid position of the display within the panel: 


Please note that in this example, the display column numbering starts at 10 and the row numbering starts also at 10:


Before a UID for a Panel (of Display) can be generated in EZ-MES, the quantity of the sequencing needs to be defined.

This is normally done in the step before the actual sequencing step by using the QTE (Quantity Editor) type of NV.



The value of QTE is used in the next step by the Sequencer to split the part into subparts (in our example, to cut the sheet into panels or to cut a sheet into displays.)

As in our case, we do not want each time to manually enter the value for QTE, we use a NV to automatically calculate the QTE number by multiplying the number of columns with the number of rows. Where the number of rows and colums are defined in some other/previous NVs.

This is shown below:




Please note that we use an extra NV to first calculate the number of panels or displays and next write the value of this NV into the QTE NV via the 'Write to Part NV' line':