...
The Lexmark system includes a database with its own item/price registers, label templates and store setup. The input file contents (label batches) are also stored in the database, so when future price changes are exported from Chain Classic these will be available in Lexmark when a store wants to print out labels before the changes take effect.
History
| Version | Date | Description | Changed by |
|---|---|---|---|
| 1.0 | 2023.08.28 | Document created | Per Holm |
| 1.1 | 2024.01.18 | New field 53 "Lowest price in Item/Price | Odd Erik Eide |
| 1.2 | 2024.09.13 | New field 54 "Discount type price" in Item/Price | Odd Erik Eide |
| 1.3 | 2025 | New field 55 "Label tag" in Item/Price | Odd Erik Eide |
Item/price file
| Field no | Content | Data type | Commentary |
|---|---|---|---|
1 | Server name | Text | System parameter |
2 | Store no | Integer | |
3 | Start date | Date | Date format dd/mm/yy |
4 | End date | Date | Date format dd/mm/yy, only for campaign |
5 | Item queue type | Integer | See explanation below |
6 | Item queue type text | Text | |
7 | Label | Logical | Yes = Generate label |
8 | Label template no. | Integer | 0 = No label |
9 | Supplier no. | Integer | |
10 | Supplier name | Text | |
11 | Supplier order no. | Integer | |
12 | PLU/GTIN main item | Integer | |
13 | PLU/GTIN tandem | Integer | For items with more than one tandem, a copy of the original record (with tandem GTIN being the only changed field) has to be exported for each additional tandem |
14 | Model no. | Integer | |
15 | Main item for model | Logical | For model items, one of the variants within each model should be marked with "yes" in this field |
16 | Item text | Text | |
17 | Label text 1 | Text | |
18 | Label text 2 | Text | |
19 | Color text | Text | |
20 | Size text | Text | |
21 | Sales price | Decimal | |
22 | Ordinary price | Decimal | Filled in only when item is on campaign |
23 | Fixed discount % | Decimal | |
24 | Fixed discount amount | Decimal | |
25 | Sales unit | Text | Unit text used for sales price |
26 | Compare unit | Text | Unit text used for compare price |
27 | Compare quantity | Decimal | Quantity per sales unit, for calculation of compare price |
28 | Compare price | Decimal | Calculated compare price based on current sales price |
29 | Linked item | Integer | PLU/GTIN for linked item (refund) |
30 | Number in package | Decimal | Number of units in smallest supplier package (D-PAK) |
31 | Department no. | Integer | |
32 | Department text | Text | |
33 | Item area no. | Integer | |
34 | Item area text | Text | |
35 | Item group no. | Integer | |
36 | Item group text | Text | |
37 | Free group | Text | One-letter code to decide if item is delivered directly from the supplier or from an internal warehouse. The item field "Free group" in Chain Classic is used for this, and output to Lexmark is the first letter from the text field in the related free group table |
38 | Label mark | Text | At this time, the only valid code is "S" for "slow mover", blank for all other items |
39 | Assortment code | Text | |
40 | Consumer symbol 1 "Swan mark" | Logical (yes/no) | "yes" indicates that symbol should be printed/displayed on labels |
41 | Consumer symbol 2 "Keyhole" | Logical (yes/no) | "yes" indicates that symbol should be printed/displayed on labels |
42 | Consumer symbol 3 "Ecological" | Logical (yes/no) | "yes" indicates that symbol should be printed/displayed on labels |
43 | Consumer symbol 4 "EU flower" | Logical (yes/no) | "yes" indicates that symbol should be printed/displayed on labels |
44 | Promotion type | Text | Field has a value only for items on campaign. The value is "T" for items in department 2010 (groceries) and "K" for all other items |
45 | Brand | Text | Brand name |
46 | Show ordinary price | Logical | Set to "no" if quantity sold within last x days is less than y. Both of these values (system parameters) must have a value > 0 for this check to be performed, else the value is always "yes" |
47 | User ID | Text | |
48 | Sales channel | Text | Copied from campaign group where applicable |
49 | Mix-match text | Text | "Additional text" from mixmatch which contains current item. |
50 | Mix-match price | Decimal | Mix-match sales price |
51 | Self-scan item | Logical | "yes" if mix is marked as "self-scan only" |
52 | Link type | Integer | A value > 0 signifies that this item has a linked item (1 = refund) |
53 | Lowest price | Decimal | Lowest sales price from a given period (e.g. 30 days). Only used for campaign price and member price |
54 |
Discount type price | Integer | Discount type price. Only used for campaign price and member price | |
55 | Label tag | Text | Label tag text from Sys.Alt. |
Item queue types
In Lexmark export files, the queue types from Chain Classic are used to define which type of change each record represents:
- 1 – New item/price
- 2 – Change of (main) GTIN on item
- 3 – Item info change
- 5 – End campaign
- 6 – Ordinary price change
- 7 – Start campaign
- 8 – Start member campaign
- 81 – End member campaign
- 9 – Delete item/price
In addition to these, queue type 0 is used for on-demand export (not triggered by any change of data).
Export files
Lexmark item/price files have this name pattern:
- <prefix>_<server name>_<date>_<time>.<store no>
- Date has the format YYYYMMDD and time is number of seconds since last midnight.
- Prefixes are parameterized, see below for current values used by Coop.
There are to types of export files:
- Item file – goes only to the "total store" (99900)
- Prefix: libitemlex
- Queue types included: 0, 1, 2, 3 and 9
- Price file – goes to all other stores
- Prefix: priceitemlex
- Queue types included: All except type 3
Functionality - rules and considerations - Export triggered from item/price change
- Future price changes / campaigns are exported immediately when registered in Chain Classic, with the label flag being set to "yes". Thus, a label batch will be created in Lexmark, making it possible for stores using paper shelf edge labels to print out these before the changes takes effect.
- When the change date is reached, a new export is made, but now with the label flag set to "no".
- As far as possible, we try to prevent redundant labels from being be printed. A couple of scenarios where label printing is suppressed:
- A campaign starts, and campaign price is the same as ordinary price.
- Two campaign periods are set up back-to-back, and the sales price in both periods are the same.
- Some changes demand special handling to guarantee data integrity in the Lexmark database:
- Change of main GTIN for an item
- Export of record(s) with queue type 2 (using old GTIN)
Might be more than one record if item has more than one tandem - Export of record(s) with queue type 1 (using new GTIN)
Old GTIN in tandem no. field
Might be more than one record if item has previous tandem
- Export of record(s) with queue type 2 (using old GTIN)
- Addition/deletion of tandem
- Export of record(s) with queue type 9
Might be more than one record if item has more than one tandem - Export of record(s) with queue type 1
Might be more than one record if item has more then one tandem after addition/deletion
- Export of record(s) with queue type 9
- Change of main GTIN for an item
Mix-match file - file definition
| Field no | Content | Data type | Commentary |
|---|---|---|---|
1 | Server name | Text | System parameter |
2 | Store no | Integer | |
3 | Mix-match ID | Text | External mix-match ID |
4 | Mix-match text | Text | Descriptive text |
5 | Action | Text | S=Deletion, N=New/Changed |
6 | Mix-match type | Integer | |
7 | Mix type text | Text | |
8 | Member mix | Logical | Yes=valid only for members |
9 | Start date | Date | Date format dd/mm/yy |
10 | End date | Date | Date format dd/mm/yy |
11 | Sales price | Decimal | Total sales price for mix-match |
12 | Quantity | Decimal | Quantity required to get mix discount |
13 | Discount % | Decimal | Discount in percent for all items in mix |
14 | Discount amount | Decimal | Discount amount for all items in mix |
15 | Subtotal limit | Decimal | Required subtotal amount for mix to kick in |
16 | Subtotal % | Decimal | Subtotal discount in percent |
17 | Subtotal amount | Decimal | Subtotal discount amount |
18 | Self-scannig | Logical | Yes indicates that mix-match is only valid when customer uses self-scanning |
19 | Mix-match text 2 | Text | Short free text |
20 | Mix-match note | Text | Extended free text. Line feeds in original text must be replaced with hash sign (#) in export |
Export files
Lexmark mix-match files have this name pattern:
- mixlex_<server name>_<date>_<time>.<store no>
- Date has the format YYYYMMDD and time is number of seconds since last midnight.
Functionality – rules and considerations
- Only "mix header" information is exported.
- Different fields will be filled in for different mix types.
- Only some mix types will get a meaningful representation in this format. In Chain Classic, it is parameterized which mix types should be exported to Lexmark.