обычная печать на принтере

Mini web-сервер для печати чеков на фискальных регистраторах из мобильных приложений через HTTP запрос JSON.
ker9
Сообщения: 12
Зарегистрирован: 10 ноя 2016, 17:20

обычная печать на принтере

Сообщение ker9 » 10 ноя 2016, 17:22

программа позволяет подключать обычные принтеры

но есть ли возможность печатать не чек, а произвольный текст (всмысле вообще не имеющий отношения к чекам), например pdf ?

Audim
Администратор
Сообщения: 1673
Зарегистрирован: 17 мар 2015, 18:36

Re: обычная печать на принтере

Сообщение Audim » 14 ноя 2016, 14:35

Нет, только текст.

Spike
Сообщения: 27
Зарегистрирован: 13 мар 2017, 13:49

Re: обычная печать на принтере

Сообщение Spike » 13 мар 2017, 14:03

Какие функции использовать при печати на обычном принтере ? К файле unittest.js есть функция PrintDocument(NumDevice, IsBarCode) но при попытки вызвать ее из консоли браузера PrintDocument(1, false) выдает "undefined"
{
"ListUnit": [
{
"NumDevice": 1,
"IdDevice": "baf96e00-17ab-4d41-acc4-3cecf488cc02",
"OnOff": true,
"Active": true,
"TypeDevice": "Принтер чеков",
"IdTypeDevice": "PinterWin",
"IP": "",
"NameDevice": "HP LaserJet Pro MFP M521 PCL6 Class Driver",
"KktNumber": "<Не определено>",
"INN": "<Не определено>",
"TaxVariant": "",
"AddDate": "2017-03-13T10:18:43.5601903+03:00",
"OFD_Error": "",
"OFD_NumErrorDoc": 0,
"OFD_DateErrorDoc": "0001-01-01T00:00:00",
"FN_DateEnd": "0001-01-01T00:00:00",
"FN_MemOverflowl": false,
"FN_IsFiscal": false,
"PaperOver": false
}
],
"Command": "List",
"Error": "",
"Status": 0,
"IdCommand": ""
}

Audim
Администратор
Сообщения: 1673
Зарегистрирован: 17 мар 2015, 18:36

Re: обычная печать на принтере

Сообщение Audim » 13 мар 2017, 15:07

Вы говорите про команду "PrintDocument" а JSON - ответ на команду "List"
????

Приведите JSON который отсылаете и который возвращается.

Spike
Сообщения: 27
Зарегистрирован: 13 мар 2017, 13:49

Re: обычная печать на принтере

Сообщение Spike » 02 апр 2017, 17:50

Отсылаю

Код: Выделить всё

		[
			'Command'=>"PrintDocument",
			'NumDevice'=>2,
		]
Получаю

Код: Выделить всё

Array
(
    [Command] => 
    [Error] => Message: Неопознанная команда PrintDocument
   в KkmFactory.UnitManager.AddCommand(DataCommand DataCommand, String TypeSunc, String TextCommand, String KeyCallback)
   в KkmFactory.FileHandler. .()
    [Status] => 0
    [IdCommand] => 
)

Audim
Администратор
Сообщения: 1673
Зарегистрирован: 17 мар 2015, 18:36

Re: обычная печать на принтере

Сообщение Audim » 02 апр 2017, 21:21

Код: Выделить всё

[
         'Command'=>"PrintDocument",
         'NumDevice'=>2,
]
Массив?
Надо так:

Код: Выделить всё

{
         Command'=>"PrintDocument",
         'NumDevice'=>2,
         ....
}

Spike
Сообщения: 27
Зарегистрирован: 13 мар 2017, 13:49

Re: обычная печать на принтере

Сообщение Spike » 02 апр 2017, 23:14

Само собой массив. Ответ как бы говорит, что сервер не знает команду "PrintDocument" Сервер KkmServer 2.0.16.12

Spike
Сообщения: 27
Зарегистрирован: 13 мар 2017, 13:49

Re: обычная печать на принтере

Сообщение Spike » 02 апр 2017, 23:58

Скачал последний kkmServer, в нем уже есть такая команда, и даже печатает. Но печатает иероглифы. Пока разбираюсь, может у меня где косяк.

Audim
Администратор
Сообщения: 1673
Зарегистрирован: 17 мар 2015, 18:36

Re: обычная печать на принтере

Сообщение Audim » 03 апр 2017, 00:16

В сервере в настройках принтера есть выбор кодировки...

Spike
Сообщения: 27
Зарегистрирован: 13 мар 2017, 13:49

Re: обычная печать на принтере

Сообщение Spike » 03 апр 2017, 00:37

С кодировкой разобрался. Осталась одна проблема. Не печатается QR код.
Массив запроса.

Код: Выделить всё

Array
(
    [Command] => PrintDocument
    [NumDevice] => 2
    [CheckStrings] => Array
        (
            [0] => Array
                (
                    [PrintText] => Array
                        (
                            [Text] => Пример №1 печати поля:<#16#>154,41
                        )

                )

            [1] => Array
                (
                    [BarCode] => Array
                        (
                            [BarcodeType] => QR
                            [Barcode] => 12345DFG Proba pera, Print barcode 1234567890
                        )

                )

        )

)

Ответить