FPRLIN : INPUT FILE FORMAT DESCRIPTION
1. It is a text file
2. Every line is a separate command (or comment)
3. The first line must be "КARAT" (this is the start mark)
4. The last line must be "END KARAT" (this is the end mark)
COMMANDS DESCRIPTION:
1. Command "receipt type" /always before the other commands/
| Rd | n | , where n is a number between 0 and 5
2 - receipt + duplicate
If this command is missing the receipt type is the one setup
in the ECR
2. Sell command:
| * | NAME | PRICE | DECIMAL_POINT | QUANTITY | TAX_GROUP | DEPARTMENT | 0 |
| * | - ASCII character '*'
| NAME | - 24 ASCII characters. Might include numbers, signs
capital latin and cyrilic characters, which will be printed on one line
of the receipt as an article description.
| PRICE | - 8 number characters ХХХХХХХХ, representing the price
and depending on the DECIMAL_POINT field. Leading zero(s) needs to be
applied if the number is less than 8 characters:
| DECIMAL_POINT| - 1 number character with decipal point position:
DECIMAL_POINT = '0' no decimal point, price = ХХХХХХХХ
DECIMAL_POINT = '2' with decimal point, price = ХХХХХХ.ХХ
| QUANTITY | - 9 number characters ХХХХХХХХХ, representing the
quantity ХХХХХХ.ХХХ
| TAX_GROUP | - 1 number character representing the tax group.
Depends on the ECR:
'0' - Tax group A
'1' - Tax group B
'2' - Tax group C
| DEPARTMENT | - 1 number characters, representing the department,
between '0' and '9'.
3. Command "discount" :
| - | SUM | DECIMAL_POINT| TAX_GROUP |
| - | - ASCII character '-';
| SUM | - 8 number characters ХХХХХХХХ, representing the sum of
the discount and depending on the DECIMAL_POINT field. Leading zero(s)
needs to be applied if the number is less than 8 characters:
| DECIMAL_POINT| - 1 number character with decipal point position:
DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ
DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ
| TAX_GROUP | - 1 number character representing the discount tax group.
Depends on the ECR:
'0' - Tax group A
'1' - Tax group B
'2' - Tax group C
4. Command "addition":
| + | SUM | DECIMAL_POINT| TAX_GROUP |
| + | - ASCII character '+';
| SUM | - 8 number characters ХХХХХХХХ, representing the sum of
the addition and depending on the DECIMAL_POINT field. Leading zero(s)
needs to be applied if the number is less than 8 characters:
| DECIMAL_POINT| - 1 number character with decipal point position:
DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ
DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ
| TAX_GROUP | - 1 number character representing the addition tax group.
Depends on the ECR:
'0' - Tax group A
'1' - Tax group B
'2' - Tax group C
5. Print text command
| Р | TEXT |
| TEXT | - 22 ASCII characters, only the first 16 are printed
You could print name here or quantity x price and then send the sum only
with command following next. The is the recommended practice to avoid the
rounding error.
The entire file could contain only "Print text" commands. In this case
the ECR will print NON FISCAL receipt and the character '*' will be added
on the right
6. Sum command
| S | SUM | DECIMAL_POINT| TAX_GROUP | DEPARTMENT | 0 |
| SUM | - 8 number characters ХХХХХХХХ, representing the sum of
the addition and depending on the DECIMAL_POINT field. Leading zero(s)
needs to be applied if the number is less than 8 characters:
| DECIMAL_POINT| - 1 number character with decipal point position:
DECIMAL_POINT = '0' no decimal point, sum = ХХХХХХХХ
DECIMAL_POINT = '2' with decimal point, sum = ХХХХХХ.ХХ
| TAX_GROUP | - 1 number character representing the addition tax group.
Depends on the ECR:
'0' - Tax group A
'1' - Tax group B
'2' - Tax group C
| DEPARTMENT | - 1 number characters, representing the department,
between '0' and '9'.
7. Payment command - must the last command preceding the END KARAT line:
| T | 000001000 | PAY_TYPE | PAY_NAME |
| T | - ASCII символ 'T';
| PAY_TYPE | - 1 number character representing the payment type
(depending on ECR type, usually between '0' and '3'.
| PAY_NAME | - 6 ASCII characters with payment name (ex: 'CASH ')
';' is the comment character all lines starting with ; are ignored