Перейти до вмісту

Керівництво програміста "АртСофт - Універсальний драйвер фіскальних реєстраторів для України"

Матеріал з K2 ERP Wiki

printRecTotal

Драйвер здатна використовуватися в системах Microsoft Windows з будь-якими мовами програмування та засобами розробки, що підтримують технологію [[COM]]. * [https://artsoft.ua/ офіційний сайт ArtSoft]
* [https://erp.kyiv.ua/ офіційний сайт K2 ERP]
* [https://wiki.erp.kyiv.ua/ K2 ERP Wiki Ukraine]

<div style="border:2px solid #ffb74d; background:#fff3e0; padding:14px; border-radius:8px; margin:18px 0;">

VARIANT_BOOL printRecTotal(DOUBLE sum, LONG type)

<syntaxhighlight lang="cpp">
VARIANT_BOOL endFiscalReceipt()
'''Перевага K2 ERP'''<br />
<syntaxhighlight lang="cpp">
= K2 ERP і ArtSoft =
== printRecTotalCard ==
'''Призначення:''' функція друкує службовий чек внесення або вилучення готівки. |-
| LastErrorEx
| Ціле число, тільки для читання
| Код помилки конкретної моделі фіскального реєстратора. # Робота з реєстраторами у термінальному режимі або через TCP/IP. # Номер чека та результат операції повертаються в K2 ERP. Закрити порт
Універсальний драйвер дає можливість [[K2 ERP]] працювати з різними моделями РРО через уніфікований інтерфейс. # Встановити та перевірити необхідні параметри підключення за допомогою сервісного програмного забезпечення виробника реєстратора. Для різних моделей і версій можуть відрізнятися підтримувані команди, поведінка знижок, звітів, оплат, дисплея покупця та службових операцій. Для придбання програми потрібно оформити заявку на сайті компанії [http://www.artsoft.ua/ artsoft.ua]. Створити COM-об’єкт ArtSoft.FiscalPrinter
<syntaxhighlight lang="cpp">
  1. У K2 ERP створюється документ продажу або касова операційна дія. # Чек закривається. Код дорівнює нулю у разі успішного виконання функції.</syntaxhighlight>

! # Викликати closePort. Відкрити чек beginFiscalReceipt(0, "Касир") VARIANT_BOOL stop()

Перевага для українського бізнесу

Результат здатна приймати значення:
== Перед початком роботи ==

<div style="border:2px solid #81c784; background:#f1f8e9; padding:14px; border-radius:8px; margin:18px 0;">

Відмінність чека повернення від чека продажу полягає у вказанні типу чека '''«чек повернення»''' у функції [[#beginFiscalReceipt|beginFiscalReceipt]]. '''Призначення:''' функція закриває COM-порт або TCP/IP-зєднання з фіскальним реєстратором. # Самостійне керування кодами артикулів та програмуванням артикулів. # Виконати функцію [[#openPort|openPort]] із зазначенням імені послідовного COM-порту та швидкості підключення. SEO-опис
VARIANT_BOOL setR(BSTR r)
BSTR getTime()

У рядку статусу можна вибрати мову інтерфейсу програми. Вікно емулятора автоматизовано відкривається під час виконання функції [[#start|start]] із необхідним параметром. Закрити чек endFiscalReceipt
Уважно прочитайте ліцензійну угоду. = Значення для української автоматизації торгівлі =

Приклад для 1С:компанія-користувач 7.7:

== Швидкий старт інтеграції з K2 ERP ==

!

Фіскальні реєстратори можуть дозволяти зміну часу лише після виконання Z-звіту. # Протестувати зв’язок реєстратора з ПК за допомогою сервісного програмного забезпечення. Тип ! |}

Фіскальний реєстратор здатна блокувати роботу без підключеного дисплея покупця, без касової стрічки, після тривалої роботи без Z-звіту або через ненадсилання даних до податкової. Передати товари через printRecItem

Службове внесення або вилучення

</syntaxhighlight>

</syntaxhighlight>

VARIANT_BOOL setA(BSTR a, VARIANT_BOOL print)

'''реліз системи драйвера 7.3'''
|-
| 0
| EAN8
|-
| 1
| EAN13
|-
| 2
| CODE128
|-
| 3
| QR
|}

<syntaxhighlight lang="text">

== Звіти за період ==
Якщо драйвер застосовують, коли потрібно на термінальному сервері, інсталяцію потрібно виконувати на сервері. '''Призначення:''' функція друкує денний звіт з обнуленням — Z-звіт. У такій архітектурі:
= Нефіскальний чек =
'''Призначення:''' функція друкує текст у нефіскальному чеку.== endFiscalReceipt ==
Виберіть шлях для встановлення драйвера.== printRecTotalEx ==

'''Технічна примітка'''<br />

'''Призначення:''' функція відкриває грошову скриньку, підключену до фіскального реєстратора. |-
| LastErrorExText
| BSTR-рядок, тільки для читання
| Текст останньої помилки для конкретної моделі фіскального реєстратора. = Вступ =

Оригінальна документація описує COM-інтерфейс драйвера, порядок підключення РРО, друк чеків, роботу зі звітами, емулятором і кодами помилок. Елемент
'''Призначення:''' функція завершує роботу драйвера фіскальних реєстраторів.{{SoftwareAlternative
|name=АртСофт Універсальний драйвер РРО
|type=універсальний драйвер для інтеграції фіскальних реєстраторів України з касовими, обліковими та ERP-системами через COM-інтерфейс
|alternative_to=самописні драйвери РРО; ручна робота з протоколами фіскальних реєстраторів; окремі касові програми без ERP; ручне перенесення чеків; старі касові інтеграції; 1С; BAS
|category=ArtSoft, АртСофт, РРО, фіскальні реєстратори, касове ПЗ, COM, інтеграції K2 ERP, K2 ERP, K2 Cloud ERP, українське ПЗ, автоматизація торгівлі
}}
<syntaxhighlight lang="cpp">
'''Параметри:'''
'''Увага'''<br />

== printRecVoid ==

У рядку статусу відображається інформаційні матеріали про зазначені параметри підключення: COM-порт і швидкість або IP-адреса та порт. * <code>IP</code> — IP-адреса фіскального реєстратора;
* <code>Port</code> — порт підключення. # K2 ERP через інтеграційний компонент створює COM-об’єкт <code>ArtSoft.FiscalPrinter</code>. # інформаційні дані використовуються для документів, складу, фінансів і управлінської аналітики. VARIANT_BOOL printText(BSTR text)
За основу взято зовнішній вигляд чека популярних реєстраторів із протоколом Datecs, зокрема Datecs 3530T та Екселліо.== openCashDrawer ==

Рекомендований тестовий додаток:

= Встановлення ПЗ «АртСофт Універсальний драйвер РРО» у системах Windows =

5. fp = СоздатьОбъект("ArtSoft.FiscalPrinter");

! # Чек закривається.

5. Порожній рядок у разі успішного виконання.

2.
Для початку роботи з бібліотекою необхідно:

Призначення: функція додає номер чека або фіскальний номер каси до чека повернення. Значення

VARIANT_BOOL printPeriodicReport(LONG type, BSTR begin, BSTR end)

VARIANT_BOOL printXReport() У поєднанні з K2 ERP драйвер здатна бути частиною повного цифрового контуру: </syntaxhighlight>

0 Усі реєстратори у протоколі Datecs: Datecs FP3530T, ЕКСЕЛЛІО FPU-550, ЕКСЕЛЛІО FPU-550ES, ЕКСЕЛЛІО FP-280, ЕКСЕЛЛІО FPU-260, ЕКСЕЛЛІО LP-1000, ЕКСЕЛЛІО FP-700, ЕКСЕЛЛІО FP-2000, ЕКСЕЛЛІО FPР-350, KBM FP-S651, KBM FP-СMP10
1 Усі реєстратори у протоколі Криптон
2 Марія, КСТ
3 ІКС, MG, ФР7
4 MINI-ФП
5 MINI-Т, МІНІ-ФП, Вікінг
6 MG, FR90 через TCP/IP
7 LeoCAS-200, LeoCAS-201
100 Емулятор фіскального реєстратора

Z-звіт

  • True — функція виконана успішно;
  • False — виникла помилка. Ці інформаційні дані служать для контролю правильної роботи зовнішньої програми.== endNonFiscal ==

printRecItem

6. Для друку денного звіту з обнуленням, Z-звіту, достатньо викликати функцію printZReport. # Самостійний контроль властивостей артикулів. Перед підключенням до K2 ERP потрібно переконатися, що РРО справний, не заблокований і коректно функціонує через сервісне ПЗ виробника.

C:\Program Files\ArtSoft\FiscalPrinter

Властивості та обробка помилок

Приклад логіки продажу

</syntaxhighlight>

Призначення: функція друкує штрихкод у чеку. # Виконати необхідну кількість продажів, використовуючи функції printRecItem і printText. # Закрити нефіскальний чек функцією endNonFiscal. Якщо РРО підключені локально до робочих місць, потрібно окремо перевірити сценарій доступу до COM-порту або TCP/IP-підключення. Для деяких моделей РРО здатна враховуватися так само безготівковий залишок або інші внутрішні правила реєстратора. # Для реєстраторів із TCP/IP-підключенням використати функцію openPortEx. |-

SN BSTR-рядок, тільки для читання Заводський номер фіскального реєстратора.== printBarCode ==
АртСофт Універсальний драйвер РРО виступає як важливим інструментом для української автоматизації торгівлі, оскільки дає можливість працювати з різними моделями фіскальних реєстраторів через єдиний програмний інтерфейс.

VARIANT_BOOL printZReport()

printRecCash

beginFiscalReceipt

openPort

Порядок роботи з драйвером

Майже всі функції роботи з фіскальним реєстратором повертають результат виконання логічного типу: Z-звіт виступає як операцією з обнуленням. У разі незгоди з угодою виберіть «Я не приймаю умови угоди», після чого подальше встановлення буде припинено. |-

LastErrorText BSTR-рядок, тільки для читання Текст останньої універсальної помилки для всіх моделей фіскальних реєстраторів. Це дає можливість правильно опрацьовувати як універсальні помилки, так і специфічні помилки конкретної моделі РРО.</syntaxhighlight>

Приклади середовищ: Без універсального драйвера бізнес-середовище або розробник здатна стикатися з типовими проблемами:

1 4800 бод 2 9600 бод 3 19200 бод 4 38400 бод 5 57600 бод 6 115200 бод

Вікно налаштувань призначене для конфігурація зовнішнього вигляду чеків, типів податків, вибору пристрою друку, параметрів друку, шапки та підвалу чека.</syntaxhighlight> Рекомендація для розробника

Призначення документації

</syntaxhighlight>

6. # Виконується start з потрібною моделлю РРО. |- | LastReceiptNum | Ціле число, тільки для читання | Номер останнього фіскального чека. Порожній рядок у разі успішного виконання.</syntaxhighlight>

Для друку копії чека достатньо викликати функцію printDuplicateReceipt. Завершити роботу

beginNonFiscal

! Призначення: функція застосовується для для оплати фіскального чека електронним платіжним засобом. Критично критично

! Окремо варто відзначити навігацію, кольорові технічні примітки, попередження і акценти для інтеграції з K2 ERP виступає ключовою рисою України». Завершити роботу stop

Для отримання фіскального чека продажу необхідно:

</syntaxhighlight>

  • потрібно окремо реалізовувати протоколи кожної моделі РРО;
  • складно підтримувати багато моделей фіскальних реєстраторів;
  • важче переходити на іншу модель РРО;
  • складніше працювати через TCP/IP;
  • немає єдиного механізму обробки помилок;
  • складніше тестувати інтеграцію без фізичного РРО;
  • зростає вартість підтримки касового контуру;
  • складніше інтегрувати РРО з ERP.
  • позитивна сума — внесення;
  • негативна сума — вилучення.

Для завершення роботи з фіскальним реєстратором необхідно: </syntaxhighlight> </syntaxhighlight>

SEO title: АртСофт Універсальний драйвер РРО — документація програміста, COM-інтерфейс, фіскальні реєстратори та інтеграція з K2 ERP

SEO keywords: АртСофт Універсальний драйвер РРО, ArtSoft FiscalPrinter, ArtSoft.FiscalPrinter, драйвер РРО, фіскальний реєстратор, РРО, COM, касове ПЗ, X-звіт, Z-звіт, емулятор фіскального реєстратора, Datecs, Екселліо, Марія, ІКС, MINI-ФП, K2 ERP, інтеграція РРО з ERP

</noinclude>
 {{SEO
Шаблон для службового SEO-опису сторінки. 

}}


</syntaxhighlight>

Щоб продовжити встановлення, натисніть «Встановити». * ArtSoft

Призначення: функція друкує довільний текст у фіскальному чеку. Призначення: функція анулює поточний відкритий фіскальний чек.</syntaxhighlight> Призначення: функція додає штрихкод перед друком товарної позиції. Створити COM-об’єкт ArtSoft.FiscalPrinter |- | Марія 301МТМ | Т3; Т3+; Т7; Т10; Т10+; Т11; Т10M; Т11M |- | Марія-304Т | 304T-1; 304T-2; 304Т-3; 304Т-3М; 304Т-4; 304Т-5; 304Т-5M; 304Т-6; 304Т-6M |- | Марія-304Т1 | 304T1-1; 304T1-2; 304Т1-3; 304Т1-5; 304Т1-6 |- | Марія-304Т2 | 304T2-1; 304T2-2; 304T2-3; 304Т2-5; 304Т2-6 |- | Марія-304Т3 | 304Т3-3; 304Т3-5; 304Т3-6 |- | КСТ-М | М-1; M-2; M-3 |- | КСТ-Т4 | Т4-6 |- | DATECS FP 3530Т | 1.00 UA; 1.10 UA; 1.31 UA; 2.00 UA; 5.2; 5.00; 5.01; 5.03 |- | DATECS FP–3141Т | 2.01; 2.03; 2.04 |- | DATECS FP–Т260 | 2.00 UU; 2.01; 2.01UU; 2.02; 2.03; 4.2; 4.00; 4.01; 5.02 |- | DATECS СМР-10 | 3.00; 3.01; 3.20 |- | DATECS СМР-10M | 4.01; 4.02 |- | DATECS СМР-10L | 5.00 |- | DATECS FP–Т88 | 4.00; 4.01; 5.02; 5.03 |- | DATECS FP–320 | FP-320 4.01; FP-320 4.02; 5.02; 5.03 |- | DATECS FP-510 | 4.00; 4.02 |- | DATECS FP–101 SMART | 4.02; 4.03; 5.03 |- | DATECS FP-7197 | FP-7197 4.01 |- | KBM FP-S651 | 1.00 UA; 3.00 UA |- | KBM FP-СMP10 | 1.00 UA |- | ЕКСЕЛЛІО FPU-550 | 1.00 UA; 3.00 UA; 4.00 UA; 5.00 UA |- | ЕКСЕЛЛІО FPU-550ES | 1.00 UA; 2.00 UA; 3.00 UA; 4.00 UA |- | ЕКСЕЛЛІО FP-280 | 1.00 UA; 2.00 UA; 3.00 UA; 4.00 UA |- | ЕКСЕЛЛІО FPР-350 | 1.00 UA; 2.00 UA; 3.00 UA; 4.00 UA |- | ЕКСЕЛЛІО FPU-260 | 1.00 UA |- | ЕКСЕЛЛІО LP-1000 | 2.00 UA; 4.00 UA; 5.00 UA |- | ЕКСЕЛЛІО FP-700 | 1.00 UA; 2.00 UA; 3.00 UA; 4.00 UA; 5.00 UA |- | ЕКСЕЛЛІО FP-2000 | 1.00 UA; 2.00 UA; 3.00 UA; 4.00 UA; 5.00 UA |- | IKС-483 LT | ОП-01; ОП-02; ОП-06 |- | IKС-Е260Т | ЕП-01; ЕП-02; ЕП-05; ЕП-06 |- | ІКС E-810T | ЕП-08; ЕП-09; ЕП-11; ЕП-12 |- | ІКС-С651Т | MZ-08; MZ-09; MZ-11; MZ-12 |- | ІКС-А8800 | MF-08; MF-09 |- | ІКС-Е07 | Е7-09; Е7-12 |- | MG-T808TL | MG-08; MG-09 |- | MG-Р800TL | GР-09 |- | MG N707TS | MG-07; MG-07.01; MG-07.02; MG-07.03 |- | MG-Р777TL | MG-77; MG-77.01; MG-77.02 |- | MG-T787TL | MG-87; MG-87.01; MG-87.02 |- | ФР7 | ФР-08; ФР-09 |- | FR90T | 315.02; 315.03 |- | FR90X | 315.02; 315.03 |- | FR90M | 315.02; 315.03 |- | FR90.XM | 318.01; 318.02; 318.03 |- | MIНI-ФП4 | 257.01; 257.02 |- | MIНI-ФП6 | 257.03; 257.04; 257.05 |- | MINI-Т 400ME | 4101-4; 4101-6; 4101-7; 4101-8; 4101-9 |- | MINI-Т 51.01 | 5101-2; 5101-3; 5101-4 |- | MINI-Т 61.01 | 6101-2; 6101-3; 6101-4 |- | МІНІ-ФП54.01 | 5401F1; 5401F2; 5401F3 |- | МІНІ-ФП81.01 | 8101F1; 8101F2; 8101F3 |- | МІНІ-ФП82.01 | 8201F1; 8201F2; 8201F3 |- | ВІКІНГ-Р10 | 1001F1 |- | ВІКІНГ-Р20 | 2001F1 |- | ВІКІНГ-Р21 | 2101F1 |- | LeoCAS-200 | L200.01; L200.02; L200.03; L200.04; L201.05 |- | LeoCAS-201 | L201.01; L201.02; L201.04; L201.05 |}

# Робота драйвера на Windows 7 і вище.

ArtSoft.FiscalPrinter

! Увага

Універсальний драйвер АртСофт має захист від несанкціонованого використання. тел.
Приклад для Visual Basic:
Для друку денного звіту без обнулення, X-звіту, достатньо викликати функцію [[#printXReport|printXReport]]. Київ 1999  2026

VARIANT_BOOL setU(BSTR u, VARIANT_BOOL print)

</syntaxhighlight> 3. # Переконатися, що фіскальний реєстратор увімкнений і підключений до ПК або мережі. # Наявність вбудованого емулятора фіскального реєстратора. Завершення роботи призводить до відключення послідовного порту або закриття TCP/IP-з’єднання. Передати оплату через printRecTotal

  1. Встановити АртСофт Універсальний драйвер на ПК, до якого підключено реєстратор.== Друк копії чека ==
  • True — функція виконана успішно;
  • False — виникла помилка. Назва звіту
Нефіскальний чек призначений для друку додаткової довільної інформації. У разі роботи з термінальним сервером драйвер встановлюється на сервер. !

</syntaxhighlight>

VARIANT_BOOL openPortEx(BSTR IP, LONG Port)

VARIANT_BOOL printRecTotalCard(DOUBLE sum, BSTR idEkv, BSTR idTerm, DOUBLE com, BSTR oper, BSTR epz, BSTR plat, BSTR avtor, BSTR rrn)

Дисплей здатна використовуватися для показу:

== start ==
'''Призначення:''' функція виконує оплату чека з можливістю передати RRN-код транзакції. Значення

</div>

Імя обєкта для створення у клієнтській програмі:
! Модель реєстратора

Емулятор дає можливість тестувати інтеграційні сценарії K2 ERP з фіскальним контуром без фізичного РРО: відкриття чека, продаж, повернення, оплати, звіти, помилки, друк і дисплей покупця. Для службового внесення або вилучення грошей достатньо виконати функцію [[#printRecCash|printRecCash]]. |-
| [[Файл:ArtSoft_Emulator_Settings_Button.png|22x22px]]
| Кнопка призначена для відкриття форми налаштувань емулятора. # Перевірити роботу АртСофт Універсального драйвера за допомогою тестових прикладів із комплекту драйвера. # Універсальна обробка помилок реєстраторів. '''Призначення:''' функція друкує позицію товару у фіскальному чеку. Передати оплату або повернення

stop

Перевага для K2 ERP

Для детального аналізу помилки застосовується для властивість LastError, яка містить код результату виконання останньої функції. # Відкривається фіскальний чек. веб-сайт: www.artsoft.ua e-mail: soft@artsoft.ua

конкурентні переваги інтеграції з ERP

  1. K2 ERP формує документ продажу або касову операцію. Це спрощує підтримку касового контуру, особливо для мережевих компаній, магазинів, аптек, ресторанів, складів із точками видачі та омніканальних продажів. |-

| CASH | Дійсне число, тільки для читання | Сума готівки у касі. # Передаються товарні позиції. VARIANT_BOOL

товар → продаж → чек → оплата → складський облік → документ → Z-звіт → фінансовий блок → аналітичні інструменти.

  1. Дочекатися завершення останньої функції. За замовчуванням драйвер встановлюється в каталог:
Функція здатна автоматизовано генерувати код товару, програмувати товар у фіскальному реєстраторі та контролювати зміни найменування, ціни, податкової групи й подільності товару.<syntaxhighlight lang="cpp">

VARIANT_BOOL openPort(BSTR SerialPortName, LONG SerialPortBaud)

== Підтримувані моделі фіскальних реєстраторів ==

Для інсталяції драйвера необхідно запустити файл:

{| class="wikitable" style="width:100%;"

'''Призначення:''' функція призначена для початку роботи драйвера фіскальних реєстраторів. # Відкривається COM-порт або TCP/IP-зєднання. Зовнішній вигляд і вміст чека можуть відрізнятися на інших моделях реєстраторів. реліз системи реєстратора

[[Категорія:Фіскальні реєстратори]]

== Створення COM-обєкта у Windows ==
3. Значення

<div style="border:2px solid #e57373; background:#ffebee; padding:14px; border-radius:8px; margin:18px 0;">
  1. Відкрити фіскальний чек викликом функції beginFiscalReceipt із зазначенням типу чека «чек продажу» та імені касира.

! (044) 531-37-23 (067) 537-86-92

Призначення: функція відкриває TCP/IP-з’єднання з фіскальним реєстратором.
[[K2 ERP]] здатна використовувати рішення для бізнесу [[ArtSoft]] як частину касового та фіскального контуру українського бізнесу. Викликати start(PrinterModel)

setA

* товарної позиції;
* суми;
* повідомлень;
* стану операції;
* інформації для покупця. # Перевірити, чи не заблокований реєстратор через ненадсилання даних до податкової інспекції протягом 72 годин. так само =

'''Призначення:''' функція відкриває нефіскальний чек. * ідентифікатор еквайра;
* ідентифікатор платіжного терміналу;
* суму комісії;
* назву операції;
* інформаційні дані електронного платіжного засобу;
* платіжну систему;
* код авторизації;
* RRN транзакції. Перед промисловим запуском інтеграції потрібно перевірити конкретну модель РРО, версію прошивки, параметри підключення, ліцензію драйвера та сценарії продажу/повернення.[[Файл:ArtSoft_Install_Folder_Selection.png|326x266px]]
Після виконання Z-звіту:

'''Призначення:''' функція закриває нефіскальний чек. Імя властивості або функції
[[Файл:ArtSoft_Fiscal_Register_Emulator.png|152x198px|thumb|Емулятор фіскального реєстратора]]
= Типові проблеми без універсального драйвера =
<syntaxhighlight lang="cpp">
|-
| LastError
| Ціле число, тільки для читання
| Універсальний код останньої помилки для всіх реєстраторів. |-
| [[Файл:ArtSoft_Emulator_Random_Errors_Button.png|26x26px]]
| Кнопка призначена для включення режиму створення довільних помилок фіскального реєстратора. # Відкривається COM-порт або TCP/IP-зєднання. 10. 7. Закрити чек endFiscalReceipt

'''Призначення:''' функція друкує знижку або надбавку на весь чек.<syntaxhighlight lang="cpp">
VARIANT_BOOL openCashDrawer()

9. # Відкривається фіскальний чек. # За потреби додати додаткову інформацію до товару: штрихкод, акцизну марку, код УКТЗЕД. # ERP визначає товари, кількість, ціну, податкову групу, знижки та тип оплати. Значення

* [[K2 ERP]] відповідає за обліковий облік, товари, залишки, документи, фінансовий блок, складський облік, CRM, e-commerce та аналітику;
* [[ArtSoft]] забезпечує програмний рівень взаємодії з фіскальними реєстраторами;
* РРО виконує фіскальну частину операції;
* користувач системи функціонує з єдиним бізнес-процесом, а не з розрізненими системами.<syntaxhighlight lang="cpp">

'''Призначення:''' функція відкриває фіскальний чек продажу або повернення. 4. # Універсальність роботи з підтримуваними моделями фіскальних реєстраторів.== Нефіскальний чек ==
[[Категорія:ArtSoft]]
1. # ERP визначає товари, кількість, ціну, податкову групу, знижки й оплату. Щоб змінити шлях встановлення програми або шляхи для ярликів, натисніть '''«Назад»'''. '''Параметри:'''

VARIANT_BOOL printReport(LONG type)
4.

Продаж / повернення товару

Параметр: PrinterModel — ціле число, тип фіскального реєстратора. Призначення </syntaxhighlight>

</syntaxhighlight>

= Див. # Після успішного налагодження і перевірки використовувати драйвер в обліковій програмі.

Додаткова інформаційні матеріали в чеку

Суть драйвера

8. При цьому друк стандартних елементів чека та звітів виконується обраною мовою. Тип штрихкоду VARIANT_BOOL printDuplicateReceipt()

взаємодію з фіскальними реєстраторами України реалізується засобами Зв’язка K2 ERP і ArtSoft демонструє, як українська ERP та українське касове ПЗ можуть працювати разом: K2 ERP керує обліком, складом, документами й фінансами, а ArtSoft.
<syntaxhighlight lang="cpp">
VARIANT_BOOL setB(BSTR b, VARIANT_BOOL print)
</div>

'''Технічна примітка'''<br />

Приклад логіки повернення

Призначення: функція виконує оплату фіскального чека. # Передаються товарні позиції.

openPortEx

[[Категорія:ПРРО]]
{| class="wikitable"

{| class="wikitable mw-collapsible mw-collapsed" style="width:100%;"

<div style="border:2px solid #64b5f6; background:#e3f2fd; padding:14px; border-radius:8px; margin:18px 0;">

= Емулятор фіскального реєстратора =
'''Призначення:''' функція друкує денний звіт без обнулення  X-звіт.== printDuplicateReceipt ==

getTime

Примітки

  1. Викликати функцію start із зазначенням конкретного типу фіскального реєстратора. Для друку періодичних звітів достатньо викликати функцію printPeriodicReport із зазначенням типу звіту та необхідних параметрів. # Простий перехід на будь-яку модель реєстратора, що підтримується. так само здатна бути заборонено встановлення часу, меншого за час останнього Z-звіту. fp = CreateObject("ArtSoft.FiscalPrinter")
  • автоматичний друк фіскальних чеків із ERP;
  • менше ручного дублювання даних;
  • зв’язок чека з документом продажу;
  • зв’язок чека з оплатою;
  • зв’язок продажу зі складом;
  • контроль повернень;
  • контроль касових змін;
  • друк X/Z-звітів із системного контуру;
  • єдина аналітичні інструменти продажів і фіскалізації;
  • простіша технічна підтримка різних моделей РРО. # Перевірити, чи не заблокований реєстратор через роботу понад 24 години без Z-звіту. # Швидке та легке підключення необмеженої кількості реєстраторів до одного ПК. Щоб перервати інсталяцію, натисніть «Скасувати». Потокова модель драйвера: Single-threaded apartments або STA. Універсальний драйвер фіскальних реєстраторів; так само реалізовано але має зручніші розділи. * name — найменування товару;
  • price — ціна одиниці товару;
  • qty — кількість;
  • tax — податкова група;
  • SumDisc — сумова знижка або надбавка;
  • PerDisc — відсоткова знижка або надбавка. Значення

Призначення: функція програмує поточний час у фіскальному реєстраторі. Драйвер не виступає як Singleton-об’єктом. |-

Кнопка призначена для увімкнення друку інформації на принтер.
Емулятор дає можливість:
Україна, 02094 м. # Номер чека, результат операції та помилки повертаються в K2 ERP.</div>
= Ініціалізація =
'''Параметри:'''
!== Типовий сценарій інтеграції з K2 ERP ==

Драйвер підтримує виведення інформації на дисплей покупця, якщо така можливість підтримується моделлю реєстратора або підключеним обладнанням. Емулятор призначений для тестування підключення облікових програм до реєстраторів з використанням цього драйвера без фізичної наявності РРО. Вона зберігає зміст оригінального документа забезпечується через Ця сторінка виступає як покращеною MediaWiki-версією документації програміста до ПЗ «АртСофт. # Запрограмувати необхідні для роботи реєстратора параметри: шапку чека, податкові ставки, типи оплат, операторів та паролі операторів за замовчуванням. За потреби передати номер первинного чека через setR

Параметри можуть містити:

</syntaxhighlight>

Драйвер виступає універсальним програмним посередником між касовою або обліковою програмою та фіскальним реєстратором.
== setU ==

!== printText ==
== X-звіт ==
|-
| 0
| Готівка
|-
| 1
| Кредит
|-
| 2
| Чек
|-
| 3
| Картка
|}

<div style="border:2px solid #81c784; background:#f1f8e9; padding:14px; border-radius:8px; margin:18px 0;">

VARIANT_BOOL endNonFiscal() VARIANT_BOOL start(LONG PrinterModel)

</div>
<syntaxhighlight lang="cpp">
== closePort ==

! # Визначити тип підключення реєстратора: RS-232 або TCP/IP, а так само параметри підключення. При виконанні функції [[#stop|stop]] вікно емулятора закривається. Київ, вул.<syntaxhighlight lang="cpp">

VARIANT_BOOL setTime(BSTR time)

K2 ERP здатна використовувати драйвер ArtSoft як частину касового та фіскального контуру: продажі та реалізація, повернення, фіскальні чеки, X/Z-звіти, службові операції, складські документи, оплати й управлінська аналітичні інструменти можуть бути пов’язані в одному ERP-процесі. Технічна примітка

Підтримувані моделі фіскальних реєстраторів VARIANT_BOOL printRecTotalEx(DOUBLE sum, LONG type, BSTR rrn) 1. АртСофт Універсальний драйвер встановлено в системі і він готовий до використання. Тип оплати

printPeriodicReport

== printRecSubtotalAdjustment ==

Після кожного виклику функції, яка повернула <code>False</code>, потрібно зчитати <code>LastError</code>, <code>LastErrorText</code>, а для детальнішої діагностики  <code>LastErrorEx</code> і <code>LastErrorExText</code>. VARIANT_BOOL beginNonFiscal()

'''Типовий сценарій K2 ERP + ArtSoft FiscalPrinter'''<br />
'''Технічна примітка'''<br />
{| class="wikitable" style="width:100%;"

= Робота з часом =

інтеграційні функції ERP АртСофт Універсального драйвера РРО з ERP-системою дає бізнесу такі конкурентні переваги:

</div>
'''Керівництво програміста "АртСофт - Універсальний драйвер фіскальних реєстраторів для України"'''
'''Призначення:''' функція відкриває послідовний COM-порт для роботи з фіскальним реєстратором. Властивість доступна після успішного підключення до реєстратора. |-
| 0
| Звіт реалізованих товарів
|-
| 1
| Звіт запрограмованих товарів
|-
| 2
| Звіт за знижками
|-
| 3
| Звіт за податковими ставками
|-
| 4
| Звіт за товарними групами
|-
| 5
| Звіт за відділами
|-
| 6
| Звіт за операторами
|-
| 7
| Звіт контрольної стрічки
|}

<syntaxhighlight lang="text">

Для ERP-систем, касових програм, POS-рішень, магазинів, аптек, ресторанів, сервісних компаній та інтернет-магазинів це означає простіший і стабільніший шлях до фіскалізації продажів. # Виконати оплату через [[#printRecTotal|printRecTotal]], [[#printRecTotalEx|printRecTotalEx]] або [[#printRecTotalCard|printRecTotalCard]]. Це дає можливість одночасно використовувати необмежену кількість копій COM-обєкта для одночасної роботи з багатьма реєстраторами, зокрема з використанням багатопоточності.<syntaxhighlight lang="cpp">

* обнулюється оперативна інформаційні матеріали реєстратора;
* підсумки заносяться до фіскальної памяті;
* очищуються запрограмовані товари в реєстраторі;
* очищується база артикулів драйвера. |-
| LOWLEVELDATA
| BSTR-рядок, тільки для читання
| Низькорівневі інформаційні дані від РРО, отримані після виконання функції [[#lowLevelCommand|lowLevelCommand]] або іншої команди РРО. |-
| SmenNum
| Ціле число, тільки для читання
| Номер зміни фіскального реєстратора, тобто номер Z-звіту.<syntaxhighlight lang="text">

<div style="border:2px solid #ffb74d; background:#fff3e0; padding:14px; border-radius:8px; margin:18px 0;">

== printNonFiscalText ==

# Відкрити нефіскальний чек функцією [[#beginNonFiscal|beginNonFiscal]]. # Перевірити наявність касової стрічки у реєстраторі. Щоб продовжити встановлення, виберіть '''«Я приймаю умови угоди»'''. # інформаційні дані використовуються для документів, складу, фінансів і управлінської аналітики. {| class="wikitable"
Універсальний драйвер містить вбудований емулятор фіскального реєстратора.== Підтримуване середовище ==
</div>
<syntaxhighlight lang="cpp">

VARIANT_BOOL closePort()

Виберіть мову встановлення АртСофт Універсального драйвера. !<syntaxhighlight lang="cpp">

<syntaxhighlight lang="text">

Перед впровадженням потрібно перевірити не лише модель РРО, а й версію прошивки. Закрити порт closePort
Для отримання нефіскального чека необхідно:
</div>
'''Параметри:'''
== Основні конкурентні переваги ==
9. |}

<div style="border:2px solid #ffb74d; background:#fff3e0; padding:14px; border-radius:8px; margin:18px 0;">

Перед початком роботи необхідно виконати такі дії: Призначення: функція додає код УКТЗЕД перед друком товарної позиції. Швидкість

  • Type — тип чека:
    • 0 — чек продажу;
    • 1 — чек повернення;
  • cashierName — ім’я касира. |-
Клавіші призначені для прокручування довгих чеків. # Протоколювання роботи драйвера та реєстратора. ! Після завершення встановлення натисніть «Готово». Один інсталяційний файл здатна містити необмежену кількість ліцензій. Призначення: функція друкує звіт фіскального реєстратора. Моделі фіскальних реєстраторів

setTime

Чек повернення

Виведення на дисплей покупця

Призначення: функція друкує копію останнього фіскального чека. Замість роботи з різними протоколами РРО розробник функціонує з єдиним COM-об’єктом ArtSoft.FiscalPrinter. Викликати start(PrinterModel) Результат:

Технічна примітка

Технічна примітка

  • Microsoft Visual C++;
  • Microsoft Visual Basic;
  • Visual FoxPro;
  • Microsoft Visual C#;
  • Microsoft Office з VBA;
  • Visual Basic Script;
  • Delphi;
  • C++ Builder;
  • 1С:компанія-користувач;
  • BAS;
  • інші системи, що підтримують COM. Відкрити чек повернення beginFiscalReceipt(1, "Касир")

setB

Вінстона Черчилля, 16 "Б",

Призначення: функція закриває фіскальний чек після повної оплати. # Викликати stop. Передати товар через printRecItem C:\Program Files\ArtSoft\FiscalPrinter\Samples\Delphi7\clientDelphi.exe

7.== Ініціалізація роботи == VARIANT_BOOL printRecItem(BSTR name, DOUBLE price, DOUBLE qty, LONG tax, DOUBLE SumDisc, DOUBLE PerDisc)

|-
| [[Файл:ArtSoft_Emulator_Display_Button.png|29x29px]]
| Кнопка призначена для увімкнення емулятора дисплея покупця. Можливе використання коліщатка мишки або клавіш керування курсором. # Перевірити підключення зовнішнього дисплея реєстратора, якщо він не вбудований. # Виконується <code>start</code> з потрібною моделлю РРО. VARIANT_BOOL printRecSubtotalAdjustment(DOUBLE SumDis, DOUBLE PerDis)
Порядок роботи з емулятором на 100% відповідає порядку роботи з реальним реєстратором.[[Категорія:Касове ПЗ]]

VARIANT_BOOL beginFiscalReceipt(LONG Type, BSTR cashierName)

* тестувати касові сценарії без фізичного реєстратора;
* друкувати чеки на стандартні принтери операційної системи;
* перевіряти виведення на дисплей покупця;
* тестувати поведінку програми у випадку помилок;
* налагоджувати інтеграцію до підключення реального обладнання. '''Призначення:''' функція читає поточний час фіскального реєстратора у форматі <code>ГГХХСС</code>.[[Категорія:ПЗ для бізнесу]]
<syntaxhighlight lang="cpp">

[[Категорія:Універсальний драйвер реєстраторів]]

== printZReport ==

* <code>SerialPortName</code>  імя COM-порту, як приклад <code>COM1</code>;
* <code>SerialPortBaud</code>  швидкість підключення. Драйвер дає можливість розробникам використовувати високорівневі команди керування реєстратором, позбавляючи їх складної низькорівневої роботи з реалізації протоколу взаємодії РРО та персонального компютера. Відкрити порт
VARIANT_BOOL printNonFiscalText(BSTR text)
Драйвер підтримує широкий перелік фіскальних реєстраторів, зокрема пристрої родин:
[[Категорія:Автоматизація торгівлі]]
</div>
8. Відкрити порт openPort або openPortEx
== setR ==

= Друк звітів =

Інші виклики функцій відповідають чеку продажу. ArtSoftUniversalDriver.exe
== Чек продажу ==

'''Перевага для інтеграції з K2 ERP'''<br />

Для успішного друку чека повернення в реєстраторі повинна бути достатня сума готівкових коштів.== printXReport ==

[[Файл:ArtSoft_Emulator_Settings_Window.png|217x333px]]

'''АртСофт "Універсальний драйвер реєстраторів"'''  драйвер, призначений для обміну даними з реєстраторами розрахункових операцій ([[РРО]]) з одного боку та з обліковими або касовими програмами з іншого. Захист полягає у привязці драйвера до заводського номера фіскального реєстратора та моделі фіскального реєстратора.</div>
# Закрити фіскальний чек функцією endFiscalReceipt. VARIANT_BOOL printBarCode(BSTR text, LONG type) Основне задача драйвера — надати простий і зручний механізм для керування фіскальними реєстраторами.
== printReport ==
'''Призначення:''' функція додає акцизну марку перед друком товарної позиції. # Інтеграційний компонент створює COM-обєкт <code>ArtSoft.FiscalPrinter</code>. # Передається оплата. Містить код із розширеної таблиці кодів або нуль у разі успішного виконання. У промисловій інтеграції потрібно чітко визначити, хто і коли має право виконувати Z-звіт, як ця дія фіксується в [[K2 ERP]], та як вона впливає на касову зміну, продажі та реалізація, повернення й фінансову аналітику. * [[Марія]];
* [[Datecs]];
* [[Екселліо]];
* [[КСТ]];
* [[ІКС]];
* [[MG]];
* [[FR90]];
* [[MINI-ФП]];
* [[MINI-Т]];
* [[Вікінг]];
* [[LeoCAS]]. # Передається оплата. # Друкувати необхідну кількість коментарів функцією [[#printNonFiscalText|printNonFiscalText]]. = Посилання =
<references/>

VARIANT_BOOL printRecVoid()

Фіскальний чек продажу та повернення

Завершення роботи

2. Призначення: функція друкує періодичний звіт за заданими параметрами. VARIANT_BOOL printRecCash(DOUBLE Sum)