UNILIN-UNIMAT: Garments
Garment Information
Garment identity is based on chip number.
Article identity is based on customer-scoped article code.
The legacy document distinguished between personalised and generic garments. The current interface keeps that distinction:
-
personal garments are connected to wearers
-
generic garments are connected to item pools
The distinction is made by comparing administration no with the configured generic-user identity.
The row is always evaluated in the customer scope resolved from the device. In Q-Cloud 2 terms, that scope decides which garment, article, wearer, and item-pool records the row can touch.
T.2 Assign Garment To Wearer
- Purpose
-
Creates or updates a garment in the resolved customer scope. For personal garments the row is connected to a wearer; for generic garments the row is connected to an item pool.
- Valid for
-
New garments and existing garments that should be kept in sync with the source file.
- What happens when the row is read
-
The garment identity is resolved from
chip number. The customer scope comes from the device. The article code is resolved in that same customer scope, and if the article does not yet exist it is created there as part of the garment handling. - If the garment already exists
-
The existing garment is updated to match the row. If nothing changed, the row becomes a no-op.
- If the garment does not exist
-
The garment is created.
- If the row is personal
-
The garment is assigned to the resolved wearer in that customer scope.
- If the row is generic
-
The garment is assigned to an item pool in the resolved customer scope.
- Item-pool resolution for generic garments
-
If an explicit pool identity is configured, that pool is used. If one deterministic pool exists, that pool is used. If no pool exists, a new one may be created. If several possible pools exist and no deterministic match can be made, the row is invalid.
- What is ensured
-
The garment row is interpreted in source order. Earlier valid rows in the same payload can create the wearer, article, or item pool needed by later rows. Personal garments are handled against the wearer state available at that point in the payload. Generic garments are handled against the item-pool state available at that point in the payload.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Wearer number |
15 |
alphanumeric |
Laundry wearer number. Descriptive only. |
Administration no |
10 |
numeric |
Wearer identity, or the generic-user identity for generic garments. This decides whether the row is treated as personal or generic. |
Chip number |
15 |
alphanumeric |
Unique garment identity. |
Article code |
10 |
alphanumeric |
Article identity in customer scope. The article is resolved or created in that same scope. |
Article name |
30 |
alphanumeric |
Article description. |
Size |
4 |
alphanumeric |
Garment size. |
Unimat number |
3 |
numeric |
Device number used for customer resolution. |
Customer number |
6 |
alphanumeric |
Descriptive source value only. |
Not used |
- |
empty |
Empty. |
Not used |
- |
empty |
Empty. |
Unimat slots |
2 |
numeric |
Slot count from the legacy field layout when supplied. |
Compartments |
2 |
numeric |
Recommended compartment size when supplied. |
T.F Change Garment Information
- Purpose
-
Changes garment information in the resolved customer scope. Depending on what changed, the row can update garment data, article data, or both.
- Valid for
-
Existing garments/articles with unique identity.
- What happens when the row is read
-
The garment is resolved by
chip number. - If the garment exists
-
The garment data is updated. Depending on the changed fields, this may update garment-specific data, article-type data, or both.
- If the garment does not exist
-
The current interface creates the garment from the row data instead of rejecting the row. That keeps the result aligned with the source file even when the sender uses
T.Fas a correction for a garment that is missing in Q-Cloud 2. - Note
-
This page keeps the legacy distinction: changes to article code and size affect the garment, while article name and slot/compartment changes may affect the broader article definition in customer scope.
- What is ensured
-
The change is interpreted after all earlier rows in the same payload. It is not allowed to overtake earlier create, assign, load, return, or delete mutations for the same garment.
Fields:
Same field layout as T.2.
T.G Change Article Code
- Purpose
-
Replaces the article code for an existing article in the resolved customer scope.
- Valid for
-
Existing article identities in customer scope.
- What happens when the row is read
-
The old article code and the target article code are looked up in customer scope.
- If the old article code exists
-
The article code is renamed from old value to new value.
- If the old article code does not exist
-
The mutation is invalid.
- If the new article code already exists
-
The row is invalid because the target identity is already in use.
- What is ensured
-
The rename is interpreted in sequence. Later rows in the same payload are evaluated against the renamed article identity only after the rename row has been handled.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Old article code |
10 |
alphanumeric |
Existing article number. |
New article code |
10 |
alphanumeric |
Replacement article number. |
T.3 Bring Garment Back From Device
- Purpose
-
Marks the garment/article as returned to the laundry path without deleting the garment information.
- Valid for
-
Garments/articles with unique identity.
- What happens when the row is read
-
The garment is resolved by
chip numberin the customer scope derived from the device. - If the garment exists
-
The garment is marked as returned.
- If the garment does not exist
-
The row is invalid.
- If the garment is already marked as returned
-
No business change is made.
- What is ensured
-
The return-marking mutation remains distinct from delete and load mutations. It is interpreted in its own place in the ordered journal, and it updates the garment state without removing the garment itself.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Chip number |
15 |
alphanumeric |
Unique garment identity used to resolve the garment in customer scope. |
Unimat number |
3 |
numeric |
Device number. |
T.4 Delete Garment From Device
- Purpose
-
Deletes the garment record from the current customer scope.
- Valid for
-
Garments/articles with unique identity.
- What happens when the row is read
-
The garment is resolved by
chip numberin the customer scope derived from the device. - If the garment exists
-
The garment record is deleted.
- If the garment does not exist
-
No business change is made.
- Note
-
The current interface treats a missing garment as a no-op rather than a hard failure.
- What is ensured
-
Delete is interpreted in source order. Earlier rows for the same garment still apply before the delete, and later rows are not allowed to behave as if the delete happened earlier than stated in the file.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Chip number |
15 |
alphanumeric |
Unique garment identity. |
Unimat number |
3 |
numeric |
Device number. |
T.8 Garment For Loading / Outscan
- Purpose
-
Marks which garments/articles should be sent as an outscan for loading into the device.
- Valid for
-
Garments/articles with unique identity.
- What happens when the row is read
-
The garment is resolved by
chip numberfirst. The current item state is then checked to decide whether the outscan should be sent. - If the garment exists
-
If the garment has no current location in Q-Cloud 2, the outscan is always sent.
- If the garment already has a recorded current location
-
The interface compares the current item state with the file’s loading date and only sends the outscan when that state is still considered current enough. If the item looks newer than the file by too much, the row is skipped instead of sending a stale outscan.
- If the garment does not exist
-
The mutation is invalid.
- Note
-
The device operation uses the garment identity that Q-Cloud 2 treats as the external garment id. In this interface that is the garment chip number. When no row-specific date is present elsewhere, the surrounding control block timestamp remains the default business time for the load decision.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Chip number |
15 |
alphanumeric |
Unique garment identity. |
Unimat number |
3 |
numeric |
Device number. |
Delivery date |
8 |
|
Date used as the business date for the loading decision. It is compared with the current item state when deciding whether the outscan should be sent. |
T.9 Garment Delivered To Wearer
- Purpose
-
Records a garment-delivered-to-wearer event in the source stream. The current interface recognises the row, but it does not apply a business state change.
- Valid for
-
Garments/articles with unique identity.
- What happens when the row is read
-
The garment is resolved by
chip numberin the customer scope derived from the device. The current interface accepts the row as a recognised mutation, logs it as warning-only, and does not change garment state. - If the garment exists
-
No business change is applied.
- If the garment does not exist
-
The row is still recognised, but no delivery state is applied.
- Current business handling
-
Recognised, logged, and accepted as part of the file format, but no business change is applied in the current release.
- Note
-
As in the old source document, this is a delivery-state mutation rather than a garment-definition mutation. In the current Q-Cloud 2 implementation, it is kept as a recognised input type without a business action.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Chip number |
15 |
alphanumeric |
Unique garment identity. |
Unimat number |
3 |
numeric |
Device number. |
Delivery date |
8 |
|
Manual delivery date. |
T.6 Add Signal To Garment
- Purpose
-
Adds a signal to the garment/article, for example a repair or adjustment signal. In the current UNILIN-UNIMAT implementation the row is recognised, but it does not trigger a business change.
- Valid for
-
Garments/articles with unique identity.
- What happens when the row is read
-
The mutation is recognised by the interface, but no garment or article state change is applied.
- Current business handling
-
Recognised, logged, and accepted as part of the file format, but no business change is applied in the current release.
Fields:
| Field | Length | Format | Explanation |
|---|---|---|---|
Mutation code |
1 |
|
Always |
Chip number |
15 |
alphanumeric |
Unique garment identity. |
Unimat number |
3 |
numeric |
Device number. |
Flag code |
2 |
alphanumeric |
Signal or flag code. |