Beruflich Dokumente
Kultur Dokumente
1 Introduction ................................................................................... 4
1.1 Target Audience..................................................................... 4
2 PFI Overview................................................................................. 6
2.1 Communication Interface ...................................................... 6
2.2 Text Files ............................................................................... 6
2.3 Environment Independent ...................................................... 7
3 PFI Specification ........................................................................... 8
3.1 PFI Procedures and Communication Method ........................ 8
3.1.1 Message File Formats .................................................... 9
3.1.2 Data File Formats ........................................................ 10
3.1.3 Result File Formats ...................................................... 12
3.2 PFI File Names .................................................................... 13
4 PFI Message Specifications ......................................................... 14
4.1 UPDATE ............................................................................. 14
4.1.1 PFI Timed Updates ...................................................... 15
4.2 TARGETLINK .................................................................... 15
4.3 PRINT .................................................................................. 17
4.4 REFRESH ............................................................................ 18
4.5 SETGLOBAL ...................................................................... 18
4.6 DELETE .............................................................................. 19
4.7 ESLUPDATE ...................................................................... 20
4.8 PFI Configuration ................................................................ 21
4.8.1 PFI Configuration Summary ........................................ 21
4.8.2 System Parameters for PFI .......................................... 22
Appendix A A Complete List of PFI Fields ................................. 23
Appendix B Complete List of R7 Return Codes .............................. 29
Appendix C R 2.4 Compatibility Issues ........................................... 31
Index .................................................................................................... 33
This document includes a complete specification of the Pricer File Interface (PFI) for the R3 and any future
releases of the Pricer system. Included in this document are the specifications of the generic “low level”
formats of the PFI files and the specific contents (depending on the messages). The complete lists of PFI
fields and R7 return codes are included as appendices.
The Pricer File Interface is geared towards developers involved in integrating the Pricer System with another
system in the store.
This manual contains:
PFI Overview
PFI Specification
PFI Message Specifications
The PFI text based interface communicates with the Pricer System through the PCA. The term PCA is used
for the customer system that contains the Price Controlling Application. This is a Pricer term that is used to
describe the component that provides the Pricer System with information. In a particular customer
environment, the PCA can be the Back-Office Computer System, the POS-system, the Host System or any
other system that controls the actual price of an item and provides the Pricer System with updates whenever
the price is changed. The PCA system interacts with the Pricer System to supply information to the ESLs,
either through the Pricer File Interface (PFI) or through the Pricer Server API.
This section contains:
Communication Interface
Text Files
Environment Independent
The interface takes the following actions:
Links and unlinks ESLs to items.
Prints overlays for the ESLs.
Item maintenance, including add and/or update item information in the Pricer database. The Pricer
System will automatically transmit valid information from the PCA to the ESLs.
NOTE: The Pricer Server API is not covered in this document.
PCA
1 2
PFI
I1 M1 R7
4 3 5
Pricer Server
6 6
If more than one M1-file is found in the directory, the Pricer System creates an internal list of the files that
have been found, and starts to process the oldest one (i.e. the system checks the modified date of the file).
When that M1 file has been processed, the next file in the list is read. When the list is processed, the
directory is scanned again.
M1 File
The M1 record consists of information regarding where to find the data file (I1), and where to produce a
result file. The M1 file must be placed in a special directory, serving as a message area (like a mailbox). The
Pricer Server scans this directory and any files present in this directory are processed as M1 files. If more
than one file is found in the message directory at the same time, they are handled in the order they were
created.
M1 record format
PFI Message
Sign
StartPath
DataPath
ResultPath
NOTE: A comma is used as a field separator.
The message format is not in free text form. Spaces are valid characters. No “white space” characters (i.e.
space, tab, return) are allowed directly before or after the comma. The message format is always one line.
Four commas are required. An omitted parameter is represented by an empty string, but the commas must
still be there. If the StartPath is omitted, then the format is:
PFI Message
Sign
DataPath
ResultPath
Data path and result path include the file name with an absolute path.
M1 Record Components
I1 File
The I1 file is a text file that contains item information formatted in records.
I1 record format:
Sign ItemID [ FieldID Pic |Data| ]... ,
[ Sign ItemID [ FieldID Pic |Data| ]... , ]...
Legend:
[ ] Brackets enclose an optional component or set of components.
… Iteration symbol (0 - N).
I1 Record Components
*) FieldID, Pic and Data together constitute one PFI field. They are optional as a group, but mandatory
within the group, (i.e. if one is present, they all must be present).
The PFI fields are handled by the Pricer Server. The correct fields are processed and inserted into the
database. Fields that are not contained in the configuration are reported in
...\R3Server\logs\BackOfficeLog.txt.
The input stream uses free text format. Any number of blank characters may be present between the different
elements (see the definition of component separators above). It is recommended that the input data file is
Example 2 (formatted):
0001 7311540029202 23 0 |560| 45 0 |1120|,
0001 7311540029203 23 0 |1500| 45 0 |6000| 7 0 |Grape Juice|,
NOTE: The difference between the records: The first two records refer to an I1 record, and the fourth to a
complete PFI message.
This section covers the PFI messages supported by the Pricer System. The function and syntax for each
message is described in detail. For a complete list of return codes, refer to Appendix B.
This chapter describes the following commands:
UPDATE
TARGETLINK
PRINT
REFRESH
SETGLOBAL
DELETE
ESLUPDATE
4.1 UPDATE
The UPDATE PFI message is used for item maintenance. This message is mainly used for updating the
information (e.g. the price) on different items. A send out is always performed on all ESLs that do not have
up-to-date information. The result file is normally created when updating the Pricer database and is finished
before the send out is complete.
The behavior of the message can be configured according to the following parameters:
M1 record examples:
UPDATE,0001,,C:\UPDATE.I1,C:\UPDATE.R7
All PFI fields can be used, except for those normally used in TARGETLINK (1 and 124).
Field 121 is used to specify the Item Presentation Form for the item, and decides which layout to use for the
send out.
Format of field 121:
121 0 |IPF|
I1 record examples
0001 1111122222333 23 0 |1230| 45 0 |12300| 43 0 |54321| 121 0 |normalprice|,
R7 File
The Timed Update function requires a license key. If the system does not have a valid license key the I1
record is rejected and error code E65 is returned in the R7 result file.
4.2 TARGETLINK
The TARGETLINK message is used for linking and unlinking ESLs to and from items in the Pricer System
database. As the result of a successful linking operation, the ESL is automatically updated with the current
item information. "OFF” is sent to the ESL which is unlinked from its item as a result of a TARGETLINK
message. The TARGETLINK message can specify which subcell OFF is sent. If the subcell is not specified,
OFF is sent in the Back Office subcell or in the last known subcell location. The result file is generated prior
to any send out completion.
NOTE: Items are never deleted from the Pricer database as a consequence of this message.
The behavior of the TARGETLINK message can be configured according to the following parameters:
“Item must exist”: true/false
If “false”, a link between the ESL and the item is prepared in advance, and fulfilled when the item
is updated in the Pricer server by an UPDATE PFI message.
If “true”, a link between the ESL and a non existing item is rejected.
“Allow moving PL”: true/false
If “true”, a given ESL that is already linked to another item then the one specified in the I1 record,
will have the old link removed, and a new one created.
If “false”, an already linked ESL cannot be linked to a new item.
M1 File
M1 record example:
TARGETLINK,0001,,C:\TARGLINK.I1,C:\TARGLINK.R7
I1 File
The PFI field 1 is used to specify whether it is a "link" or an "unlink" operation. The PFI field 93 holds the
ESL ID, a 17 character code that is found both as a barcode and in clear text on the back of each ESL. The
PFI field 124 is used to choose a model. The model can be seen as a soft ESL type, not only deciding the
physical ESL type, but also which type of paper overlay to use, and what ESL layouts to use for specific
item presentation forms.
Generic rules:
Mandatory PFI fields: 1
If PFI field 1 is set to”N” (install a new ESL), then ItemID and field 93 are mandatory. The PFI field, 124 is
optional according to the following list:
93, 124 Link an item to ESL, use the model specified in field 124.
93 Link an item to ESL and use a default model for the ESL
type.
Field 9100 (subcell) can be used to specify that an ESL is placed at a certain location in the store.
It is also possible to include the system specific fields 9104 (ESL Location) and 9105 (Facings) in the I1
record.
If the PFI field 1 is set to”D”, (remove a link between an item and an ESL or a group of ESLs) the ItemID or
field 93 may be excluded according to the following lists (the “excluded” ItemID is set to the wild card
character *). Field 124 is never used. Valid combinations if field 1 is set to ”D”:
ItemID Remove the link(s) between ItemID and all its ESLs.
Field 93 is not allowed. All ESLs linked to the item are
deleted.
93 Remove the link between the ESL and the item. The
ItemID is set to „*‟.
NOTE: The ESL ID and Item ID may not be used together. Either use ESL ID with Item ID set to „*‟, or the
Item ID. Field 9100 (subcell) may be used when removing the link between an item and an ESL. It specifies
where OFF is sent.
I1 record examples:
0001 1111122222444 1 0 |N| 93 0 |D4575254697412032| 124 0 |3P-FOOD|,
0001 1111122222555 1 0 |N| 93 0 |D4575254697412032|,
0001 1111122222666 1 0 |D|,
0001 * 1 0 |D| 93 0 |D4575254697412032|,
R7 File
4.3 PRINT
This PFI Message is used for printing overlays.
M1 File
M1 record example:
PRINT,0001,,C:\PRINT.I1,C:\PRINT.R7
I1 File
Result File
M1 File
M1 record example:
REFRESH,0001,,,C:\REFRESH.R7
I1 File
Result File
The result file contains an E00 if the PFI Message was successfully executed or an E04 if the transmission
failed.
4.5 SETGLOBAL
This message is used for setting the value of global system parameters. It is normally used for currency
handling. Note that you need to send a PFI REFRESH command after the SETGLOBAL command to
trigger a price update.
M1 File
M1 record example:
SETGLOBAL,0001,,C:\SETGLOB.I1,C:\SETGLOB.R7
I1 File
The following PFI fields are used to specify the parameter name and the associated value in the I1 file:7001,
7002.
The Item ID should be set to the wildcard character (*, hex 2A), indicating that no item is involved in this
operation, PFI field 7001 specifies the name of the system parameter. PFI field 7002 holds the value to be
assigned to the parameter.
Result File
4.6 DELETE
The DELETE message is used for deleting items from the Pricer database. If the item is linked to an ESL the
link will be removed. (OFF is sent to the ESL) and the item is deleted.
M1 File
M1 record example:
DELETE,0001,,C:\pricer\PFIFiles\DataFiles\Delete.i1,C:\pricer\PFIFiles\ResultFiles\Delete.
r7
I1 File
No PFI fields are mandatory in the I1 file. The I1 record can include only the sign and item ID or also
include the item fields for the item properties that are used.
Mandatory PFI fields: none
I1 record example:
0001 11111222222344,
Result File
The result file contains the result of the PFI Message File (an R7 code).
E00
This error is reported when the command is successfully processed.
E50
This error is reported if the item does not exist in the Pricer database.
R7 record examples:
0001 11111222222344E00
M1 File
M1 record example:
ESLUPDATE,0001,,C:\pricer\PFIFiles\DataFiles\Eslupdate.i1,C:\pricer\PFIFiles\ResultFiles\E
slupdate.r7
I1 File
The PFI fields 9104 (location) and 9105 (facings) can be used.
I1 record example:
0001 * 93 0 |A4645160001912138| 9104 0 |Row4|,
0001 * 93 0 |A4645160001912138| 9104 0 |Row4| 9105 0 |2|,
Result File
The result file contains the result of the PFI Message File (an R7 code).
E00
This error is reported when the command is successfully processed.
E52
When specified label does not exist in your system.
.
R7 record examples:
0001 * E00
0001 * E52
Edit the path of the message file. The R3 server looks for message files in the specified folder. This path is
the same as the path for the Adapter/PCA in the generation of message files.
<DeleteDataFile>false</DeleteDataFile>
Change this tag value to true if the data file is deleted when the operation is finished.
<UseUnicodeResultFile>false</UseUnicodeResultFile>
Change this tag value to true if the result file is required to be in Unicode format.
<ItemPropertyValueDelimeter>|</ItemPropertyValueDelimeter>
Use this tag to configure the delimiter for item property values in a PFI data file.
NOTE: The delimiter specified here has to be used. No other delimiter is valid.
<ReportUnnecessaryUnlink>false</ReportUnnecessaryUnlink>
Set this parameter to true, if the unlink of an ESL which is not linked, is reported in the result file.
<ReportUnknownItems>false</ReportUnknownItems>
<RejectUpdateOnUnlinked>false</RejectUpdateOnUnlinked>
Change this tag value to true to reject the update of an item that is not linked to an ESL.
<CreateResultFile>true</CreateResultFile>
When this parameter is set to true a result file is created and placed in a predefined directory.
<DefaultResultFilePath>D:\Pricer\PFIFiles\ResultFiles\ResultFile.r7
</DefaultResultFilePath>
The value of „DefaultResultFilePath‟ tag specifies the default path for the result file. This path is used to
write the error code of any PFI processing if:
there is some exception in parsing the Message File
the result file path is specified and the message file is incorrect
<ItemMustExist>true</ItemMustExist>
If an ESL is being linked to an item and the Item Id specified for the link is not present in the Pricer
database, the value of this tag is checked by the R3 Server. If the value is „true‟ the link request is rejected
and then an error code, E50 is written to the result file. If the value is „false‟ then the item is inserted in the
Pricer database with NULL values and the ESL is linked to the item. As a result, the ESL turns blank after
transmission.
AllowMovingPL
If an already linked ESL is linked to a new item, the value of „AllowMovingPL‟ tag handles this scenario. If
this value is „ON‟ then the ESL is unlinked from the old item and linked to the new item. If the value of the
tag is „OFF‟, an error code E60 is written to the result file.
Note that AllowMovingPL is configured in the PLAdvancedConfig.prop file in {Installation
Directory}\Pricer\R3Server\config\advanced folder.
The table below specifies the preferred use of various PFI fields. If a certain field is used for a specific
purpose then troubleshooting the configuration will be easier. However, there are no restrictions about which
number to use (with a few exceptions), or the actual field size. The size of the item table column associated
with a certain PFI field is defined in the database script.
The size and type specifications are mainly recommendations. Size is the number of characters. Any size can
be used. Type N is numerical and type AN is alphanumerical. The item table columns are always
alphanumeric. The use of each PFI field is specified in the layout specification, for each customer.
The PFI fields have three main categories:
Customer specific These fields are specified for a customer as part of the
PFI fields Customer Configuration. The Layout Specification
document specifies what properties to use and how to
use them.
Any unassigned number may be used freely, but it is
recommended to use numbers starting from 300 for
customer specific fields. The actual fields to use can be
configured via Properties.prp (IPF target)
System specific These fields are mandatory, used by the system for the
item fields default report set. These fields should be present,
unless specific reports are developed for the customer.
System specific These fields have special meaning, and are parsed by
(reserved) PFI the system in a pre-defined process. These fields must
fields always follow the recommended procedure.
These fields are specified for a customer as part of the Customer Configuration. The preferred fields are
described to make troubleshooting and maintaining the configuration easier.
No Field Size Type Note
3 Order number 10 N Order number of the item.
4 Item number 15 N Used for a supplier specific item number.
8 Description 25 AN Item description/information (i.e. brand name).
9 Supplier name 15 AN The supplier of the item.
10 Retailer package size 5 N Number of items in a retailer package.
11 Pallet number 5 N Number of retailer packages on each pallet.
12 Unit/Weight 10 AN This is a text field normally used to hold a complete
unit or weight string, e.g.”100g” or ”2 Liters”.
13 Data 5 AN Used freely for POS-specific information.
14 Sales data 8 N Used for sales statistics.
15 Shelf space 5 N Shelf space occupied by the item.
16 Order quantity 5 N Used to indicate the standard order quantity.
17 Order level 5 N Indicates when a new order is created. If the number
of items on the shelf is lower than the order level,
more items should be ordered.
18 Unit factor 5 N Unit factor.
19 Text below unit price 2 N
20 Text below price 2 N
22 Refund code 2 N
23 Price 8 N Standard price including VAT.
24 Purchase price 8 N Retailer purchase price.
25 Discount price 8 N Discount price including VAT.
26 Discount purchase price 8 N Discount retailer purchase price.
27 Discount start date 10 N
28 Discount end date 10 N
29 New price 8 N
30 New purchase price 8 N
31 New price start date 10 N
32 New price end date 10 N
33 Compare price 8 N This field may be used for a comparative price (i.e. the
Legend Description
1 The return code refers to the complete PFI message.
Type
2 The return code refers to one I1 record.
F REFRESH message.
T TARGETLINK message.
U UPDATE message.
Message
P PRINT message.
D DELETE message
S SETGLOBAL message
E ESLUPDATE message
Normal Normal operation.
E27 1- TUFPDSE Error The result file could not be created at the position
specified in M1. A result file is created at the
default position.
E66 -2 -U----- Warning Item was updated but one or more item properties
were truncated because it was too long for its
database column.
This return code has been removed. Instead a
log messages is written when truncation has
occurred.
The following available commands are available in R2.4 but not supported in R3.
ITEMREAD
PLREAD
DBWRITE
TARGETLINK
The targetlink message in R3 has support to add the ESL properties ESL Location (field 9104) and Facings
(field 9105). Two new error codes; E62 and E63 are added for subcell handling.
UPDATE
R3 does not support the following options for “unknown” item in UPDATE.
R3 does not support IPF (ItemPresentationForm) per ESL page on the format:
121 0 |priceIPF:infoIPF:overlayIPF|
DELETE
Item DELETE is a new command in R3 as compared to R2.4. Items are deleted from the Pricer database by
this command.
The R3 Pricer System does not support to execute a “follow-up” program (as could be specified in the R2.4
M1 file). The format of the message file should always include two commas after the signature:
UPDATE,0001,,C:\pricer\PFIFiles\...
The default data enclosure in R2.4 is a quotation mark (“), where as R3 has pipe (|). In R3 you can only use
the separator that is specified in the configuration in PFIConfigurationParameterProfile.xml.
The PFI fields are handled by the Pricer Server; if a field is not in the configuration then it goes into a log
file. The correct fields are processed and inserted into the database. The log file is generated in
C:\pricer\R3Server\logs\BackOfficeLog.txt. In R2.4, values that are not handled are ignored.
A transmission result file and semaphore file was used in R 2.4, is not supported in R3.
The condensed format of the result file, called R8 in R2.4 is not supported in R3.
In R3 you cannot get one record per ESL page which was possible in R2.4. Consequently, the result
file components ESL page (indicates which ESL page the record is referring to in R2.4) is not
supported in R3.
The PFI field report format (where the record can include a list of PFI fields) is not supported by
R3.
Miscellaneous
“Last way out files” including target link and update files, as used in R2.4 recovery situations, are
not automatically created when the Pricer Server is shut down. R3 contains scripts for creating the
files.
The Pricer Server first checks that the information provided through the interface is syntactically
and semantically correct. If not, the correct error codes are put into the result file. In R2.4 nothing
in the I1 file is processed, not even any correct parts. In R3 correct records are processed.
The R3 Pricer System does not support to execute a “follow-up” program (which can be specified
in the R2.4 M1 file).
Error code E18 are not used any longer. Instead E54 is used for all errors related to “Unknown
model”.
The R3 PFI configuration is created via the file PFIConfigurationParameterProfile.xml. The parameters to
configure this file are the same as R2.4.
R3 / English