RU2575420C2 - Method of controlling control system and control system itself - Google Patents

Method of controlling control system and control system itself Download PDF

Info

Publication number
RU2575420C2
RU2575420C2 RU2014101597/08A RU2014101597A RU2575420C2 RU 2575420 C2 RU2575420 C2 RU 2575420C2 RU 2014101597/08 A RU2014101597/08 A RU 2014101597/08A RU 2014101597 A RU2014101597 A RU 2014101597A RU 2575420 C2 RU2575420 C2 RU 2575420C2
Authority
RU
Russia
Prior art keywords
control
application
printer
data
request
Prior art date
Application number
RU2014101597/08A
Other languages
Russian (ru)
Other versions
RU2014101597A (en
Inventor
Кадзухиро ТАКАСУ
Коитиро ЦУЦУМИ
Сигео ИКЕДА
Original Assignee
Сейко Эпсон Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2013016056A external-priority patent/JP6060708B2/en
Application filed by Сейко Эпсон Корпорейшн filed Critical Сейко Эпсон Корпорейшн
Publication of RU2014101597A publication Critical patent/RU2014101597A/en
Application granted granted Critical
Publication of RU2575420C2 publication Critical patent/RU2575420C2/en

Links

Images

Abstract

FIELD: physics, control.
SUBSTANCE: invention relates to device control means. The method includes sending a request from an application to a printer to instantiate a device control object for controlling a device with assigned identification information specified by the application; instantiating the device control object on the printer and based on the request from the application to instantiate the device control object; establishing device control on the printer through the device control object; establishing device control by the application through the printer on a terminal based on the identification information.
EFFECT: establishing device control by an application through a printer on a terminal.
16 cl, 13 dwg

Description

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕFIELD OF THE INVENTION

Настоящее изобретение относится к способу управления системы управления, включающей в себя управляющее устройство, к которому подсоединено некое устройство, а также терминал, осуществляющий связь с указанным управляющим устройством.The present invention relates to a control method for a control system including a control device to which a device is connected, as well as a terminal communicating with said control device.

УРОВЕНЬ ТЕХНИКИBACKGROUND

Из уровня техники известна система управления (POS система), которая имеет POS терминал и POS контроллер, подсоединенные к указанному POS терминалу, и выполняет операции, в том числе запись изображений, совместно с POS терминалом и POS контроллером. См., например, JP-A-H05-73769. К POS терминалу в системах управления указанного типа обычно подсоединены такие устройства, как сканер штрихкода и считыватель карт.The prior art control system (POS system), which has a POS terminal and a POS controller connected to the specified POS terminal, and performs operations, including recording images, together with the POS terminal and POS controller. See, for example, JP-A-H05-73769. Typically connected devices such as a barcode scanner and card reader are connected to the POS terminal in control systems of this type.

Система управления, раскрытая в JP-A-H05-73769, предусматривает использование управляющих устройств, подсоединенных к POS терминалу, который функционирует в качестве управляющего устройства, посредством приложения, которое выполняет программу браузера POS контроллера, выполняющего функцию терминального устройства. Для такой реализации требуется соответствующее управление подсоединенным устройством посредством приложения, выполняющего функции браузера.The control system disclosed in JP-A-H05-73769 involves the use of control devices connected to a POS terminal that functions as a control device through an application that executes a browser program of a POS controller that acts as a terminal device. Such an implementation requires appropriate control of the connected device through an application that acts as a browser.

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

Способ управления системы управления, содержащей терминал, сконфигурированный для выполнения приложения в браузере, устройство, сконфигурированное для посылки и приема данных, и контроллер, подсоединенный к упомянутому устройству, согласно настоящему изобретению содержит:A control method of a control system comprising a terminal configured to run an application in a browser, a device configured to send and receive data, and a controller connected to said device according to the present invention comprises:

передачу запроса на управление устройством от приложения на контроллер;transmitting a device control request from an application to a controller;

выполнение контроллером установки управления устройством на контроллере после приема контроллером упомянутого запроса;execution by the controller of the apparatus control unit on the controller after the controller receives said request;

выполнение приложением установки управления устройством на терминале после выполнения контроллером установки управления устройством.the application executing the device control installation on the terminal after the controller performs the device control installation.

В описании изобретения при установке устройства управляющим устройством устанавливается состояние, в котором может быть инициировано выполнение упомянутым устройством процесса на основе запроса от терминала.In the description of the invention, when the device is installed by the control device, a state is established in which the process can be initiated by the said device based on a request from the terminal.

В описании изобретения установка контроллером управления устройством также включает в себя установку состояния, в котором возможна посылка и прием данных между упомянутым устройством и терминалом.In the description of the invention, the installation by the controller of the device control also includes setting a state in which it is possible to send and receive data between said device and the terminal.

В описании изобретения установка управления устройством управляющим устройством также включает в себя инстанцирование управляющего объекта, сконфигурированного для обработки управляющим устройством обмена данными с упомянутым устройством.In the description of the invention, the device control installation by the control device also includes instantiating a control object configured for processing by the control device of data exchange with said device.

Согласно другому аспекту установка управления устройством приложением через управляющее устройство состоит в инстанцировании на терминале интерфейсного объекта, сконфигурированного для осуществления связи с управляющим объектом.According to another aspect, the installation of device control by the application through the control device consists in instantiating at the terminal an interface object configured to communicate with the control object.

Согласно еще одному аспекту упомянутое устройство представляет собой принтер, сконфигурированный для печати; приложение передает запрос на управление принтером; контроллер выполняет установку управления принтером на основе полученного запроса на управление принтером; и после выполнения контроллером установки управления принтером приложение выполняет установку управления принтером через контроллер.According to another aspect, said apparatus is a printer configured for printing; The application sends a request to manage the printer. the controller performs a printer control installation based on the received printer control request; and after the controller performs the printer management installation, the application performs the printer management installation through the controller.

Получить более полное представление об изобретении и оценить другие его цели и преимущества можно обратившись к нижеследующему описанию и формуле изобретения, которые следует рассматривать вместе с сопроводительными чертежами.You can get a more complete picture of the invention and evaluate its other objectives and advantages by referring to the following description and claims, which should be considered together with the accompanying drawings.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

Фиг. 1 - блок-схема, показывающая конфигурацию POS системы согласно предпочтительному варианту настоящего изобретения;FIG. 1 is a block diagram showing a configuration of a POS system according to a preferred embodiment of the present invention;

фиг. 2 - блок-схема, показывающая функциональную конфигурацию устройств в POS системе;FIG. 2 is a block diagram showing a functional configuration of devices in a POS system;

фиг. 3 - функциональная блок-схема блока выполнения программы браузера и блока управления устройством;FIG. 3 is a functional block diagram of a browser program execution unit and a device control unit;

фиг. 4 - блок-схема инстанцирования управляющих и интерфейсных устройств;FIG. 4 is a block diagram of the instantiation of control and interface devices;

фиг. 5 - блок-схема удаления управляющих и интерфейсных объектов;FIG. 5 is a block diagram of the removal of control and interface objects;

фиг. 6 - пример пользовательского интерфейса;FIG. 6 is an example of a user interface;

фиг. 7 - блок-схема схема процесса, выполняемого после считывания штрихкода сканером штрихкода;FIG. 7 is a flowchart of a process performed after reading a barcode by a barcode scanner;

фиг. 8 - блок-схема печати, выполняемой блоком принтера;FIG. 8 is a flowchart of printing performed by a printer unit;

фиг. 9 - блок-схема, показывающая функционирование планшетного и управляющего устройства;FIG. 9 is a flowchart showing the operation of a tablet and a control device;

фиг. 10 - блок-схема, показывающая функционирование планшетного и управляющего устройства.FIG. 10 is a flowchart showing the operation of a tablet and a control device.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯDESCRIPTION OF EMBODIMENTS OF THE INVENTION

Далее со ссылками на сопроводительные чертежи описывается предпочтительный вариант настоящего изобретения.Next, with reference to the accompanying drawings, a preferred embodiment of the present invention is described.

На фиг. 1 представлена блок-схема, схематически показывающая конфигурацию POS (точка продаж) системы 1 (системы управления) согласно предпочтительному варианту настоящего изобретения. На фиг. 2 представлена блок-схема, показывающая функциональную конфигурацию планшетного устройства 10 (терминал), управляющего устройства (контроллера) 11 и POS сервера 17 в POS системе 1.In FIG. 1 is a block diagram schematically showing a configuration of a POS (point of sale) system 1 (control system) according to a preferred embodiment of the present invention. In FIG. 2 is a block diagram showing a functional configuration of a tablet device 10 (terminal), a control device (controller) 11, and a POS server 17 in the POS system 1.

POS система 1 является системой, используемой, например, при розничной торговле в торговом центре, универсальном магазине или в магазине шаговой доступности, на предприятиях общественного питания, таких как ресторан, кафе или бар, а также на предприятиях других типов. Функции POS системы 1 включают в себя, например, организацию и управление продажами продуктов, переучетом продуктов, изучение тенденций продаж, обработку транзакций продаж в кассовых терминалах L в магазине в соответствии с продуктами, приобретенными потребителями, распечатку чеков на основе платежей, полученных от покупателей, и предоставление покупателям информации, связанной с соответствующими транзакциями.POS system 1 is a system used, for example, in retail at a shopping center, department store or convenience store, at catering establishments such as a restaurant, cafe or bar, as well as at other types of enterprises. The functions of POS system 1 include, for example, organizing and managing product sales, product counting, studying sales trends, processing sales transactions at L cash registers in the store according to products purchased by consumers, printing receipts based on payments received from customers, and providing buyers with information related to relevant transactions.

Кассовые терминалы L, где выполняется обработка транзакций продаж, расположены в магазине, где используется POS система. На каждом кассовом терминале L установлены одно управляющее устройство 11 и планшетное устройство 10, обеспечивающее беспроводной обмен данными с управляющим устройством 11.Cash registers L, where sales transaction processing is performed, are located in the store where the POS system is used. Each control terminal L has one control device 11 and a tablet device 10, which provides wireless data exchange with the control device 11.

Планшетное устройство 10 представляет планшетный компьютер, и, в частности, в этом варианте, как показано на фиг. 6 и описано ниже, планшетное устройство 10 - это компьютер, имеющий сенсорную панель 30, покрывающую фактически всю переднюю поверхность, обеспечивая возможность ввода команд и данных посредством касания сенсорной панели.The tablet device 10 is a tablet computer, and in particular in this embodiment, as shown in FIG. 6 and described below, the tablet device 10 is a computer having a touch panel 30 that covers virtually the entire front surface, providing the ability to enter commands and data by touching the touch panel.

Планшетное устройство 10 является терминалом, используемым персоналом кассового терминала, отвечающим за транзакции на кассовом терминале L, и как описано ниже, устройство 10 обеспечивает пользовательский интерфейс для персонала кассового терминала при обработке транзакции на кассовом терминале L.The tablet device 10 is a terminal used by the personnel of the cash register terminal responsible for transactions at the cash terminal L, and as described below, the device 10 provides a user interface for the personnel of the cash terminal when processing the transaction at the cash terminal L.

Управляющее устройство 11 функционирует в качестве устройства-контроллера. Как показано на фиг. 2, к управляющему устройству 11 подсоединены такие устройства, как сканер 12 штрихкода (устройство) для считывания штрихкодов на продуктах или упаковке продуктов, денежный ящик для наличных денег, чеков или других платежных инструментов, а также дисплей 14 (устройство) для отображения покупателю данных, относящихся к транзакции.The control device 11 functions as a controller device. As shown in FIG. 2, devices such as a barcode scanner 12 (device) for reading barcodes on products or product packaging, a cash drawer for cash, checks or other payment instruments, as well as a display 14 (device) for displaying data to the buyer, are connected to the control device 11, related to the transaction.

Как показано на фиг. 2, управляющее устройство 11 включает в себя блок 20 управления, блок 21 принтера (принтер, принтерный блок, устройство), блок 22 памяти и коммуникационный модуль 23.As shown in FIG. 2, the control device 11 includes a control unit 20, a printer unit 21 (printer, printer unit, device), a memory unit 22, and a communication module 23.

Блок 20 управления управляет частью управляющих устройств 11 и включает в себя центральный процессор (CPU), оперативное запоминающее устройство (RAM) и другие периферийные схемы. Блок 20 управления также имеет устройство-контроллер 20а, но этот функциональный блок описывается ниже.The control unit 20 controls part of the control devices 11 and includes a central processing unit (CPU), random access memory (RAM) and other peripheral circuits. The control unit 20 also has a controller device 20a, but this function block is described below.

Блок 21 принтера (обрабатывающий блок) включает в себя механизм подачи для подачи бумажной чековой ленты, печатающий механизм, который распечатывает текст и изображения на бумажной чековой ленте, используя термоголовку, а также механизм разрезания бумажной чековой ленты в конкретном месте после печати на бумажной чековой ленте изображения, относящегося к чеку.The printer unit 21 (processing unit) includes a feed mechanism for feeding a paper receipt tape, a printing mechanism that prints text and images on a paper receipt tape using a thermal head, and a mechanism for cutting the paper receipt tape at a specific location after printing on a paper receipt tape Image related to check.

Блок 22 памяти включает в себя электрически стираемое программируемое ПЗУ (EEPROM) или другую энергонезависимую память, где хранятся данные в энергонезависимом режиме с возможностью их перезаписи.The memory unit 22 includes an electrically erasable programmable read-only memory (EEPROM) or other non-volatile memory, where data is stored in non-volatile mode with the possibility of overwriting them.

Коммуникационный модуль 23 включает в себя модуль и схемы, например сетевую карту, соответствующую конкурентному стандарту связи, для обеспечения беспроводной связи с планшетным устройством 10, а также осуществляет беспроводную связь в соответствии с конкретным стандартом связи с планшетным устройством 10, под управлением блока 20 управления.The communication module 23 includes a module and circuits, for example, a network card complying with a competitive communication standard, for providing wireless communication with the tablet device 10, and also carries out wireless communication in accordance with a specific communication standard with the tablet device 10, under the control of the control unit 20.

Планшетное устройство 10 включает в себя блок 25 памяти терминала, блок 26 управления терминалом, коммуникационный модуль 27, блок 29 обнаружения ввода и сенсорную панель 30. Блок 26 управления терминалом включает в себя блок 28 управления дисплеем.The tablet device 10 includes a terminal memory unit 25, a terminal control unit 26, a communication module 27, an input detection unit 29 and a touch panel 30. The terminal control unit 26 includes a display control unit 28.

Блок 25 памяти терминала представляет собой память EEPROM или другую энергонезависимую память, обеспечивающую энергонезависимое хранение данных с возможностью их перезаписи.The terminal memory unit 25 is an EEPROM memory or other non-volatile memory providing non-volatile data storage with the possibility of overwriting them.

Сенсорная панель 30 включает в себя дисплейную панель 30а, расположенную на передней части планшетного устройства 10, и тактильный датчик 30b в интегральном исполнении, расположенный поверх дисплейной панели 30а. Дисплейная панель 30а представляет собой устройство отображения, такое как панель жидкокристаллических диодов (LCD), панель органических жидкокристаллических диодов (OLED) или дисплей на основе электронной бумаги, возбуждение которых осуществляется блоком 28 управления дисплеем. Тактильный датчик 30b представляет собой электростатический датчик или датчик давления, смонтированный на дисплейной панели 30а, который обнаруживает касания пальцами пользователя или касания пером и выводит сигнал, указывающий то место, где было обнаружено касание, в блок 29 обнаружения ввода. Эта сенсорная панель 30 представляет собой дисплейный блок, отображающий браузер.The touch panel 30 includes a display panel 30a located on the front of the tablet device 10, and an integrated tactile sensor 30b located on top of the display panel 30a. The display panel 30a is a display device, such as a liquid crystal diode panel (LCD), an organic liquid crystal diode panel (OLED), or an electronic paper-based display, which are driven by the display control unit 28. The tactile sensor 30b is an electrostatic sensor or a pressure sensor mounted on the display panel 30a, which detects finger touches of the user or touch with a pen and outputs a signal indicating the place where the touch was detected to the input detection unit 29. This touch panel 30 is a display unit displaying a browser.

Блок 28 управления дисплеем отображает экран, содержащий текст или изображения на дисплейной панели 30а, путем возбуждения дисплейной панели 30а на основе данных отображения, вводимых из блока 26а выполнения программы браузера, описанного ниже.The display control unit 28 displays a screen containing text or images on the display panel 30a by driving the display panel 30a based on the display data inputted from the browser program execution unit 26a described below.

Блок 29 обнаружения ввода обнаруживает тактильные операции на сенсорной панели 30 на основе сигналов, выдаваемых тактильным датчиком 30b. При обнаружении тактильной операции блок 29 обнаружения ввода создает координатные данные, содержащие координаты, связывающие место касания с местом отображения на дисплейной панели 30а, и выводит координатные данные в блок 26 управления терминалом.The input detecting unit 29 detects tactile operations on the touch panel 30 based on signals provided by the tactile sensor 30b. When a tactile operation is detected, the input detecting unit 29 creates coordinate data containing coordinates connecting the place of touch with the display location on the display panel 30a and outputs the coordinate data to the terminal control unit 26.

Коммуникационный модуль 27 включает в себя модуль и схемы, такие как сетевая карта, соответствующая конкретному протоколу связи, для обеспечения беспроводной связи с управляющим устройством 11 и POS сервером 17 и осуществляет беспроводную связь на основе конкретного протокола с управляющим устройством 11 и POS сервером 17 под управлением блока 26 управления терминалом.The communication module 27 includes a module and circuits, such as a network card corresponding to a particular communication protocol, for providing wireless communication with the control device 11 and the POS server 17 and performs wireless communication based on a specific protocol with the control device 11 and the POS server 17 terminal control unit 26.

Блок 26 управления терминалом управляет блоками планшетного устройства 10 и включает в себя CPU, ROM, RAM и другие периферийные схемы. Блок 26 управления терминалом также включает в себя блок 26а выполнения программы браузера, который реализует функцию браузера, выполняя программу браузера.The terminal control unit 26 controls the units of the tablet device 10 and includes CPU, ROM, RAM, and other peripheral circuits. The terminal control unit 26 also includes a browser program execution unit 26a that implements the browser function by executing the browser program.

Блок 26а выполнения программы браузера загружает Web-страницу (например, файл HTML), записанную на языке сценариев или языке разметки, таком как HTML, из POS сервера 17, используя функцию Web-браузера. Загруженные данные Web-страницы запоминаются, например, в памяти RAM (не показана). Блок 26а выполнения программы браузера считывает данные загруженной Web-страницы, создает данные отображения для отображения этой Web-страницы и выводит их в блок 29 управления дисплеем. На основе введенных данных отображения блок 28 управления дисплеем отображает изображение Web-страницы, относящейся к данным отображения, на дисплейной панели 30а.The browser program execution unit 26a downloads a Web page (eg, an HTML file) recorded in a scripting language or markup language such as HTML from the POS server 17 using a Web browser function. The downloaded web page data is stored, for example, in RAM memory (not shown). The browser program execution unit 26a reads the data of the loaded Web page, creates display data for displaying this Web page, and outputs them to the display control unit 29. Based on the inputted display data, the display control unit 28 displays an image of the web page related to the display data on the display panel 30a.

Когда блок 29 обнаружения ввода обнаруживает операцию касания тактильного сенсора 30b, блок 26а выполнения программы браузера определяет введенный контент на основе координатных данных, введенных из блока 29 обнаружения ввода в соответствии с операцией касания, и данных отображения, выводимых в блок 28 управления отображением. На основе идентифицированного введенного контента блок 26а выполнения программы браузера выполняет соответствующую обработку, используя, например, функцию сценария, когда это необходимо.When the input detecting unit 29 detects a touch operation of the tactile sensor 30b, the browser program execution unit 26a determines the input content based on the coordinate data input from the input detecting unit 29 in accordance with the touch operation and the display data output to the display control unit 28. Based on the identified input content, the browser program execution unit 26a performs the corresponding processing using, for example, a script function when necessary.

POS сервер 17 включает в себя блок 31 памяти сервера, в котором хранится база данных с информацией, относящейся к продуктам, базу данных для управления продажами и базу данных для управления инвентаризацией, при этом POS сервер 17 управляет POS системой 1, используя указанные базы данных.POS server 17 includes a server memory unit 31 that stores a database with information related to products, a database for sales management and a database for inventory management, while POS server 17 controls POS system 1 using these databases.

POS сервер 17 включает в себя блок 37 управления сервером, блок 31 памяти сервера и коммуникационный модуль 38.The POS server 17 includes a server control unit 37, a server memory unit 31, and a communication module 38.

Блок 37 управления сервером управляет отдельными частями POS сервера 17 и включает в себя CPU, ROM, RAM и другие периферийные схемы. Блок 31 памяти на стороне сервера включает в себя накопитель на жестком диске, память EEPROM или другую энергонезависимую память, обеспечивающую энергонезависимое хранение данных с возможностью их перезаписи.The server control unit 37 controls the individual parts of the POS server 17 and includes CPU, ROM, RAM, and other peripheral circuits. The server-side memory unit 31 includes a hard disk drive, an EEPROM memory, or other non-volatile memory providing non-volatile data storage with the possibility of overwriting them.

Коммуникационный модуль 38 включает в себя модуль и схемы, такие как сетевая карта, соответствующая конкретному стандарту связи, для осуществления беспроводной связи с планшетным устройством 10 и осуществляет беспроводную связь в соответствии со специализированным протоколом связи планшетного устройства 10 под управлением блока 17 управления сервером.The communication module 38 includes a module and circuits, such as a network card corresponding to a particular communication standard, for wireless communication with the tablet device 10 and performs wireless communication in accordance with the specialized communication protocol of the tablet device 10 under the control of the server control unit 17.

POS приложение 35 установлено на POS сервере 17.POS application 35 is installed on the POS server 17.

Блок 26а выполнения программы браузера планшетного устройства 10 выполняет различные операции, используя функцию POS приложения 35 на POS сервере 17.The browser program execution unit 26a of the tablet device 10 performs various operations using the POS function of the application 35 on the POS server 17.

Например, блок 26а выполнения программы браузера подтверждает соответствующим образом запрос на операцию для POS сервера 17, инициирует выполнение POS сервером 17 запрошенной обработки с использованием функции POS приложения 35, получает результат упомянутой обработки и выполняет соответствующую обработку. В частности, блок 26а выполнения программы браузера выводит, например, результат считывания, выполненного сканером 12 штрихкода, на POS сервер 17, осуществляет поиск продукта, используя функцию POS приложения 35, получает результат поиска, а затем управляет процессом отображения информации о продукте на дисплее 14, выдавая команду на управляющее устройство 11. Блок 26а выполнения программы браузера также запрашивает вычисление общей суммы транзакции, вычисляет общую сумму, используя функцию POS приложения 35, и после получения результата вычисления осуществляет управление управляющим устройством 11 для создания чека, на котором распечатывается информация, содержащая упомянутую общую сумму.For example, the browser program execution unit 26a confirms the operation request for the POS server 17 accordingly, initiates the execution by the POS server 17 of the requested processing using the POS function of the application 35, obtains the result of said processing and performs the corresponding processing. In particular, the browser program execution unit 26a outputs, for example, a read result made by the barcode scanner 12 to the POS server 17, searches for the product using the POS function of the application 35, obtains the search result, and then controls the process of displaying product information on the display 14 by issuing a command to the control device 11. The browser program execution unit 26a also requests the calculation of the total transaction amount, calculates the total amount using the POS function of the application 35, and after receiving the calculation result controls the control device 11 to create a check on which information containing the total amount is printed.

Заметим, что фраза «приложение, которое выполняется в браузере» представляет собой POS приложение 35 или другое приложение, установленное блоком 26а выполнения программы браузера на другом устройстве, которое может находиться на связи, и концептуально включает в себя приложения с функциями, которые могут использоваться блоком 26а выполнения программы браузера. Приложение в этом примере может представлять собой приложение, выполняемое на другом устройстве, с которым возможна связь, либо приложение, которое загружается из другого устройства и выполняется на планшетном устройстве 10. Фраза «приложение, которое выполняется в браузере» также включает в себя сценарии, встроенные в Web-страницу (файл HTML), которая считывается блоком 26а выполнения программы браузера, а также программы и другое программное обеспечение с функциями, которые могут быть использованы блоком 26а выполнения программы браузера.Note that the phrase “application that runs in the browser” is a POS application 35 or another application installed by the browser program execution unit 26a on another device that may be in communication, and conceptually includes applications with functions that can be used by the unit 26a the execution of the browser program. The application in this example can be an application running on another device with which communication is possible, or an application that is downloaded from another device and runs on a tablet device 10. The phrase “application that runs in a browser” also includes scripts built-in to a Web page (HTML file) that is read by the browser program execution unit 26a, as well as programs and other software with functions that can be used by the browser program execution unit 26a.

На фиг. 3 представлена функциональная схема блока 26а выполнения программы браузера планшетного устройства 10 (функциональный блок, соответствующий блоку управления терминалами) и контроллер 20а управляющего устройства 11.In FIG. 3 is a functional diagram of a browser program execution unit 26 a of the tablet device 10 (a function block corresponding to the terminal control unit) and a controller 20 a of the control device 11.

Заметим, что для удобства описания блоки, схематически представляющие программы, программные объекты и функции, реализуемые программами, а также блоки, представляющие реальные физические устройства, показаны на фиг. 3 на одном и том же уровне.Note that for convenience of description, blocks schematically representing programs, program objects and functions implemented by programs, as well as blocks representing real physical devices, are shown in FIG. 3 at the same level.

Заметим также, что в этом варианте термин «объект» является элементом объектно-ориентированного программирования и, в частности, означает объект программного обеспечения, определенный данными и набор способов. Однако используемый здесь термин «объект» не ограничивается элементом объектно-ориентированного программирования и может представлять собой любой объект программного обеспечения, способный реализовать некоторую функцию.We also note that in this embodiment the term “object” is an element of object-oriented programming and, in particular, means a software object defined by data and a set of methods. However, the term “object” as used here is not limited to an element of object-oriented programming and can be any software object that can implement some function.

Как показано на фиг. 3, приложение AP выполняется блоком 26а выполнения программы браузера планшетного устройства 10. Как было описано выше, приложение AP концептуально включает в себя приложение, которое, как и POS приложение 35, может выполняться на другом устройстве или может быть загружено из другого устройства, сценарий, воплощенный в файле HTML, который считывается блоком 26а выполнения программы браузера, а также программу или программное обеспечение с функциями, которые могут использоваться блоком 26а выполнения программы браузера.As shown in FIG. 3, the AP application is executed by the browser program execution unit 26a of the tablet device 10. As described above, the AP application conceptually includes an application that, like the POS application 35, can run on another device or can be downloaded from another device, a script, embodied in an HTML file that is read by the browser program execution unit 26a, as well as a program or software with functions that can be used by the browser program execution unit 26a.

В блоке 26а выполнения программы браузера может действовать по меньшей мере одно из следующего: объект 40 интерфейса денежного ящика (интерфейсный объект), объект 41 интерфейса сканера штрихкода (интерфейсный объект), объект 42 интерфейса дисплея (интерфейсный объект) и объект 43 интерфейса принтера (интерфейсный объект), объект 44 централизованного управления и интерфейс 45 WebSocket на стороне браузера. В контроллере 20а устройства может действовать по меньшей мере один и следующих объектов: интерфейс 50 WebSocket на стороне устройства, ретрансляционный объект 51, объект 53 управления денежным ящиком (управляющий объект), объект 54 управления сканером штрихкода (управляющий объект), объект 55 управления дисплеем (управляющий объект) и объект 56 управления принтером (управляющий объект).At least one of the following can act in block 26a of the browser program execution: cash drawer interface object 40 (interface object), barcode scanner interface object 41 (interface object), display interface object 42 (interface object) and printer interface object 43 (interface object), centralized management object 44, and browser-side WebSocket interface 45. At least one of the following objects can act in the device controller 20a: the WebSocket interface 50 on the device side, the relay object 51, the cash drawer control object 53 (control object), the barcode scanner control object 54 (control object), the display control object 55 ( control object) and a printer control object 56 (control object).

Обратимся сначала к фиг. 4, на основе которой описывается процесс создания и функции указанных объектов и программных интерфейсов. На фиг. 4 графически представлен процесс создания объектов блоком 26а выполнения программы браузера и контроллером 20а устройства. В частности, схема последовательности операций на фиг. 4 описывает процесс создания объектов с использованием в качестве примеров объекта 41 интерфейса сканера штрихкода в качестве примера интерфейсного объекта и объекта 54 управления сканером штрихкода в качестве примера управляющего объекта.Turning first to FIG. 4, on the basis of which the creation process and functions of these objects and program interfaces are described. In FIG. 4 graphically illustrates the process of creating objects by the browser program execution unit 26a and the device controller 20a. In particular, the flowchart of FIG. 4 describes a process for creating objects using, as examples, a barcode scanner interface object 41 as an example of an interface object and a barcode scanner control object 54 as an example of a control object.

Заметим, что используемая ниже фраза «приложение AP выполняет» в каком-то смысле означает, что при описании процесса главным образом на основе операции приложения AP процессор CPU (блок 26 управления терминалом, блок 26а выполнения программы браузера), который считывает и выполняет приложение AP, использует функцию приложения AP для выполнения упомянутого процесса. Аналогичным образом, фраза «объект выполняет» в каком-то смысле означает, что при описании процесса главным образом на основе операции объекта процессор CPU (соответствующий блок управления) использует функцию данного объекта для выполнения упомянутого процесса.Note that the phrase “the AP application is running” used below in a sense means that when describing the process mainly based on the operation of the AP application, the CPU is the CPU (terminal control unit 26, browser program execution unit 26a) that reads and executes the AP application , uses the AP application function to perform the process. Similarly, the phrase “an object executes” in a sense means that when describing a process mainly based on an operation of an object, the CPU (corresponding control unit) uses the function of this object to execute the process.

Сначала приложение AP выполняет процесс инстанцирования центрального управляющего объекта (шаг SA1). Процесс инстанцирования центрального управляющего объекта представляет собой процесс, создающий центральный управляющий объект 44. Как более подробно описано ниже, центральный управляющий объект 44 представляет собой объект, содержащий способы, относящиеся к управлению POS системой 1, в том числе способы, относящиеся к установлению тракта связи и процесса прекращения передачи, а также способы, относящиеся к инстанцированию и удалению управляющих объектов и интерфейсных объектов.First, the AP application performs the process of instantiating the central management entity (step SA1). The process of instantiating the central control object is the process of creating the central control object 44. As described in more detail below, the central control object 44 is an object containing methods related to controlling the POS system 1, including methods related to establishing a communication path and the process of terminating the transfer, as well as methods related to the instantiation and removal of control objects and interface objects.

Процесс инстанцирования центрального управляющего объекта на шаге SA1 выполняется, например, изготовителем управляющего устройства 11, применяющего специализированный интерфейс API (интерфейс прикладного программирования) и приложение AP, использующее функцию API.The process of instantiating the central control object in step SA1 is performed, for example, by the manufacturer of the control device 11 using the specialized API (application programming interface) and the AP application using the API function.

Когда центральный управляющий объект 44 инстанцируется процессом на шаге SA1, приложение AP подтверждает запрос на открытую линию связи (запрос связи) для установления коммуникационного соединения на шаге SA2. Запрос на открытую линию связи (запрос связи) представляет собой запрос на установление логической линии связи K1 (WebSocket) (коммуникационное соединение, соответствующее протоколу связи для двунаправленной связи) между планшетным устройством 10 и управляющим устройством 11 и инициирует установление устройствами линии связи, позволяющей получать и принимать данные на основе стандарта WebSocket. Запрос на открытую линию связи (запрос связи) подтверждается Приложением AP, реализующим конкретный способ, воплощенный в центральном управляющем объекте 44.When the central control object 44 is instantiated by the process in step SA1, the AP confirms the open link request (communication request) to establish a communication connection in step SA2. A request for an open communication line (communication request) is a request to establish a logical communication line K1 (WebSocket) (a communication connection corresponding to the communication protocol for bidirectional communication) between the tablet device 10 and the control device 11 and initiates the establishment of a communication line by the devices that allows receiving and Receive data based on the WebSocket standard. The request for an open line of communication (communication request) is confirmed by the AP, which implements a specific method embodied in the Central control object 44.

В ответ на запрос открытой линии связи на шаге SA2 центральный управляющий объект 44 и ретрансляционный объект 51 открывают вместе соединение на основе стандарта WebSocket и устанавливают линию K1 связи между интерфейсом 45 стандарта WebSocket на стороне браузера и интерфейсом 50 стандарта WebSocket на стороне устройства (шаг SA3). Заметим, что интерфейс 45 стандарта WebSocket на стороне браузера и интерфейс 50 стандарта WebSocket на стороне устройства являются функциональными блоками, относящимися к программному интерфейсу, для посылки и приема данных с использованием стандарта WebSocket. Ретрансляционный объект 51 является объектом, выполняемым контроллером 20а устройства, и включает в себя способ, связанный с процессом установления линии K1 связи, и способы, относящиеся к другим процессам, описанным ниже.In response to the open link request in step SA2, the central control object 44 and the relay object 51 open a connection based on the WebSocket standard and establish a communication line K1 between the interface 45 of the WebSocket standard on the browser side and the interface 50 of the standard WebSocket on the device side (step SA3) . Note that the browser-side interface 45 of the WebSocket standard and the device-side interface 50 of the WebSocket standard are function blocks related to the software interface for sending and receiving data using the WebSocket standard. The relay object 51 is an object executed by the device controller 20a, and includes a method associated with the process of establishing a communication link K1, and methods related to other processes described below.

Интерфейс стандарта WebSocket на стороне браузера и центральный управляющий объект 44 функционируют в качестве приемного блока, принимающего данные, к которым добавлена идентификационная информация с выхода управляющего устройства. Интерфейс 50 стандарта WebSocket на стороне устройства и ретрансляционный объект 51 функционируют в качестве второго коммуникационного блока для осуществления связи с терминалом, на котором действует данный браузер, второй коммуникационный блок, который принимает запросы на связь и запросы на управление устройством от терминала, или второй коммуникационный блок, который подсоединен к терминалу, на котором действует данный браузер, и принимает запросы от этого терминала.The browser-side interface of the WebSocket standard and the central control object 44 function as a receiving unit receiving data to which identification information from the output of the control device is added. The device side WebSocket interface 50 and the relay object 51 function as a second communication unit for communicating with a terminal on which the browser is operating, a second communication unit that receives communication requests and device control requests from the terminal, or a second communication unit , which is connected to the terminal on which this browser operates, and receives requests from this terminal.

Когда линия K1 связи установлена, к линии K1 связи с помощью функции центральной управляющего объекта 44 или ретрансляционного объекта 51 добавляется ID линии связи (идентификационная информация о линии связи, идентификационная информация, относящаяся к коммуникационному соединению), который содержит информацию, идентифицирующую линию K1 связи. Присвоенный ID линии связи запоминается в планшетном устройстве 10 в специальной области памяти блока 25 памяти терминала в виде, позволяющем обращаться к нему со стороны приложения AP, а также запоминается в управляющем устройстве 11 в специальной области памяти блока 22 памяти в виде, позволяющем обращение к нему со стороны ретрансляционного объекта 51.When the communication line K1 is established, the communication line ID (identification information of the communication line, identification information related to the communication connection), which contains information identifying the communication line K1, is added to the communication line K1 using the function of the central control object 44 or the relay object 51. The assigned communication line ID is stored in the tablet device 10 in the special memory area of the terminal memory unit 25 in a form that allows access to it from the AP application, and is also stored in the control device 11 in the special memory area of the memory unit 22 in the form that allows access to it from the side of the relay object 51.

Благодаря установлению линии K1 связи планшетное устройство 10 (терминал) и управляющее устройство 11 могут осуществлять связь друг с другом.By establishing a communication line K1, the tablet device 10 (terminal) and the control device 11 can communicate with each other.

Затем приложение AP подтверждает запрос на инстанцирование управляющего объекта сканера штрихкода (запрос на управление устройством) (шаг SA4). Запрос на инстанцирование управляющего объекта сканера штрихкода представляет собой процесс запроса на инстанцирование контроллером 20а устройства управляющего объекта 54 сканера штрихкода. Заметим, что, поскольку инстанцирование управляющего объекта устройства устанавливает состояние, позволяющее осуществлять управление соответствующим устройством (устанавливает управление устройством), как более подробно описано ниже, процесс на шаге SA4 представляет собой процесс управления отработкой запроса.Then, the AP application confirms the request to instantiate the control object of the barcode scanner (device control request) (step SA4). The request to instantiate the control object of the barcode scanner is the process of requesting the instantiation by the controller 20a of the device of the control object 54 of the barcode scanner. Note that, since the instantiation of the control object of the device establishes a state that allows controlling the corresponding device (sets device control), as described in more detail below, the process in step SA4 is a request processing control process.

Идентификационная информация (далее «ID устройства») присваивается каждому устройству, подсоединенному к управляющему устройству 11, в соответствии с типом устройства. В последующем примере в качестве ID устройства для сканера 12 штрихкода присвоен идентификатор «сканер».Identification information (hereinafter “Device ID”) is assigned to each device connected to the control device 11, in accordance with the type of device. In the following example, the identifier “scanner” is assigned as the device ID for the barcode scanner 12.

Для инстанцирования управляющего объекта 54 сканера штрихкода приложение AP задает ID устройства для сканера 12 штрихкода, подлежащего управлению, как будет понятно ниже, ретрансляционный объект 51 инстанцирует соответствующий управляющий объект согласно устройству, подлежащему управлению, с использованием заданного ID устройства в качестве ключа.To instantiate the control object 54 of the barcode scanner, the AP application sets the device ID for the barcode scanner 12 to be controlled, as will be understood below, the relay object 51 instantiates the corresponding control object according to the device to be controlled using the specified device ID as a key.

Управляющие объекты дополнительно описаны ниже.Control objects are further described below.

Управляющий объект представляет собой объект, содержащий способы, относящиеся к управлению устройством, причем управляющий объект управляет конкретным устройством, используя функцию соответствующего обработчика. Например, управляющий объект денежного ящика содержит способ выполнения процесса, относящегося к управлению денежным ящиком 13, и данный объект управляет денежным ящиком 13, используя функцию обработчика 61 денежного ящика.A control object is an object containing methods related to controlling a device, the control object controlling a specific device using the function of the corresponding handler. For example, a cash drawer control object contains a method for executing a process related to cash drawer management 13, and this object controls cash drawer 13 using the function of cash drawer handler 61.

Обработчик представляет собой функцию или стандартную программу, которая выполняет обработку, относящуюся к соответствующему устройству при его запросе. Например, когда сканер 12 штрихкода считывает штрихкод, обработчик 60 сканера штрихкода получает введенный результат считывания штрихкода, выполняет операцию прерывания и подает результат считывания (например, строку цифр) на управляющий объект 54 сканера штрихкода. Другие обработчики (обработчик 41 денежного ящика, обработчик 62 дисплея и обработчик 63 принтера) функционируют аналогичным образом.A handler is a function or a standard program that performs processing related to the corresponding device when it is requested. For example, when a barcode scanner 12 reads a barcode, the barcode scanner handler 60 receives the entered barcode reading result, performs an interrupt operation, and provides the reading result (eg, a string of numbers) to the control object 54 of the barcode scanner. Other processors (cash drawer processor 41, display processor 62, and printer processor 63) function in a similar manner.

Интерфейс 71 устройства и обработчики действуют в качестве коммуникационного блока, который осуществляет связь с устройством, или в качестве первого коммуникационного блока, который осуществляет связь с устройством.The device interface 71 and the processors act as a communication unit that communicates with the device, or as a first communication unit that communicates with the device.

Как было описано выше, управление устройством со стороны управляющего устройства 11 устанавливается путем инстанцирования управляющего объекта.As described above, device control by the control device 11 is established by instantiating the control object.

В соответствии с запросом на инстанцирование управляющего объекта сканера штрихкода от приложения AP центральный управляющий объект 44 посылает запрос на инстанцирование управляющего объекта сканера штрихкода на ретрансляционный объект 51 через линию K1 связи (шаг SA5).In accordance with the request to instantiate the control object of the barcode scanner from the AP application, the central control object 44 sends a request to instantiate the control object of the barcode scanner to the relay object 51 via the communication line K1 (step SA5).

В соответствии с этим запросом ретрансляционный объект 512 инстанцирует управляющий объект (управляющий объект 54 сканера штрихкода в этом примере), соответствующий заданному ID устройства («сканер» ID устройства для сканера 12 штрихкода в этом примере) с использованием, например, «нового» оператора (шаг SA6). Другими словами, контроллер 20а устройства инстанцирует управляющий объект, и инстанцированный управляющий объект выполняется на контроллере 20а устройства.In accordance with this request, the relay object 512 instantiates a control object (the control object of the barcode scanner 54 in this example) corresponding to the specified device ID (“scanner” device ID for the barcode scanner 12 in this example) using, for example, a “new” operator ( step SA6). In other words, the device controller 20a instantiates the control object, and the instantiated control object is executed on the device controller 20a.

На шаге SA6 ретрансляционный объект 51 управляет инстанцированным управляющим объектом 54 сканера штрихкода с использованием ID линии связи, присвоенного на шаге SA3. Это также применимо к инстанцированию других управляющих объектов. Поскольку управляющий объект привязан к конкретному ID линии связи ретрансляционным объектом 51, ретрансляционный объект 51 может знать, какое приложение AP управляет каждым управляющим объектом.In step SA6, the relay object 51 controls the instantiated control object 54 of the barcode scanner using the link ID assigned in step SA3. This also applies to instantiation of other control objects. Since the control object is associated with a particular communication line ID by the relay object 51, the relay object 51 can know which AP application is managing each control object.

Это более подробно описывается далее с использованием в качестве примера конфигурации, в которой два планшета (первый планшет и второй планшет) подсоединены к одному управляющему устройству 11. В этом примере каждый планшет устанавливает линию связи стандарта WebSocket с управляющим устройством 11 и каждому коммуникационному блоку присваивается ID линии связи. Затем первый планшет инстанцирует управляющий объект 54 сканера штрихкода, чтобы приложение AP, выполняющееся на первом планшете, взяло на себя управление сканером 12 штрихкода. В этом примере ретрансляционный объект 51 связывается и осуществляет управление управляющим объектом 54 сканера штрих-кода, используя ID линии связи к первому планшету.This is described in more detail below using, as an example, a configuration in which two tablets (first tablet and second tablet) are connected to one control device 11. In this example, each tablet establishes a WebSocket communication line with control device 11 and an ID is assigned to each communication unit communication lines. Then, the first tablet instantiates the control object 54 of the barcode scanner so that the AP application running on the first tablet takes control of the barcode scanner 12. In this example, the relay object 51 communicates and controls the control object 54 of the barcode scanner using the ID of the communication line to the first tablet.

Затем второй планшет инстанцирует управляющий объект 53, чтобы приложение AP, выполняющееся на втором планшете, взяло на себя управление денежным ящиком 13. В этом примере ретрансляционный объект 51 связывается и осуществляет управление управляющим объектом 52 денежного ящика, используя ID линии связи ко второму планшету.Then, the second tablet instantiates the control object 53 so that the AP application running on the second tablet takes control of the cash drawer 13. In this example, the relay object 51 communicates and controls the cash drawer control 52 using the line ID of the second tablet.

В результате ретрансляционный объект выводит данные, выдаваемые управляющим объектом 54 сканера штрихкода на первый шаблон на основе результата считывания, выполненного сканером 12 штрихкода, через линию связи с соответствующим ID линии связи, который является линией связи, идущей к первому шаблону. Аналогичным образом, когда приложение AP, выполняющееся на втором планшете, управляет денежным ящиком 13, и имеется связь через линию связи со вторым планшетом, передаваемые данные выводятся соответствующим образом на управляющий объект 53 денежного ящика в соответствии с ID линии связи.As a result, the relay object outputs the data output by the control object 54 of the barcode scanner to the first pattern based on the reading made by the barcode scanner 12 through the communication line with the corresponding communication line ID, which is the communication line going to the first template. Similarly, when the AP application running on the second tablet controls the cash drawer 13 and there is communication via a communication line with the second tablet, the transmitted data is output accordingly to the cash drawer control 53 in accordance with the communication line ID.

В результате того, что ретрансляционный объект 51 управляющего управляющими объектами с использованием соответствующего ID линии связи, управляющие объекты не будут передаваться через неисправную линию связи даже в том случае, когда подсоединено множество планшетов и установлено множество линий связи.As a result of the relay object 51 controlling the control objects using the corresponding communication line ID, the control objects will not be transmitted through the faulty communication line even when a plurality of tablets are connected and a plurality of communication lines are established.

По завершении инстанцирования управляющего объекта 54 сканера штрихкода ретрансляционный объект 51 сообщает через линию K1 связи на центральный управляющий объект 14, что инстанцирование объекта завершено (шаг SA7), а центральный управляющий объект 44 пересылает указанный отчет в приложение AP (шаг SA8).Upon completion of the instantiation of the control object 54 of the barcode scanner, the relay object 51 informs via the communication line K1 to the central control object 14 that the instantiation of the object is completed (step SA7), and the central control object 44 sends the indicated report to the AP application (step SA8).

Заметим, что при выполнении процесса инстанцирования управляющего объекта сканера штрихкода на шаге SA4 объявляется обратный вызов, в ходе которого принимают результат обработки, относящейся к инстанцированию управляющего объекта, и в приложение AP направляется сообщение об успешном инстанцировании управляющего объекта 54 сканера штрихкода посредством выполнения функции обратного вызова.Note that during the process of instantiating the control object of the barcode scanner in step SA4, a callback is announced, during which the processing result related to the instantiation of the control object is received, and a message is sent to the AP application about the successful instantiation of the control object 54 of the barcode scanner by performing the callback function .

Затем центральный управляющий объект 44 инстанцирует интерфейсный объект 41 сканера штрихкода, соответствующий управляющему объекту 54 сканера штрихкода, который был инстанцирован (шаг SA9). Далее описываются интерфейсные объекты.Then, the central control object 44 instantiates an interface object 41 of the barcode scanner corresponding to the control object 54 of the barcode scanner that was instantiated (step SA9). The following describes the interface objects.

Интерфейсный объект действует как интерфейс, инициирующий использование приложением AP способов, воплощенных в управляющем объекте, относящемся к соответствующему устройству, когда приложение AP используется для управления устройством. В частности, если при управлении одним устройством приложение AP выдает информацию на интерфейсный объект, соответствующий этому одному устройству, интерфейсный объект связывается с управляющим объектом, соответствующим этому одному устройству, выполняет способ, воплощенный в управляющем объекте, и может осуществлять управление этим одним устройством.The interface object acts as an interface that initiates the use by the AP application of the methods embodied in the control object related to the corresponding device when the AP application is used to control the device. In particular, if, when managing one device, the AP application provides information to the interface object corresponding to this one device, the interface object communicates with the control object corresponding to this one device, performs the method embodied in the control object, and can control this one device.

Путем инстанцирования этого интерфейсного объекта приложение AP может управлять устройством, используя способы управляющего объекта через интерфейсный объект. В частности, установление управления устройством с помощью приложения AP через управляющее устройство 11 выполняется путем инстанцирования интерфейсного объекта в сочетании с инстанцированием управляющего объекта.By instantiating this interface object, the AP application can control the device using the methods of the control object through the interface object. In particular, the establishment of device control using the AP application through the control device 11 is performed by instantiating an interface object in combination with instantiating a control object.

Таким образом, инстанцирование управляющего объекта 54 сканера штрихкода и интерфейсного объекта 41 сканера штрихкода завершается, как это было описано выше. Управляющие объекты и интерфейсные объекты для других устройств инстанцируются путем использования аналогичных шагов.Thus, the instantiation of the control object 54 of the barcode scanner and the interface object 41 of the barcode scanner is completed, as described above. Control objects and interface objects for other devices are instantiated by using similar steps.

Как было описано выше, этот вариант изобретения инстанцирует соответствующий интерфейсный объект при инстанцировании, когда завершено инстанцирование управляющего объекта в управляющем устройстве 11. Таким образом, управляющий объект и интерфейсный объект всегда инстанцируются в паре для любого одного устройства, и для каждого устройства устанавливают состояние, позволяющее осуществлять управление устройством со стороны приложения AP.As described above, this embodiment of the invention instantiates the corresponding interface object during instantiation when the instantiation of the control object in the control device 11 is completed. Thus, the control object and the interface object are always instantiated in pairs for any one device, and a state is set for each device that allows manage the device from the AP application side.

Пара, состоящая из интерфейсного объекта и управляющего объекта, также инстанцируется для каждого устройства, подсоединенного к управляющему устройству 11 в этом варианте осуществления изобретения. В результате благодаря использованию функций интерфейсного объекта, соответствующего одному устройству, при управлении одним любым устройством приложение AP может надежно управлять этим одним устройством и может обмениваться с ним данными.A pair consisting of an interface object and a control object is also instantiated for each device connected to the control device 11 in this embodiment. As a result, by using the functions of the interface object corresponding to one device, while controlling any one device, the AP application can reliably manage this one device and can exchange data with it.

Также упрощается разработка (программирование) приложения AP, поскольку программа, связанная с интерфейсом, относящимся к управлению устройством, необходима только для учета взаимосвязи с интерфейсным объектом каждого устройства. Например, стандартные программы приложения AP, относящиеся к управлению денежным ящиком 13, необходимы лишь для учета ввода и вывода информации (данных) интерфейсным объектом 40 денежного ящика, что существенно упрощает процесс разработки.The development (programming) of the AP application is also simplified, since a program associated with an interface related to device management is necessary only to take into account the relationship with the interface object of each device. For example, standard AP application programs related to cash drawer management 13 are needed only to account for input and output of information (data) by cash drawer interface object 40, which greatly simplifies the development process.

Далее со ссылками на фиг. 5 описывается процесс удаления инстанцированного управляющего объекта и интерфейсного объекта и закрытия установленной линии связи. В примере, показанном на схеме последовательности операций (фиг. 5), описывается удаление управляющего объекта и интерфейсного объекта для сканера 12 штрихкода.Next, with reference to FIG. 5 describes the process of deleting an instantiated control object and an interface object and closing an established communication line. In the example shown in the flowchart (Fig. 5), the removal of the control object and the interface object for the barcode scanner 12 is described.

Сначала приложение AP подтверждает запрос на удаление (запрос на отмену управления устройством) для управляющего объекта 54 сканера штрихкода (шаг SB1). Приложение AP также задает ID сканера 12 штрихкода. Запрос на удаление управляющего объекта выполняется приложением AP, реализующим способ, воплощенный в центральном управляющем объекте 44. В соответствии с запросом на удаление управляющего объекта 54 сканера штрихкода, поступившим из приложения AP, центральный управляющий объект 44 посылает запрос на удаление управляющего объекта 54 сканера штрихкода на ретрансляционный объект 51 через линию K1 связи (шаг SB2).First, the AP application confirms the deletion request (request to cancel control of the device) for the control object 54 of the barcode scanner (step SB1). The AP application also sets the barcode scanner ID 12. The request to delete the control object is executed by the AP application that implements the method embodied in the central control object 44. In accordance with the request to delete the control object 54 of the barcode scanner received from the AP application, the central control object 44 sends a request to delete the control object 54 of the barcode scanner to the relay object 51 via the communication line K1 (step SB2).

В соответствии с этим запросом на удаление ретрансляционный объект 51 удаляет управляющий объект (управляющий объект 54 сканера штрихкода в данном примере), соответствующий заданному ID устройства (ID «сканер» для сканера 12 штрихкода в этом примере), используя, например, оператор удаления (шаг SB3). Благодаря удалению этого управляющего объекта отменяется управление сканером 12 штрихкода со стороны управляющего устройства 11.In accordance with this deletion request, the relay object 51 deletes the control object (the barcode scanner control 54 in this example) corresponding to the specified device ID (scanner ID for the barcode scanner 12 in this example) using, for example, the delete operator (step SB3). Due to the removal of this control object, the control of the barcode scanner 12 from the control device 11 side is canceled.

Таким образом, в этом варианте конкретный управляющий объект может быть удален приложением AP, подтверждающим запрос на управление управляющим объектом, путем удаления управляющего объекта для конкретного устройства, отмены управления конкретным устройством со стороны приложения AP, выполняющегося на одном планшете, что позволяет приложению AP, функционирующему на другом планшете, взять на себя управление указанным конкретным устройством. В результате, когда конкретное устройство больше не используется, приложение AP может освободиться от управления этим устройством путем удаления управляющего объекта для конкретного устройства, в связи с чем может быть предотвращено ненужное пользование устройством.Thus, in this embodiment, the specific control object can be deleted by the AP application confirming the request to control the control object by deleting the control object for a specific device, deactivate the control of a specific device by the AP application running on one tablet, which allows the AP application to function on another tablet, take control of the specified specific device. As a result, when a particular device is no longer in use, the AP application can be freed from controlling that device by removing the control object for a specific device, and therefore unnecessary use of the device can be prevented.

По завершении удаления управляющего объекта 54 сканера штрихкода ретрансляционный объект 51 сообщает центральному управляющему объекту 44 через линию K1 связи, что удаление объекта было завершено (шаг SB4), а затем центральный управляющий объект 44 пересылает это сообщение в приложение AP (шаг SB5).Upon completion of the removal of the control object 54 of the barcode scanner, the relay object 51 informs the central control object 44 via the communication line K1 that the removal of the object has been completed (step SB4), and then the central control object 44 sends this message to the AP application (step SB5).

Заметим, что обратный вызов, принимающий результат обработки, относящейся к удалению управляющего объекта, объявляется на шаге SB1, а об успешном удалении управляющего объекта 54 сканера штрихкода сообщается приложению AP путем выполнения функции обратного вызова.Note that a callback receiving the result of processing related to the deletion of the control object is announced in step SB1, and the successful completion of the deletion of the control object 54 of the barcode scanner is reported to the AP application by performing the callback function.

Затем центральный управляющий объект 44 удаляет интерфейсный объект 41 штрихкода, соответствующий управляющему объекту 54 сканера штрихкода, который был удален (шаг SB6).Then, the central control object 44 deletes the barcode interface object 41 corresponding to the control object 54 of the barcode scanner that has been deleted (step SB6).

Далее приложение AP выдает запрос на прекращение передачи по линии K1 связи на управляющее устройство 11 (запрос на отмену связи) (шаг SB7). Этот запрос выполняется приложением AP, реализующим специализированный способ центрального управляющего объекта 44.Next, the AP application issues a request to terminate the transmission on the communication line K1 to the control device 11 (request to cancel the communication) (step SB7). This request is executed by an AP application that implements a specialized method of the central control object 44.

В соответствии с запросом, подтвержденным на шаге SB7, центральный управляющий объект 44 и ретрансляционный объект 51 перекрывают передачи по линии K1 связи, установленной между интерфейсом 45 стандарта WebSocket на стороне браузера и интерфейсом 50 стандарта WebSocket на стороне устройства в соответствии со стандартом WebSocket (шаг SB8),In accordance with the request confirmed in step SB7, the central control object 44 and the relay object 51 block the transmission on the communication line K1 established between the interface 45 of the WebSocket standard on the browser side and the interface 50 of the standard WebSocket on the device side in accordance with the WebSocket standard (step SB8 ),

Таким образом, инстанцированный управляющий объект и интерфейсный объект могут быть удалены, и может быть отключена установленная линия связи, как это было описано выше.Thus, the instantiated control object and the interface object can be deleted, and the established communication line can be disconnected, as described above.

Таким образом, инстанцированный управляющий объект может быть удален в требуемый момент времени по запросу от приложения AP. В частности, когда отпадает необходимость поддержки управления устройством, приложение AP может быстро удалить управляющий объект, инстанцированный для этого одного устройства, и прекратить управление этим устройством. Таким образом, можно эффективно предотвратить управление объектами, остающимися инстанцированными, когда в этом больше нет необходимости, и предотвратить ситуацию, когда приложение AP другого планшета продолжительное время не в состоянии управлять устройством.In this way, the instantiated control object can be deleted at the required point in time upon request from the AP application. In particular, when there is no need to support device management, the AP application can quickly remove the control object instantiated for that single device and stop managing that device. Thus, it is possible to effectively prevent the management of objects remaining instantiated when this is no longer necessary, and to prevent a situation where the AP application of another tablet is unable to control the device for a long time.

Далее описывается конкретный пример обработки транзакции.The following describes a specific example of transaction processing.

Перед выполнением обработки транзакции планшетное устройство 10 сначала выполняет следующие операции.Before performing transaction processing, the tablet device 10 first performs the following operations.

В частности, оператор контрольно-кассового терминала или служащий, отвечающий за выполнение других задач, запускает браузер планшетного устройства 10 и отображает на сенсорной панели 30 пользовательский интерфейс UI (фиг. 6А). Затем блок 26а выполнения программы браузера в блоке 26 управления терминалом обращается по специальному адресу на POS сервер 17, согласно инструкции получает данные Web-страницы, например файл HTML, и отображает пользовательский интерфейс UI на сенсорной панели 30 на основе полученных данных.In particular, the operator of the cash register terminal or the employee responsible for other tasks launches the browser of the tablet device 10 and displays the user interface UI on the touch panel 30 (Fig. 6A). Then, the browser program execution unit 26a in the terminal control unit 26 contacts the POS server 17 at a special address, receives Web page data, for example, an HTML file, and displays the UI on the touch panel 30 based on the received data.

На фиг. 6А показан пример пользовательского интерфейса UI, отображаемого на сенсорной панели 30.In FIG. 6A shows an example user interface UI displayed on the touch panel 30.

Как показано на фиг. 6А, в пользовательском интерфейсе UI в верхней левой области отображается область 65 списка, где показаны названия продуктов, приобретенных покупателем, цены на продукты и объемы продуктов. Справа рядом с областью 65 списка находится область 66 отображения суммы транзакции, где отображаются суммарная стоимость продуктов, приобретенных покупателем, денежная сумма, полученная от покупателя для данной транзакции, и деньги, причитающиеся покупателю.As shown in FIG. 6A, a list area 65 is displayed in the UI user interface in the upper left pane, showing product names purchased by a customer, product prices, and product volumes. To the right of the list area 65 is the transaction amount display area 66, which displays the total cost of products purchased by the buyer, the amount of money received from the buyer for this transaction, and the money owed to the buyer.

Под областью 65 списка находится поле 67 ввода информации штрихкода, куда вводится и где отображается информация, предоставленная штрихкодом, считываемым сканером 12 штрихкода (далее «информация штрихкода»). Информация штрихкода в основном представляет собой идентификационную информацию, присвоенную уникальным образом каждому типу продукта. Справа от поля 67 ввода информации штрихкода находится виртуальная клавиатура 68. Через эту виртуальную клавиатуру 68 можно ввести информацию в каждое из полей ввода пользовательского интерфейса UI, где виртуальная клавиатура 68 имеет клавиши для ввода информации.Below the list area 65 is a barcode information input field 67 where information provided by a barcode read by a barcode scanner 12 is entered and displayed (hereinafter, “barcode information”). Barcode information is basically identification information that is uniquely assigned to each type of product. To the right of the barcode information input field 67 is a virtual keyboard 68. Through this virtual keyboard 68, information can be entered into each of the input fields of the user interface UI, where the virtual keyboard 68 has keys for entering information.

В верхней части пользовательского интерфейса UI имеется поле 69 адреса, где отображается адрес обращения.At the top of the UI user interface, there is an address field 69 where the access address is displayed.

Далее сначала описывается процесс обработки, пока в поле 67 ввода информации штрихкода пользовательского интерфейса UI отображается информация, выраженная считанным штрихкодом (далее «информация штрихкода»), после того как сканер 12 считал штрихкод.Next, the processing process is first described, while the information expressed by the read barcode (hereinafter referred to as "barcode information") is displayed in the barcode information input field of the user interface UI while the scanner 12 has read the barcode.

На фиг. 7 представлена последовательность операций, описывающая этот процесс.In FIG. 7 is a flowchart describing this process.

Сначала для того, чтобы разрешить приложению AP получить результат считывания штрихкода, приложением AP регистрируется имя обратного вызова для интерфейсного объекта 41 сканера штрихкода (шаг SC1). Имя обратного вызова является идентификационным именем, присваиваемым каждому событию (такому, как считывание штрихкода сканером 12). При вводе в интерфейсный объект данных, привязанных к имени обратного вызова, выполняется конкретная функция обратного вызова, и в приложение AP вводятся указанные данные. В данном примере именем обратного вызова «считывание штрихкода сканером 12 штрихкода» является «ondata».First, in order to allow the AP application to obtain a barcode reading result, the AP application registers a callback name for the barcode scanner interface object 41 (step SC1). The callback name is an identification name assigned to each event (such as reading a barcode by a scanner 12). When data associated with the callback name is entered into the interface object, a specific callback function is performed, and the specified data is entered into the AP application. In this example, the callback name “barcode reader by barcode scanner 12” is “ondata”.

В кассовом терминала L оператор использует сканер 12 штрихкода для считывания штрихкода с продукта, приобретенного покупателем (шаг SX1).In the L terminal, the operator uses a barcode scanner 12 to read a barcode from a product purchased by a customer (step SX1).

Далее результат считывания штрихкода вводится в обработчик 60 сканера штрихкода (шаг SC2). Затем обработчик 60 сканера штрихкода выполняет процесс прерывания и выводит информацию штрихкода, результат считывания, на управляющий объект 54 сканера штрихкода (шаг SC3).Next, the result of reading the barcode is input to the barcode scanner handler 60 (step SC2). Then, the barcode scanner processor 60 performs the interruption process and outputs the barcode information, the reading result, to the control object 54 of the barcode scanner (step SC3).

Затем управляющий объект 54 сканера штрихкода выводит данные, включающие в себя по меньшей мере ID сканера 12 штрихкода (сканера в этом примере), имя обратного вызова (ondata в этом примере) и информацию штрихкода (данные) в конкретном формате на ретрансляционный объект 51 (шаг SC4).Then, the control object 54 of the barcode scanner outputs data including at least the ID of the barcode scanner 12 (scanner in this example), the callback name (ondata in this example) and the barcode information (data) in a specific format to the relay object 51 (step SC4).

Ретрансляционный объект 51 создает ID данных (идентификационную информацию) и добавляет ID данных в заранее определенном формате к информации штрихкода, содержащейся во введенных данных (шаг SC5). ID данных представляет собой идентификационную информацию, присвоенную уникальным образом для идентификации данных, поступающих в приложение AP (информация штрихкода в этом примере). В данном варианте ID данных представляет собой номер, а ретрансляционный объект 51 создает и присваивает ID данных таким образом, что его значение будет тем больше, чем позднее состоялся вывод данных в центральный управляющий объект 44. Например, если ID данных, созданный и присвоенный введенной информации штрихкода и выведенной в центральный управляющий объект, равен 1, то ID данных, созданный и присвоенный следующей введенной информации штрихкода и выведенной в центральный управляющий объект 44, будет равен 2 (или любому другому значению, отличному от 2 и большему 1). Далее описывается, каким образом используется присвоенный ID данных.The relay object 51 creates a data ID (identification information) and adds the data ID in a predetermined format to the barcode information contained in the input data (step SC5). The data ID is identification information uniquely assigned to identify data entering the AP application (barcode information in this example). In this embodiment, the data ID is a number, and the relay object 51 creates and assigns the data ID in such a way that its value is greater the later the data is output to the central control object 44. For example, if the data ID is created and assigned to the entered information barcode and output to the central control object is 1, then the data ID generated and assigned to the next entered barcode information and output to the central control object 44 will be 2 (or any other value, different CB 2 and greater than 1). The following describes how the assigned data ID is used.

Далее ретрансляционный объект 51 запоминает информацию штрихкода (данные) присвоенного ID данных в специальной области памяти в блоке 22 памяти (шаг SC6). В результате в блоке 22 памяти накапливаются данные, относящиеся к устройству того же самого ID данных, выведенного в приложение AP (информация, относящаяся к устройству).Next, the relay object 51 stores the barcode information (data) of the assigned data ID in a special memory area in the memory unit 22 (step SC6). As a result, data related to the device of the same data ID output to the AP application (information related to the device) is accumulated in the memory unit 22.

Затем ретрансляционный объект 51 выводит данные, включающие в себя по меньшей мере ID сканера 12 штрихкода (сканера в этом примере), имя обратного вызова (ondata в этом примере) и информацию штрихкода (данные) с ID данных в конкретном формате в центральный управляющий объект 44 (шаг SC7). Ретрансляционный объект 51 выводит указанные данные через линию K1 связи, идентифицированную ID линии связи, который присвоен управляющему объекту 54 сканера штрихкода.Then, the relay object 51 outputs data including at least the ID of the barcode scanner 12 (scanner in this example), the callback name (ondata in this example), and the barcode information (data) with the data ID in a specific format to the central control object 44 (step SC7). The relay object 51 outputs the indicated data via the communication line K1, identified by the ID of the communication line, which is assigned to the control object 54 of the barcode scanner.

Далее центральный управляющий объект 44 выводит данные в конкретный интерфейсный объект (в этом примере это интерфейсный объект 41 сканера штрихкода), относящийся к ID устройства, содержащемуся во введенных данных (шаг SC8).Next, the central control object 44 outputs the data to a specific interface object (in this example, the interface object 41 of the barcode scanner) related to the device ID contained in the input data (step SC8).

На основе имени обратного вызова (в этом примере это ondata) интерфейсный объект 41 сканера штрихкода выполняет функцию конкретного обратного вызова и выводит информацию штрихкода вместе с ID данных в приложение AP (шаг SC9).Based on the callback name (ondata in this example), the barcode scanner interface object 41 performs the function of a specific callback and outputs the barcode information along with the data ID to the AP application (step SC9).

Приложение AP выполняет процесс отображения на основе введенной информации штрихкода и отображает информацию штрихкода в поле 67 ввода информации штрихкода (шаг SC10). В результате, как показано на фиг. 6B, информация штрихкода отображается в поле 67 информации штрихкода.The AP application performs the display process based on the entered barcode information and displays the barcode information in the barcode information input field 67 (step SC10). As a result, as shown in FIG. 6B, barcode information is displayed in the barcode information field 67.

Затем приложение AP извлекает ID данных из введенной информации штрихкода вместе с присвоенным ID данных и сохраняет ID данных в конкретной области памяти в блоке 25 памяти терминала (шаг SC11). Этот шаг SC11 приводит к тому, что ID данных, введенных в приложение AP, извлекается из данных, выводимых из устройства (в этом примере это информация штрихкода) и аккумулируемых в памяти. Ниже описывается способ использования ID данных, запомненного в блоке 25 памяти терминала.Then, the AP application extracts the data ID from the entered barcode information together with the assigned data ID and stores the data ID in a specific memory area in the terminal memory 25 (step SC11). This step SC11 causes the data ID entered in the AP application to be retrieved from the data output from the device (in this example, barcode information) and accumulated in memory. The following describes a method of using the data ID stored in the terminal memory unit 25.

Далее описываются шаги процесса, посредством которых приложение AP осуществляет управление блоком 21 принтера для создания чека.The following describes the process steps by which the AP application controls the printer unit 21 to create a check.

На фиг. 8 представлена схема последовательности операций, описывающая шаги в этом процессе обработки.In FIG. 8 is a flowchart describing steps in this processing process.

Сначала приложение AP создает изображение, подлежащее распечатке на чеке, с использованием встроенной функции, а затем на основе созданного изображения формирует документ XML (данные), содержащий информацию, относящуюся к чеку, создаваемому блоком 21 принтера (шаг SD1).First, the AP application creates the image to be printed on the receipt using the built-in function, and then, based on the created image, forms an XML document (data) containing information related to the check generated by the printer unit 21 (step SD1).

В документе XML содержится информация для создания чека, такая как текст и изображения, распечатываемые на чеке, в конкретном формате, соответствующем формату XML, и, как описано ниже, блок 80 управления принтером может преобразовать документ XML в управляющую команду в соответствии с языком команд блока 21 принтера.The XML document contains information for creating the check, such as text and images printed on the check, in a specific format corresponding to the XML format, and, as described below, the printer control unit 80 can convert the XML document to a control command in accordance with the block command language 21 printers.

Далее приложение AP выводит данные, включающие в себя по меньшей мере ID блока 21 принтера, информацию, определяющую функции, подлежащие выполнению управляющим объектом 56 принтера, и созданный документ XML, в интерфейсный объект 43 принтера (шаг SD2). В этом примере функция, выполняемая управляющим объектом 56 принтера, представляет собой функцию для выполнения процесса, который обеспечивает вывод документа XML через интерфейс 81 принтера/дисплея в блок 80 управления принтером.Next, the AP application outputs data including at least the ID of the printer unit 21, information defining functions to be performed by the printer control 56, and the generated XML document to the printer interface object 43 (step SD2). In this example, the function performed by the printer control 56 is a function for executing a process that outputs an XML document via the printer / display interface 81 to the printer control unit 80.

Затем интерфейсный объект 43 принтера посылает запрос управляющему объекту 56 принтера на вывод данных, введенных из приложения AP, в центральный управляющий объект 44 (шаг SB3). Центральный управляющий объект 44 выводит данные через линию K1 связи на ретрансляционный объект 44 (шаг SD4), а ретрансляционный объект 51 выводит данные на управляющий объект 56 принтера (шаг SD5).Then, the printer interface object 43 sends a request to the printer control 56 to output data input from the AP application to the central control 44 (step SB3). The central control object 44 outputs the data via the communication line K1 to the relay object 44 (step SD4), and the relay object 51 outputs the data to the printer control object 56 (step SD5).

Управляющий объект 56 принтера выводит файл XML, содержащийся во введенных данных, через интерфейс 81 принтера/дисплея в блок 80 управления принтером путем выполнения функции, заданной во введенных данных (шаг SD6). В это время управляющий объект 56 принтера выводит файл XML в блок 80 управления принтером после форматирования или обработки данных, чтобы дать возможность блоку 80 управления принтером обработать указанные данные.The printer control object 56 outputs the XML file contained in the input data via the printer / display interface 81 to the printer control unit 80 by performing the function specified in the input data (step SD6). At this time, the printer control 56 outputs the XML file to the printer control unit 80 after formatting or processing the data to enable the printer control unit 80 to process the specified data.

Блок 80 управления принтером является функциональным блоком, реализуемым функцией так называемого драйвера принтера, причем блок80 на основе введенного файла XML создает управляющие команды, соответствующие языку команд блока 21 принтера, и выводит их в блок 21 принтера через обработчик 63 принтера (шаг SD7). Затем блок 21 принтера приводит в действие необходимые механизмы для создания чека на основе введенных управляющих команд (шаг SD8).The printer control unit 80 is a functional unit implemented by the function of the so-called printer driver, and the unit 80, on the basis of the inputted XML file, creates control commands corresponding to the command language of the printer unit 21 and outputs them to the printer unit 21 through the printer processor 63 (step SD7). Then, the printer unit 21 drives the necessary mechanisms to create a check based on the entered control commands (step SD8).

Заметим, что отображение данных на дисплее 14 осуществляется посредством последовательности шагов, аналогичных шагам, описанным на фиг. 8.Note that the display of data on the display 14 is carried out by a sequence of steps similar to the steps described in FIG. 8.

В частности, приложение AP выводит данные отображения на управляющий объект 55 отображения через интерфейсный объект 42 отображения. Управляющий объект 55 отображения выводит данные отображения в блок 82 управления отображением через интерфейс 81 принтера/дисплея. Блок 82 управления дисплеем преобразует введенные данные отображения в управляющие команды, соответствующие языку команд дисплея 14, и, используя функцию обработчика 62 дисплея, выводит их на дисплей 14. Затем дисплей 14 представляет данные отображения на основе управляющих команд.In particular, the AP application outputs the display data to the display control object 55 through the interface display object 42. The display control object 55 outputs the display data to the display control unit 82 via the printer / display interface 81. The display control unit 82 converts the entered display data into control commands corresponding to the display command language 14, and, using the function of the display handler 62, displays them on the display 14. Then, the display 14 presents the display data based on the control commands.

Как было описано выше, управление приложением AP и обмен данными между приложением AP и устройством желательно обеспечить для каждого устройства путем обмена между интерфейсным объектом и управляющим объектом, соответствующим целевому устройству.As described above, it is desirable to provide control of the AP application and the exchange of data between the AP application and the device for each device by the exchange between the interface object and the control object corresponding to the target device.

В частности, планшетное устройство 10 и управляющее устройство 11 в этом варианте осуществляют связь согласно стандарту WebSocket. То есть любое устройство может послать данные на другое устройство без необходимости посылки запроса на передачу данных от браузера на планшетном устройстве 10 на управляющее устройство 11, функционирующее как сервер. Другими словами, интерфейсный объект и соответствующий управляющий объект могут осуществлять между собой двунаправленную связь. В результате, как было описано, при использовании блок-схемы на фиг. 7, запускаемой событием на стороне устройства, данные могут равномерно выводиться из устройства через управляющий объект и интерфейсный объект в приложение AP. Вдобавок, как было описано при использовании блок-схемы на фиг. 8, запускаемой на стороне приложения AP, приложение AP может управлять устройством через интерфейсный объект и управляющий объект.In particular, the tablet device 10 and the control device 11 in this embodiment communicate according to the WebSocket standard. That is, any device can send data to another device without having to send a request for data transfer from a browser on the tablet device 10 to a control device 11 that functions as a server. In other words, the interface object and the corresponding control object can carry out bidirectional communication. As a result, as described, using the flowchart of FIG. 7, triggered by an event on the device side, data can be evenly output from the device through the control object and the interface object to the AP application. In addition, as described using the flowchart of FIG. 8, run on the side of the AP application, the AP application can control the device through the interface object and the control object.

Кроме того, как было описано выше, управление конкретным устройством может быть организовано путем инстанцирования управляющего объекта для этого устройства. В частности, инстанцирование управляющего объекта устанавливает состояние, разрешающее ввод данных между устройством и соответствующим управляющим объектом, разрешая тем самым приложению AP осуществлять управление соответствующим устройством для выполнения процесса обработки и разрешая соответствующему устройству выводить данные в приложение AP. Как более подробно описано ниже, управляющий объект может инициировать выполнение устройством конкретного процесса путем вывода данных, выдаваемых приложением AP на данное устройство (или блок управления данного устройства), и может выдать управляющую команду на устройство в соответствии с запросом от приложения AP, чтобы инициировать выполнение устройством конкретного процесса обработки.In addition, as described above, the management of a particular device can be organized by instantiating a control object for that device. In particular, the instantiation of the control object establishes a state that allows data entry between the device and the corresponding control object, thereby allowing the AP application to control the corresponding device to perform the processing process and allowing the corresponding device to output data to the AP application. As described in more detail below, the control object can initiate the execution of a specific process by the device by outputting data issued by the AP application to this device (or the control unit of this device), and can issue a control command to the device in accordance with the request from the AP application to initiate execution device specific processing process.

В частности, как было описано выше, одна из функций (один из способов) управляющего объекта 54 сканера штрихкода представляет собой функцию (способ), согласно которой после считывания штрихкода соответствующим сканером 12 штрихкода получают результат считывания штрихкода посредством процесса прерывания и выводят полученный результат считывания через интерфейсный объект 41 сканера штрихкода в приложение AP. В частности, управляющий объект 54 сканера штрихкода может послать результат считывания штрихкода на планшетное устройство 10, когда соответствующий сканер 12 штрихкода считывает данный штрихкод. Организация управления устройством в этом случае означает установление состояния, в котором результат считывания соответствующим сканером 12 штрихкода может быть послан на планшетное устройство 10. Эти функции запускаются путем инстанцирования управляющего объекта 54 сканера штрихкода.In particular, as described above, one of the functions (one of the methods) of the control object 54 of the barcode scanner is a function (method), according to which, after reading the barcode by the corresponding barcode scanner 12, the result of reading the barcode by means of the interrupt process and outputting the result of reading through barcode scanner interface object 41 to the AP application. In particular, the control object 54 of the barcode scanner can send the result of reading the barcode to the tablet device 10 when the corresponding barcode scanner 12 reads the given barcode. Organization of device control in this case means establishing a state in which the result of reading the corresponding barcode scanner 12 can be sent to the tablet device 10. These functions are triggered by instantiating the control object 54 of the barcode scanner.

Как было описано выше, управляющий объект 56 принтера выводит документ XML, созданный приложением AP, в блок 80 управления принтером после форматирования и преобразования данных для разрешения обработки блоком 80 управления принтером. На основе указанных данных, выводимых в удобном для обработки виде, блок 80 управления принтером создает и выдает управляющую команду и создает чек (печатает чек), используя блок 21 принтера.As described above, the printer control 56 outputs the XML document generated by the AP to the printer control unit 80 after formatting and converting the data to allow processing by the printer control unit 80. Based on the specified data output in a convenient form for processing, the printer control unit 80 creates and issues a control command and creates a check (prints a check) using the printer unit 21.

Управляющий объект 56 принтера также получает данные, выдаваемые блоком 21 принтера (например, данные, идентифицирующие состояние (например, «нет бумаги» или «ошибка») блока 21 принтера) через управляющий блок 80 принтера. Затем управляющий объект 56 принтера выводит полученные данные через интерфейсный объект 43 принтера в приложение AP. Таким образом, организация управления устройством означает здесь создание состояния, в котором данные могут выводиться из планшетного устройства 10 (приложение AP) в соответствующий блок 21 принтера, и состояния, в котором блок принтера может работать под управлением планшетного устройства 10 (приложение AP) для выполнения печати и других процессов обработки. Также это означает установление состояния, в котором возможна посылка данных в соответствующие моменты времени из соответствующего блока 21 принтера на планшетное устройство 10 (приложение AP). Эти функции могут быть обеспечены посредством инстанцирования управляющего объекта 56 принтера.The printer control 56 also receives data provided by the printer unit 21 (for example, data identifying a state (for example, “no paper” or “error”) of the printer unit 21) through the printer control unit 80. Then, the printer control object 56 outputs the received data through the printer interface object 43 to the AP application. Thus, organizing device management means here creating a state in which data can be output from the tablet device 10 (AP application) to the corresponding printer unit 21, and a state in which the printer unit can operate under the control of the tablet device 10 (AP application) to execute printing and other processing processes. It also means establishing a state in which it is possible to send data at appropriate times from the corresponding printer unit 21 to the tablet device 10 (AP application). These functions can be provided by instantiating the printer control 56.

Управление устройством также может быть реализовано управляющим объектом 55 дисплея, подобным управляющему объекту 56 принтера. В частности, инстанцирование управляющего объекта 55 дисплея устанавливает состояние, в котором возможен вывод данных из планшетного устройства 10 (приложение AP) на соответствующий дисплей, и на этом дисплее планшетным устройством 10 (приложение AP) может отображаться соответствующая информация. Инстанцирование управляющего объекта 55 дисплея также устанавливает состояние, в котором дисплей 14 может посылать данные согласно соответствующе временной диаграмме на планшетное устройство 10 (приложение AP).Device control can also be implemented by a display control object 55, similar to a printer control object 56. In particular, the instantiation of the display control 55 sets a state in which it is possible to output data from the tablet device 10 (AP application) to the corresponding display, and the corresponding information can be displayed on this display by the tablet device 10 (AP application). The instantiation of the display control object 55 also sets a state in which the display 14 can send data according to the corresponding timing diagram to the tablet device 10 (AP application).

На основе запроса от приложения AP управляющий объект 53 денежного ящика также создает и выводит в денежный ящик 13 управляющую команду, соответствующую процессу, подлежащему выполнению, и инициирует выполнение денежным ящиком 13 процесса приема денег, процесса выдачи денег, другого процесса. Создание и вывод этой управляющей команды выполняется приложением AP, реализующим конкретный способ. Другими словами, планшетное устройство 10 (приложение AP) может инициировать выполнение денежным ящиком 13 желаемого процесса путем задания способа, встроенного в управляющий объект 53 денежного ящика, через интерфейсный объект 40 денежного ящика.Based on a request from the AP application, the cash drawer control object 53 also creates and outputs to the cash drawer 13 a control command corresponding to the process to be executed, and initiates the execution by the cash drawer 13 of the money receiving process, the process of issuing money, another process. The creation and output of this control command is performed by an AP application that implements a specific method. In other words, the tablet device 10 (AP application) can initiate the execution of the desired process by the cash drawer 13 by defining a method embedded in the cash drawer control object 53 through the cash drawer interface object 40.

После расчета, выполненного денежным ящиком 13, выполняется прием или выдача денежным ящиком 13, управляющий объект 53 денежного ящика получает результат данного процесса с помощью процесса прерывания и выводит полученный результат через интерфейсный объект 40 денежного ящика в приложение AP.After the calculation performed by cash drawer 13, the cash drawer 13 receives or issues cash out, the cash drawer control object 53 receives the result of this process using the interrupt process and outputs the result through the cash drawer interface object 40 to the AP application.

В частности, организация управления устройством в этом примере означает установление состояния, в котором данные могут выводиться из планшетного устройства 10 (приложение AP) в денежный ящик 13, а планшетное устройство 10 (приложение AP) может управлять денежным ящиком 13 для выполнения приема денег и других процессов. Также это означает установление состояния, в котором соответствующий денежный ящик 13 может посылать данные на планшетное устройство 10 (приложение AP) в соответствующий момент времени. Указанные функции обеспечиваются путем инстанцирования управляющего объекта 53 денежного ящика.In particular, organizing device management in this example means establishing a state in which data can be output from tablet device 10 (AP application) to cash drawer 13, and tablet device 10 (AP application) can control cash drawer 13 to receive money and other processes. It also means establishing a state in which the corresponding cash drawer 13 can send data to the tablet device 10 (AP application) at an appropriate point in time. These functions are provided by instantiating the control object 53 of the cash drawer.

Планшетное устройство 10 и управляющее устройство 11 соединены для осуществления беспроводной связи с использованием конкретного стандарта, такого как Ethernet (R), но связь может быть временно отключена (прервана) из-за радиопомех или по другой причине. Даже в случае осуществления связи через проводное соединение связь может временно прерываться из-за отсоединения коммуникационного кабеля, плохого контакта или по другой причине.The tablet device 10 and the control device 11 are connected for wireless communication using a specific standard, such as Ethernet (R), but the connection may be temporarily disconnected (interrupted) due to radio interference or for another reason. Even in the case of communication via a wired connection, communication may be temporarily interrupted due to disconnection of the communication cable, poor contact, or for another reason.

В указанных случаях планшетное устройство 10 и управляющее устройство 11 выполняют обработку, основываясь на существовании управляющего объекта, как это описано ниже.In these cases, the tablet device 10 and the control device 11 perform processing based on the existence of the control object, as described below.

На фиг. 9 представлена блок-схема функционирования планшетного устройства 10 и управляющего устройства 11 при прерывании связи.In FIG. 9 is a block diagram of the operation of the tablet device 10 and the control device 11 when communication is interrupted.

На фиг. 9А показаны шаги процесса функционирования приложения AP, выполняемого на планшетном устройстве 10, а на фиг. 9В показан процесс функционирования ретрансляционного объекта 51, действующего на управляющем устройстве 11.In FIG. 9A shows the steps of an AP application running on a tablet device 10, and FIG. 9B shows the operation of the relay object 51 operating on the control device 11.

Процесс, показанный на блок-схеме по фиг. 9А и фиг. 9В, предполагает, что линия K1 связи между планшетным устройством 10 и управляющим устройством 11 уже установлена и что управляющие объекты для денежного ящика 13, сканера 12 штрихкода, дисплея 14 и блока 21 принтера установлены управляющим устройством 11.The process shown in the flowchart of FIG. 9A and FIG. 9B, it is assumed that a communication line K1 between the tablet device 10 and the control device 11 is already installed and that control objects for the cash drawer 13, the barcode scanner 12, the display 14, and the printer unit 21 are installed by the control device 11.

Как показано на фиг. 9А, приложение AP непрерывно контролирует, не прервалась ли связь (шаг SE1). Заметим, что интерфейс 45 стандарта WebSocket на стороне браузера непрерывно контролирует, не прервалась ли связь, с помощью средства, соответствующего стандарту WebSocket, и при отключении связи интерфейс 45 стандарта WebSocket на стороне браузера сообщает об этом приложению AP.As shown in FIG. 9A, the AP application continuously monitors if the connection is interrupted (step SE1). Note that the browser-side interface 45 of the WebSocket standard continuously monitors whether the connection was interrupted by means of the WebSocket standard, and when the connection is disconnected, the browser-side interface 45 of the WebSocket standard reports this to the AP application.

При отключении связи (шаг SE1 - ДА) приложение AP пытается восстановить соединение, используя функцию центрального управляющего объекта 44, и определяет, была ли эта попытка успешной (шаг SE2). Попытки восстановления соединения продолжаются в течение заранее определенного периода времени.When the connection is disconnected (step SE1 - YES), the AP application tries to reconnect using the function of the central control object 44, and determines whether this attempt was successful (step SE2). Attempts to reconnect continue for a predetermined period of time.

Как показано на фиг. 9В, ретрансляционный объект 51 также непрерывно контролирует, не прервалась ли связь (шаг SF1). Заметим, что интерфейс 50 стандарта WebSocket на стороне устройства непрерывно контролирует, не прервалась ли связь, с помощью средства, соответствующего стандарту WebSocket, и при отключении связи интерфейс 50 стандарта WebSocket на стороне устройства сообщает об этом приложению AP.As shown in FIG. 9B, the relay entity 51 also continuously monitors whether the connection is interrupted (step SF1). Note that the interface 50 of the WebSocket standard on the device side continuously monitors whether the connection was interrupted by means of the standard WebSocket, and when the connection is disconnected, the interface 50 of the WebSocket standard on the device side informs the AP application about this.

При отключении связи (шаг SF1 - ДА), ретрансляционный объект 51 запускает отсчет времени с момента прерывания связи (шаг SF2). Как будет ясно из последующего описания, ретрансляционный объект 51 сконфигурирован для аннулирования управляющего объекта, соответствующего ID линии связи, связанного с прерванной линией связи, когда время, прошедшее с момента прерывания связи, превысит значение T1. Значение времени T1 устанавливается в качестве эталонного значения, позволяющего определить, было ли прерывание связи намеренным прерыванием или непредвиденным отказом.When the connection is disconnected (step SF1 - YES), the relay object 51 starts the countdown from the moment the connection was interrupted (step SF2). As will be clear from the following description, the relay entity 51 is configured to nullify the control entity corresponding to the link ID associated with the interrupted link when the time elapsed since the interruption exceeds the value of T1. The time value T1 is set as a reference value to determine whether the interruption was a deliberate interruption or an unexpected failure.

После запуска отсчета истекшего времени ретрансляционный объект 51 контролирует момент, когда истекшее время достигает значения T1 (шаг SF4) и продолжает проверку, если восстановление соединения оказалось успешным, пока не будет достигнуто значение T1 (шаг SF3).After starting the elapsed time, the relay object 51 monitors the moment when the elapsed time reaches the value T1 (step SF4) and continues to check if the connection was successful until the value T1 is reached (step SF3).

Если значение истекшего времени достигает значения T1 и восстановление соединения оказалось безуспешным (шаг SF4 - ДА), то можно считать, что прерывание связи является намеренным отключением, а не внезапным отказом. Затем ретрансляционный объект 51 удаляет управляющие объекты, соответствующие идентификатору (ID) линии связи, связанному с прерванным соединением (в этом примере это управляющие объекты денежного ящика 13, сканера 12 штрихкода, дисплея 14 и блока 21 принтера) (шаг SF5). Как было описано выше, удаление управляющего объекта приводит к освобождению соответствующего устройства от приложения AP, работающего на другом планшете, и позволяет другому приложению AP инстанцировать новый управляющий объект и осуществлять управление соответствующим устройством.If the elapsed time reaches T1 and the connection is unsuccessful (step SF4 - YES), then we can assume that the interruption is a deliberate disconnection, and not a sudden failure. Then, the relay object 51 deletes the control objects corresponding to the communication line identifier (ID) associated with the interrupted connection (in this example, the control objects of the cash drawer 13, the barcode scanner 12, the display 14, and the printer unit 21) (step SF5). As described above, deleting a control object frees the corresponding device from the AP application running on another tablet and allows another AP application to instantiate a new control object and control the corresponding device.

Если связь между управляющим устройством 11 и планшетным устройством 10 (которое может быть тем же самым терминалом, как перед прерыванием связи, или другим терминалом) вновь установилось после удаления управляющего объекта, контроллер 20а устройства инстанцирует и приводит в действие управляющий объект на основе запроса от планшетного устройства 10 согласно процессу, описанному в связи с фиг. 4. В результате управление устройством можно быстро восстановить даже в том случае, когда повторное соединение оказалось безуспешным в течение заданного времени после прерывания связи, и удаление в этой связи соответствующего управляющего объекта.If the connection between the control device 11 and the tablet device 10 (which may be the same terminal as before the interruption of the connection, or another terminal) is re-established after the removal of the control object, the device controller 20a instantiates and activates the control object based on a request from the tablet device 10 according to the process described in connection with FIG. 4. As a result, control of the device can be quickly restored even if the reconnection was unsuccessful for a given time after the connection was interrupted, and the corresponding control object was deleted in this connection.

Таким образом, в этом варианте определяется, что прерывание связи было намеренным, если отсчитываемое истекшее время достигает значения T1 при безуспешных попытках повторного соединения, и управляющий объект удаляется (высвобождение управляющего объекта). В результате предотвращается необязательное увеличение времени работы другого приложения AP, когда оно не может осуществлять управление устройством.Thus, in this embodiment, it is determined that the interruption was intentional if the counted elapsed time reaches the value T1 upon unsuccessful attempts to reconnect, and the control object is deleted (release of the control object). As a result, an unnecessary increase in the running time of another AP application is prevented when it cannot control the device.

Вновь обратимся к фиг. 9А, где при успешном восстановлении соединения в результате попыток на шаге SE2 (шаг SE2 - ДА) приложение AP посылает ID линии K1 связи, связанной с соединением, которое было прервано, на ретрансляционный объект 51 (шаг SE3). Как было описано, на шаге SA3 по фиг. 4 идентификатор линии связи присваивается вместе с установлением линии K1 связи и запоминается в конкретной области памяти в блоке 25 памяти терминала в формате, позволяющем обращаться к нему со стороны приложения AP.Referring again to FIG. 9A, where upon successful reconnection as a result of the attempts in step SE2 (step SE2 — YES), the AP sends the ID of the communication link K1 associated with the connection that was interrupted to the relay entity 51 (step SE3). As described, in step SA3 of FIG. 4, the communication line identifier is assigned together with the establishment of the communication line K1 and is stored in a specific memory area in the terminal memory unit 25 in a format that allows it to be accessed by the AP application.

Обратимся к фиг. 9В, где, поскольку на шаге SF3 принятия решения получен результат ДА при успешной повторной установке связи, и приложением AP на шаге SE3 посылается ID линии K1 связи, связанной с прерванным соединением, ретрансляционный объект 51 принимает ID линии связи (шаг SF6).Turning to FIG. 9B, where, since in decision step SF3, the result is YES when the communication is successfully re-established, and the application AP in step SE3 sends the ID of the communication line K1 associated with the aborted connection, the relay object 51 receives the communication line ID (step SF6).

После получения ID линии связи ретрансляционный объект 51 определяет, существует ли управляющий объект, соответствующий принятому ID линии связи (шаг SF7). Если управляющий объект не существует (результатом шага SF7 является НЕТ), то ретрансляционный объект 51 завершает процесс обработки.After obtaining the link ID, the relay entity 51 determines whether a control entity exists corresponding to the received link ID (step SF7). If the control object does not exist (the result of step SF7 is NO), then the relay object 51 completes the processing.

Однако если управляющий объект, соответствующий полученному ID линии связи, уже существует (результатом шага SF7 является ДА), то ретрансляционный объект 51 отменяет аннулирование указанных управляющих объектов после момента времени T1 и поддерживает управляющие объекты в инстанцированном состоянии вместо их удаления (управляет инстанцированием управляющих объектов) (шаг SF8). Когда линия связи повторно установлена в границах временного интервала T1 после того, как связь была прервана, согласно данному варианту изобретения определяется, что вероятность того, что прерывание связи было следствием непреднамеренного внезапного отказа высока, и поддерживает управляющий объект, относящийся к ID линии K1 связи, через которую была прервана связь. В результате приложение AP может быстро и эффективно осуществлять управление устройством без инстанцирования нового управляющего объекта для управления данным устройством. Вдобавок, когда одно приложение AP управляет устройством, управление этим устройством невозможно со стороны другого приложения AP (соответствующий управляющий объект не будет удален), и управление устройством не будет подхвачено этим другим приложением AP в случае внезапного отказа связи.However, if a control object corresponding to the received communication line ID already exists (the result of step SF7 is YES), then the relay object 51 cancels the cancellation of the specified control objects after the time T1 and maintains the control objects in an instantiated state instead of deleting them (controls the instantiation of control objects) (step SF8). When the communication line is reestablished within the time interval T1 after the communication has been interrupted, according to this embodiment of the invention, it is determined that the probability of the interruption of the connection due to an unintentional sudden failure is high and supports the control object related to the communication line ID K1, through which the connection was interrupted. As a result, the AP application can quickly and efficiently manage a device without instantiating a new control object to manage that device. In addition, when one AP application controls the device, it is not possible to control this device from another AP application (the corresponding control object will not be deleted), and device management will not be taken over by this other AP application in the event of a sudden communication failure.

После отмены удаления управляющего объекта (управление инстанцированием управляющего объекта) на шаге SF8 приложение AP и ретрансляционный объект 51 действуют вместе для повторной посылки данных (шаг SE4, шаг SF9).After canceling the deletion of the control object (control of instantiation of the control object) in step SF8, the AP application and the relay object 51 act together to resend the data (step SE4, step SF9).

На фиг. 10 представлена блок-схема функционирования приложения AP и ретрансляционного объекта 51 в процессе повторной передачи данных, где на фиг. 10А показан процесс обработки, выполняемой приложением AP, а на фиг. 10В показан процесс обработки, выполняемый ретрансляционным объектом 51.In FIG. 10 is a flowchart of the operation of an AP application and a relay entity 51 in a data retransmission process, where in FIG. 10A shows the processing performed by the AP application, and FIG. 10B shows a processing process performed by the relay entity 51.

Обратимся к фиг. 10А, где из числа идентификаторов данных, запомненных в блоке 25 памяти терминала, приложение AP выводит ID данных, принятых самыми последними, на ретрансляционный объект 51 (шаг SG1). Как было описано со ссылками на шаг SC11 (фиг. 7), ID данных присваивают данным устройства (информации, относящейся к устройству), введенным в приложение AP, и, когда эти данные введены, приложение AP извлекает ID данных из информации штрихкода с введенным ID данных и запоминает ID данных в конкретной области памяти блока 25 памяти терминала.Turning to FIG. 10A, where, among the data identifiers stored in the terminal memory 25, the application AP outputs the data IDs received by the most recent to the relay entity 51 (step SG1). As described with reference to step SC11 (FIG. 7), data IDs are assigned to device data (device information) entered in the AP application, and when this data is entered, the AP application retrieves the data ID from the barcode information with the entered ID data and stores the data ID in a specific memory area of the terminal memory unit 25.

Когда ID данных введен из приложения AP, ретрансляционный объект 51 сравнивает идентификаторы данных с ID данных, аккумулированным в блоке 22 памяти, с ID данных, введенным из приложения AP, и идентифицирует (определяет), являются ли эти данные данными, которые должны были быть выведены в приложение AP, но не были введены в приложение AP из-за внезапного отказа связи (шаг SH1). В частности, идентификаторы данных создают на основе правила, состоящего в том, что значение ID данных должно быть тем больше, чем позднее данные выводятся в приложение AP. На этой основе ретрансляционный объект 51 обладает информацией о том, что данные, имеющие такой же ID, как ID данных, принятый из приложения AP, были выведены успешно. С другой стороны, данные с ID, значение которого превышает значение полученного ID, представляют собой данные, которые не были введены в приложение AP из-за внезапного отказа связи, и эти данные идентифицируются как данные, которые не были введены в приложение AP. В частности, на шаге SH1 ретрансляционный объект 51 идентифицирует ID данных, который не был введен нормальным образом в планшетное устройство 10, путем поиска среди идентификаторов данных, присвоенных данным, посланным на планшетное устройство 10, ID данных, который не хранится в планшетном устройстве 10.When the data ID is entered from the AP application, the relay object 51 compares the data identifiers with the data ID accumulated in the memory unit 22 with the data ID entered from the AP application and identifies (determines) whether this data is data that should have been output to the AP application, but were not introduced to the AP application due to a sudden communication failure (step SH1). In particular, the data identifiers are created based on the rule that the value of the data ID should be the greater the later the data is output to the AP application. On this basis, the relay entity 51 has information that data having the same ID as the data ID received from the AP application has been successfully output. On the other hand, data with an ID whose value exceeds the value of the received ID is data that was not entered into the AP application due to a sudden communication failure, and this data is identified as data that was not entered into the AP application. In particular, in step SH1, the relay object 51 identifies a data ID that was not normally entered into the tablet device 10 by searching among the data identifiers assigned to the data sent to the tablet device 10, a data ID that is not stored in the tablet device 10.

Далее ретрансляционный объект 51 выводит данные, которые не были введены (информация, относящаяся к устройству) в приложение AP (шаг SH2). Приложение AP получает указанные данные и соответствующим образом обрабатывает данные, выдаваемые ретрансляционным объектом 51 (шаг SG2).Next, the relay object 51 outputs data that has not been entered (information related to the device) to the AP application (step SH2). The AP application receives the indicated data and accordingly processes the data issued by the relay entity 51 (step SG2).

Благодаря выполнению указанного процесса повторной передачи данных все данные, которые должны быть выведены в приложение AP, могут быть выведены в приложение AP без потерь даже в том случае, когда имело место кратковременное прерывание связи.By performing the indicated data retransmission process, all data that must be output to the AP application can be output to the AP application without loss even when there has been a brief interruption of communication.

Как было описано выше, POS система 1 (система управления) согласно этому варианту изобретения включает в себя устройство (такое, как сканер 12 штрихкода) и управляющее устройство 11, имеющее коммуникационный блок, осуществляющий связь с устройством благодаря совместной работе интерфейса 71 устройства и обработчика, и контроллер 20а устройства, который инстанцирует управляющий объект для управления данным устройством. POS система 1 также включает в себя планшетное устройство 10 (терминал с сенсорной панелью 30 (дисплейный блок)), который отображает браузер, и блок 26 управления терминалом (блок 26а выполнения программы браузера), который инстанцирует интерфейсный объект, который обменивается информацией, относящейся к устройству, с управляющим объектом и обрабатывает информацию, относящуюся к устройству с помощью приложения AP, которое выполняется в браузере.As described above, the POS system 1 (control system) according to this embodiment of the invention includes a device (such as a barcode scanner 12) and a control device 11 having a communication unit communicating with the device due to the joint operation of the device interface 71 and the processor, and a device controller 20a that instantiates a control object to control the device. The POS system 1 also includes a tablet device 10 (terminal with a touch panel 30 (display unit)) that displays the browser, and a terminal control unit 26 (browser program execution unit 26a) that instantiates an interface object that exchanges information related to device, with a control object, and processes information related to the device using the AP application, which runs in the browser.

Таким образом, приложение AP, выполняющееся в браузере планшетного устройства 10, может получать и обрабатывать информацию, относящуюся к устройству, с помощью управляющего объекта и интерфейсного объекта, позволяя приложению AP, работающему в браузере планшетного устройства 10, осуществлять управление устройством.Thus, the AP application running in the browser of the tablet device 10 can receive and process information related to the device using a control object and an interface object, allowing the AP application running in the browser of the tablet device 10 to control the device.

В рассматриваемом варианте осуществления изобретения к управляющему устройству 11 подсоединено множество устройств. При подсоединении первого устройства (такого, как сканер 12 штрихкода), а затем второго устройства (такого, как денежный ящик 13) контроллер 20а управляющего устройства 11 инстанцирует второй управляющий объект (такой, как управляющий объект 53 денежного ящика), который осуществляет управление вторым устройством. Вдобавок блок 26 управления терминалом (блок 26а выполнения программы браузера) планшетного устройства 10 инстанцирует второй интерфейсный объект (такой, как интерфейсный объект 40 денежного ящика), который обменивается информацией, относящейся ко второму устройству, со вторым управляющим объектом.In this embodiment, a plurality of devices are connected to the control device 11. When a first device (such as a barcode scanner 12) is connected and then a second device (such as a cash drawer 13), the controller 20a of the control device 11 instantiates a second control object (such as a cash drawer control object 53) that controls the second device . In addition, the terminal control unit 26 (browser program execution unit 26a) of the tablet device 10 instantiates a second interface object (such as a cash drawer interface object 40) that exchanges information related to the second device with the second control object.

Таким образом, соответствующий управляющий объект и интерфейсный объект инстанцируются для второго устройства, подсоединенного к управляющему устройству 11. В частности, соответствующий управляющий объект и интерфейсный объект инстанцируются для каждого устройства, подсоединенного к управляющему устройству 11, и, используя функции этих объектов, приложение AP, работающее под управлением браузера планшетного устройства 10, может управлять каждым из устройств.Thus, the corresponding control object and the interface object are instantiated for the second device connected to the control device 11. In particular, the corresponding control object and the interface object are instantiated for each device connected to the control device 11, and using the functions of these objects, the AP application, running the browser of the tablet device 10, can control each of the devices.

Между планшетным устройством 10 и управляющим устройством 11 установлена линия K1 связи на основе стандарта WebSocket, который является стандартом для двунаправленной связи, и управляющий объект и соответствующий интерфейсный объект осуществляют связь в обоих направлениях через линию K1 связи.Between the tablet device 10 and the control device 11, a communication line K1 is established based on the WebSocket standard, which is the standard for bi-directional communication, and the control object and the corresponding interface object communicate in both directions via the communication line K1.

Поскольку в этом варианте осуществления изобретения управляющий объект и соответствующий интерфейсный объект могут осуществлять двунаправленную связь через линию K1 связи, может соответствующим образом выполняться вывод данных из интерфейсного объекта на управляющий объект, запускаемый событием на стороне планшетного устройства 10, и вывод данных из управляющего объекта на интерфейсный объект, запускаемый событием на стороне управляющего устройства.Since in this embodiment of the invention, the control object and the corresponding interface object can carry out bi-directional communication via the communication line K1, data can be output from the interface object to the control object triggered by the event on the side of the tablet device 10 and data can be output from the control object to the interface object triggered by an event on the control device side.

В этом варианте изобретения интерфейсный объект, соответствующий управляющему объекту, инстанцируют после завершения инстанцирования управляющего объекта.In this embodiment of the invention, the interface object corresponding to the control object is instantiated after completion of the instantiation of the control object.

Такая конфигурация означает, что соответствующий интерфейсный объект надежно инстанцируется, когда инстанцирован управляющий объект.This configuration means that the corresponding interface object is reliably instantiated when the control object is instantiated.

В этом варианте блок 21 принтера (блок печати) подсоединен к управляющему устройству 11, а контроллер 20а устройства инстанцирует управляющий объект 56 принтера, который управляет блоком 21 принтера.In this embodiment, the printer unit 21 (print unit) is connected to the control device 11, and the device controller 20a instantiates the printer control object 56, which controls the printer unit 21.

В такой конфигурации приложение AP, выполняющееся в браузере планшетного устройства 10, может получать и обрабатывать информацию, относящуюся к блоку 21 принтера, как целевому устройству, используя функции управляющего объекта и интерфейсного объекта, и приложение AP, выполняющееся в браузере планшетного устройства 10, может выполнить печать.In such a configuration, the AP application running in the browser of the tablet device 10 can receive and process information related to the printer unit 21 as a target device using the functions of the control object and the interface object, and the AP application running in the browser of the tablet device 10 can execute print.

Кроме того, когда приложение AP, выполняющееся в браузере планшетного устройства 10, посылает запрос в управляющее устройство 11 на инстанцирование управляющего объекта для подсоединенного устройства (запрашивает управление устройством), управляющее устройство 11, получившее запрос на инстанцирование управляющего объекта для устройства (запросившего управление), устанавливает управление упомянутым устройством путем инстанцирования управляющего объекта. После установки управляющим устройством 11 управления упомянутым устройством путем инстанцирования управляющего объекта планшетное устройство устанавливает управление устройством с помощью приложения AP через управляющее устройство 11 путем инстанцирования интерфейсного объекта, соответствующего управляющему объекту.In addition, when the AP application running in the browser of the tablet device 10 sends a request to the control device 11 to instantiate a control object for the connected device (requests device control), the control device 11 that receives a request to instantiate a control object for the device (requesting control), establishes control of said device by instantiating a control object. After the control device 11 installs the control of the said device by instantiating the control object, the tablet device establishes device control using the AP application through the control device 11 by instantiating the interface object corresponding to the control object.

Таким образом, управление устройством будет осуществляться приложением AP через управляющее устройство 11 в соответствии с запросом от приложения AP, и обеспечивается возможность управления устройством со стороны приложения AP, выполняющего в браузере планшетного устройства 10.Thus, the device will be controlled by the AP application through the control device 11 in accordance with the request from the AP application, and it is possible to control the device from the side of the AP application running in the browser of the tablet device 10.

В этом варианте управляющее устройство 11, кроме того, устанавливает управление устройством путем инстанцирования управляющего объекта, который управляет данным устройством.In this embodiment, the control device 11, in addition, establishes control of the device by instantiating a control object that controls this device.

Таким образом, управление устройством можно установить путем инстанцирования управляющего объекта.Thus, device control can be established by instantiating a control object.

В этом варианте планшетное устройство 10 также устанавливает управление устройством со стороны приложения AP через управляющее устройство 11 путем инстанцирования интерфейсного объекта, имеющего функцию обмена данными с управляющим объектом.In this embodiment, the tablet device 10 also establishes device control from the AP application side through the control device 11 by instantiating an interface object having a function of exchanging data with the control object.

Такая конфигурация дает возможность установить управление устройством со стороны приложения AP через управляющее устройство 11 посредством инстанцирования управляющего объекта и инстанцирования интерфейсного объекта, который может осуществлять связь с управляющим объектом.This configuration makes it possible to establish device control by the AP application through the control device 11 by instantiating a control object and instantiating an interface object that can communicate with the control object.

POS система 1 (система управления) согласно этому варианту изобретения включает в себя планшетное устройство 10 с сенсорной панелью 30 (дисплейный блок), которая отображает браузер, и блок 26 управления терминалом (блок 26а выполнения программы браузера), который подтверждает запрос связи (запрос на открытие линии связи) для открытия соединения для связи, и запрос на управление устройством, запрашивающий инстанцирование управляющего объекта (запрашивает управление устройством). POS система 1 также имеет управляющее устройство 11, включающее в себя коммуникационный блок, который осуществляет связь с устройством, и контроллер 20а устройства, который устанавливает связь с планшетным устройством 10 на основе запроса связи, посланного из планшетного устройства 10, и устанавливает управление устройством путем инстанцирования управляющего объекта на основе запроса на управление устройством после установки связи с планшетным устройством 10.The POS system 1 (control system) according to this embodiment of the invention includes a tablet device 10 with a touch panel 30 (display unit) that displays the browser, and a terminal control unit 26 (browser program execution unit 26a) that confirms the communication request (request for opening a communication line) to open a connection for communication, and a device control request requesting the instantiation of a control object (requests device control). The POS system 1 also has a control device 11, which includes a communication unit that communicates with the device, and a device controller 20a, which establishes communication with the tablet device 10 based on a communication request sent from the tablet device 10, and establishes device control by instantiation a control object based on a device control request after establishing communication with the tablet device 10.

При такой конфигурации сначала устанавливается связь, а затем устанавливается управление устройством в соответствии с запросом связи от планшетного устройства 10 и запросом на управление устройством, что обеспечивает возможность управления устройством со стороны планшетного устройства 10 с использованием функции браузера.With this configuration, communication is first established and then device control is established in accordance with the communication request from the tablet device 10 and the device control request, which makes it possible to control the device from the side of the tablet device 10 using the browser function.

Блок 26 управления терминалом (блок 26а выполнения программы браузера) планшетного устройства 10 выдает запрос на отмену управления устройством, запрашивающий аннулирование управляющего объекта (запрос отмены управления устройством), и контроллер 20а управляющего устройства 11 аннулирует управляющий объект и отменяет управление устройством на основе запроса на отмену управления устройством.The terminal control unit 26 (browser program execution unit 26a) of the tablet device 10 issues a device control cancellation request requesting the cancellation of the control object (device control cancellation request), and the control device controller 20a 11 cancels the control object and cancels the device control based on the cancellation request device management.

Таким образом, можно снять управление устройством и можно с помощью запроса на отмену управления устройством, поступающего из планшетного устройства 10, предотвратить ситуацию, когда устройство без всякой на то необходимости находится под управлением конкретного терминала.Thus, it is possible to remove control of the device and, using the request to cancel control of the device coming from the tablet device 10, it is possible to prevent the situation when the device is unnecessarily under the control of a specific terminal.

В этом варианте приложение AP планшетного устройства 10 выдает запрос (запрос отмены связи) для отключения линии K1 связи с управляющим устройством 11 и контроллер 20а управляющего устройства 11 аннулирует соединение связи на основе запроса на отмену связи.In this embodiment, the AP application of the tablet device 10 issues a request (disconnect request) to disconnect the communication line K1 to the control device 11, and the controller 20a of the control device 11 terminates the communication connection based on the request to cancel the connection.

Таким образом, установленное соединение для связи может быть соответствующим образом аннулировано по запросу на отмену связи из планшетного устройства 10.Thus, the established connection for communication can be accordingly canceled upon request to cancel the connection from the tablet device 10.

В этом варианте планшетное устройство 10 (приложение AP) также выдает запрос связи, запрашивающей установление соединения для связи, и выдает запрос на управление устройством, запрашивающий инстанцирование управляющего объекта для блока 21 принтера в качестве устройства для управления (запрос управления блоком печати). Контроллер 20а управляющего устройства 11 устанавливает соединение для связи с планшетным устройством 10 на основе запроса связи и на основе запроса на управление устройством инстанцирует управляющий объект 56 принтера и устанавливает управление блоком 21 принтера после того, как установлена связь с планшетным устройством 10.In this embodiment, the tablet device 10 (AP application) also issues a communication request requesting a connection for communication, and issues a device control request requesting the instantiation of a control object for the printer unit 21 as a control device (print unit control request). The controller 20a of the control device 11 establishes a connection for communication with the tablet device 10 based on the communication request and, based on the device control request, instantiates the printer control object 56 and establishes control of the printer unit 21 after communication with the tablet device 10 is established.

Таким образом, устанавливается связь, после чего устанавливается управление блоком 21 принтера как целевого устройства в соответствии с запросом связи и запросом на управление устройством из планшетного устройства 10, а планшетное устройство 10, используя функцию браузера, может выполнить распечатку с помощью блока 21 принтера. Согласно настоящему изобретению управляющее устройство 11 имеет первый коммуникационный блок, который осуществляет связь с устройством благодаря совместной работе интерфейса 71 устройства и обработчика, контроллер 20а устройства, на котором реализуется управляющий объект, осуществляющий управление устройством, и второй коммуникационный блок, который осуществляет связь с планшетным устройством 10 благодаря совместной работе интерфейса 50 стандарта WebSocket на стороне устройства и ретрансляционного объекта 51, и, когда прерывается соединение с планшетным устройством 10, контроллер 20а устройства удаляет управляющий объект по истечении времени ожидания T1.Thus, communication is established, after which the control of the printer unit 21 as the target device is established in accordance with the communication request and the device control request from the tablet device 10, and the tablet device 10, using the browser function, can print using the printer unit 21. According to the present invention, the control device 11 has a first communication unit that communicates with the device due to the joint operation of the device and processor interface 71, a device controller 20a on which a control object that controls the device is implemented, and a second communication unit that communicates with the tablet device 10 due to the collaboration of the WebSocket interface 50 on the device side and the relay object 51, and when the connection is interrupted a tablet device 10, the controller 20a deletes the device managing object timeout T1.

Таким образом, управляющий объект удаляется не сразу при прерывании связи, а вместо этого удаляется по истечении временного интервала T1. В результате при кратковременном непреднамеренном прерывании связи управляющий объект удаляется не сразу и управление устройством со стороны управляющего объекта, который еще не был удален, может быстро возобновиться после восстановления временного прерывания связи. Вдобавок, поскольку управляющий объект удаляется по окончании времени T1 ожидания, он в течение длительного периода времени существует, и, следовательно, можно эффективно предотвратить возникновение ситуации, когда управляющий объект не удаляется и полномочия на управление устройством длительно не выдаются.Thus, the control object is not deleted immediately when the connection is interrupted, but instead deleted after the time interval T1. As a result, during a short-term inadvertent interruption of communication, the control object is not immediately deleted and device management by the control object, which has not yet been deleted, can quickly resume after a temporary communication interruption is restored. In addition, since the control object is deleted at the end of the wait time T1, it exists for a long period of time, and therefore, it is possible to effectively prevent a situation when the control object is not deleted and the authority to control the device is not issued for a long time.

Кроме того, когда вновь устанавливается связь между управляющим устройством 11 и планшетным устройством 10 (тот же самый терминал, который был перед прерыванием связи, или другой терминал), после прерывания связи между планшетным устройством 10 и управляющим устройством 11, соединение в течение времени T1 повторно не устанавливается и управляющий объект удаляется, контроллер 20а устройства инстанцирует новый управляющий объект и запускает его на основе запроса от планшетного устройства 10 в соответствии с процессом, описанным по фиг. 4.In addition, when communication is again established between the control device 11 and the tablet device 10 (the same terminal that was before the connection was interrupted, or another terminal), after the communication between the tablet device 10 and the control device 11 is interrupted, the connection is repeated during time T1 is not installed and the control object is removed, the device controller 20a instantiates a new control object and starts it based on a request from the tablet device 10 in accordance with the process described in FIG. four.

В результате можно быстро разрешить управление устройством даже в том случае, когда соединение повторно не установлено в течение заданного временного интервала после прерывания соединения и последовавшего удаления управляющего объекта.As a result, it is possible to quickly enable device control even if the connection is not re-established within a specified time interval after the connection is interrupted and the control object is subsequently deleted.

Кроме того, когда соединение с планшетным устройством 10 в этом варианте осуществляется в границах временного интервала T1, удаление сохраненного управляющего объекта отменяется (выполняется управление инстанцированием управляющего объекта).In addition, when the connection with the tablet device 10 in this embodiment is carried out within the time interval T1, the deletion of the stored control object is canceled (the instantiation of the control object is controlled).

Поскольку удаление управляющего объекта отменяется, когда повторное соединение оказывается успешным в рамках временного интервала T1 после прерывания связи, можно предотвратить удаление управляющего объекта в случае временного прерывания, например, когда соединение повторно устанавливается в течение интервала T1 после отключения связи.Since the deletion of the control object is canceled when the reconnection is successful within the time interval T1 after the interruption of communication, it is possible to prevent the removal of the control object in the event of a temporary interruption, for example, when the connection is re-established during the interval T1 after disconnection.

В этом варианте, когда между планшетным устройством 10 и управляющим устройством 11 установлено соединение, каждое устройство запоминает идентификационную информацию (ID линии связи), соответствующую данному соединению, и при повторном соединении после прерывания эти устройства соединяются вновь на основе идентификационной информации, запомненной каждым из них.In this embodiment, when a connection is established between the tablet device 10 and the control device 11, each device remembers the identification information (communication line ID) corresponding to the connection, and when reconnecting after interruption, these devices are reconnected based on the identification information stored by each of them .

В результате идентификационная информация (ID линии связи), запомненная каждым из устройств, может быть использована при необходимости для восстановления соединения, чтобы восстановить соединение, соответствующее прерванному.As a result, the identification information (communication line ID) stored by each of the devices can be used, if necessary, to reconnect to restore the connection corresponding to the interrupted one.

В этом варианте управляющее устройство 11 инстанцирует управляющий объект для каждого устройства в соединении для управления устройством. Управляющее устройство 11 (ретрансляционный объект 51) также запоминает идентификационную информацию (ID линии связи), относящуюся к управляющему объекту, и удаляет управляющий объект, если соединение с планшетным устройством 10 не было повторно установлено в течение интервала времени T1 после прерывания соединения с планшетным устройством 10. При восстановлении соединения после его прерывания управляющее устройство 11 определяет, был ли инстанцирован управляющий объект с той же самой идентификационной информацией, которая была запомнена в планшетном устройстве 10, и если такой управляющий объект обнаружен, то управляющее устройство 11 отменяет удаление управляющего объекта по прохождении заданного времени.In this embodiment, the control device 11 instantiates a control object for each device in the connection for controlling the device. The control device 11 (relay object 51) also stores identification information (communication line ID) related to the control object and deletes the control object if the connection with the tablet device 10 has not been re-established within the time interval T1 after disconnecting from the tablet device 10 . When the connection is restored after it is interrupted, the control device 11 determines whether the control object with the same identification information that was stored in tablet device 10, and if such a control object is detected, the control device 11 cancels the removal of the control object after a predetermined time.

Таким образом, предотвращается удаление управляющего объекта, который использовался до прерывания соединения, в случае временного прерывания и последующего успешного восстановления соединения в рамках временного интервала T1 после прерывания, и управляющий объект можно будет использовать после восстановления соединения без инстанцирования нового управляющего объекта.Thus, the deletion of the control object that was used before the connection was interrupted in the event of a temporary interruption and subsequent successful restoration of the connection within the time interval T1 after the interruption is prevented, and the control object can be used after the connection is restored without instantiating a new control object.

POS система 1 (система управления) согласно данному варианту изобретения имеет: управляющее устройство с первым коммуникационным блоком, который осуществляет связь с устройством и получает данные, выдаваемые указанным устройством благодаря совместной работе интерфейса 71 устройства и обработчика, контроллер 20а устройства, который добавляет идентификационную информацию (ID данных) к данным (таким, как информация штрихкода), полученным первым коммуникационным блоком; блок 22 памяти, который запоминает данные вместе с ID данных, и второй коммуникационный блок, который выдает данные вместе с ID данных благодаря совместной работе интерфейса 50 стандарта WebSocket на стороне устройства и ретрансляционного объекта 51. POS система 1 также имеет планшетное устройство 10 с приемным блоком, который получает данные вместе с ID данных, выдаваемым управляющим устройством 11, благодаря совместной работе интерфейса 45 стандарта WebSocket на стороне браузера и центрального управляющего объекта 44, блока 25 памяти терминала, который запоминает идентификационную информацию, присвоенную данным, полученным приемным блоком, и блока 26 управления терминалом, который выполняет приложение, обрабатывающее данные.The POS system 1 (control system) according to this embodiment of the invention has: a control device with a first communication unit that communicates with the device and receives data issued by the specified device due to the joint operation of the device interface 71 and the processor, the device controller 20a, which adds identification information ( Data ID) to data (such as barcode information) received by the first communication unit; a memory unit 22, which stores data together with the data ID, and a second communication unit that provides data together with the data ID due to the joint operation of the WebSocket interface 50 on the device side and the relay object 51. The POS system 1 also has a tablet device 10 with a receiving unit , which receives data together with the data ID issued by the control device 11, due to the joint operation of the WebSocket interface 45 on the browser side and the central control object 44, the terminal memory block 25, which passes identification information assigned to the data received by the receiving unit, and the terminal control unit 26, which runs the data processing application.

Таким образом, идентификационная информация (ID данных) добавляется к данным, выдаваемым управляющим устройством 11, на планшетное устройство 10, управляющее устройство 11 запоминает выведенные данные, а планшетное устройство 10 запоминает идентификационную информацию, связанную с входными данными. В результате при прерывании соединения данные, которые не были введены в планшетное устройство 10 из-за прерванного соединения, могут быть идентифицированы с использованием идентификационной информации (ID данных) в качестве поискового ключа, и эти идентифицированные данные могут быть выведены вновь.Thus, identification information (data ID) is added to the data provided by the control device 11 to the tablet device 10, the control device 11 stores the output data, and the tablet device 10 stores the identification information associated with the input data. As a result, when the connection is interrupted, data that was not entered into the tablet device 10 due to the interrupted connection can be identified using identification information (data ID) as a search key, and this identified data can be displayed again.

При восстановлении соединения после прерывания соединения между планшетным устройством 10 и управляющим устройством 11 планшетное устройство 10 в этом варианте посылает запомненную идентификационную информацию (ID данных) в управляющее устройство 11, а управляющее устройство 11 идентифицирует и пересылает данные, которые были введены в планшетное устройство 10, на основе сравнения идентификационной информации (ID данных), полученной от планшетного устройства 10 с идентификаторами запомненных данных.When reconnecting after disconnecting the connection between the tablet device 10 and the control device 11, the tablet device 10 in this embodiment sends the stored identification information (data ID) to the control device 11, and the control device 11 identifies and sends data that has been input to the tablet device 10, based on a comparison of the identification information (data ID) received from the tablet device 10 with the identifiers of the stored data.

При восстановлении соединения после прерывания данные, которые не были введены в планшетное устройство 10, могут быть соответствующим образом идентифицированы с использованием идентификационной информации (ID данных).When reconnecting after interruption, data that has not been entered into the tablet device 10 can be appropriately identified using identification information (data ID).

В данном варианте изобретения управляющее устройство 11 также добавляет регулярный ID данных к данным на основе введенных данных из устройства и выдает их в планшетное устройство 10, а также запоминает данные, которые были выведены вместе с ID данных. После восстановления прерванного соединения между планшетным устройством 10 и управляющим устройством 11 планшетное устройство 10 посылает идентификационную информацию (ID данных), относящуюся к данным, принятым самыми последними, в управляющее устройство 11. Управляющее устройство 11 сравнивает идентификационную информацию (ID данных), полученную от планшетного устройства 10, с идентификаторами данных в данных, запомненных вместе с ID данных, и на основе регулярности идентификационной информации (ID данных) идентифицирует и пересылает данные, которые были введены, на планшетное устройство 10. В этом случае планшетное устройство 10 посылает идентификационную информацию (ID данных) для всех данных, введенных в течение заданного времени, например, в управляющее устройство 11. Таким образом, управляющее устройство 11 может идентифицировать данные, которые не были введены в планшетное устройство 10, простым образом, используя регулярность идентификационной информации (ID данных), вместо выполнения процесса обработки, например, идентификации управляющим устройством 11 данных, не введенных в планшетное устройство 10, путем сравнения полученной идентификационной информации (ID данных) с идентификаторами данных, запомненных вместе с ID данных.In this embodiment of the invention, the control device 11 also adds a regular data ID to the data based on the input data from the device and outputs it to the tablet device 10, and also stores the data that was output along with the data ID. After restoring the interrupted connection between the tablet device 10 and the control device 11, the tablet device 10 sends the identification information (data ID) related to the data received by the latest to the control device 11. The control device 11 compares the identification information (data ID) received from the tablet device 10, with data identifiers in the data stored with the data ID, and based on the regularity of the identification information (data ID) identifies and sends the data, that have been entered to the tablet device 10. In this case, the tablet device 10 sends identification information (data ID) for all data entered over a predetermined time, for example, to the control device 11. Thus, the control device 11 can identify data that were not entered into the tablet device 10, in a simple way, using the regularity of identification information (data ID), instead of performing a processing process, for example, identifying the control device 11 of data not entered to the tablet device 10, by comparing the obtained identification information (data ID) with the identifiers of the data stored with the data ID.

Изобретение было описано выше со ссылками на предпочтительный вариант его осуществления, но изобретение не ограничивается этим вариантом и может быть модифицировано и адаптировано многими путями, не выходя за рамки объема прилагаемой формулы изобретения.The invention has been described above with reference to a preferred embodiment, but the invention is not limited to this option and can be modified and adapted in many ways without going beyond the scope of the attached claims.

Например, в вышеизложенном варианте в описании использовалась POS система 1 в магазине с кассовым терминалом L в качестве примера, но POS система не сводится к указанному использованию и может быть использована в учреждениях общественного питания, например кафе и ресторанах. Управляющее устройство 11 и POS сервер 17 были описаны выше как отдельные устройства; но функции, выполняемые POS сервером 17, могут быть переданы управляющему устройству 11. Кроме того, управляющее устройство 11 в приведенном выше описании представляет собой термальный принтер, но в изобретении можно использовать любой требуемый способ записи.For example, in the above embodiment, the description used POS system 1 in a store with a cash register terminal L as an example, but the POS system is not limited to the indicated use and can be used in catering establishments, for example cafes and restaurants. The control device 11 and the POS server 17 have been described above as separate devices; but the functions performed by the POS server 17 can be transferred to the control device 11. In addition, the control device 11 in the above description is a thermal printer, but any desired recording method can be used in the invention.

Функциональные блоки, показанные на фиг. 2 и фиг. 3, если это требуется, могут быть реализованы посредством совместной работы аппаратных и программных средств, причем для них не требуется специальная аппаратная конфигурация. Эти устройства также могут действовать под управлением программы, хранящейся на внешнем носителе.The function blocks shown in FIG. 2 and FIG. 3, if required, can be implemented through the joint operation of hardware and software, and they do not require special hardware configuration. These devices can also operate under the control of a program stored on external media.

Способ управления системы управления согласно изобретению содержит работу в браузере терминала, запрашивающего управление устройством, подсоединенным к управляющему устройству, со стороны приложения; запрос управления устройством устанавливает управление устройством со стороны управляющего устройства и устанавливает управление устройством со стороны приложения через управляющее устройство с помощью терминала после того, как управляющее устройство установило управление упомянутым устройством.The control method of the control system according to the invention comprises operating in a browser of a terminal requesting to control the device connected to the control device from the application side; the device control request establishes device control from the control device side and sets device control from the application side through the control device using the terminal after the control device has established control of said device.

Согласно этому аспекту изобретения затем осуществляется установление управления устройством со стороны управляющего устройства и установление управления устройством со стороны приложения через управляющее устройство и соответствующее управление устройством может осуществляться приложением, выполняемым в браузере терминала.According to this aspect of the invention, then, the device is controlled by the control device and the device is controlled by the application via the control device and the device can be controlled by the application running in the terminal browser.

В данном изобретении установление управления устройством со стороны управляющего устройства устанавливает состояние, в котором может быть инициировано выполнение упомянутым устройством процесса обработки на основе запроса от терминала.In the present invention, the establishment of device control by the control device sets a state in which the processing of the device by the device can be initiated based on a request from the terminal.

В данном изобретении установление управления упомянутым устройством со стороны управляющего устройства также включает в себя установление состояния, в котором возможна посылка и прием данных между упомянутым устройством и терминалом.In the present invention, establishing control of said device from the side of the control device also includes establishing a state in which it is possible to send and receive data between said device and terminal.

В изобретении установление управления устройством со стороны управляющего устройства также включает в себя инстанцирование управляющим устройством управляющего объекта, сконфигурированного для обработки обмена данными с упомянутым устройством под управлением управляющего устройства.In the invention, the establishment of device control by the control device also includes instantiating by the control device a control object configured to process data exchange with said device under control of the control device.

Как было описано выше, изобретение может соответствующим образом установить управление устройством путем инстанцирования управляющего объекта.As described above, the invention can appropriately establish device control by instantiating a control entity.

Согласно другому аспекту изобретения установление управления устройством со стороны приложения терминала через управляющее устройство инстанцирует на терминале интерфейсный объект, сконфигурированный для осуществления связи с управляющим объектом.According to another aspect of the invention, the establishment of device control by the terminal application through the control device instantiates on the terminal an interface object configured to communicate with the control object.

Согласно этому аспекту изобретения можно соответствующим образом установить управление устройством со стороны приложения через управляющее устройство путем инстанцирования управляющего объекта и инстанцирования интерфейсного объекта, который может осуществлять связь с управляющим объектом.According to this aspect of the invention, it is possible to appropriately establish device control from the application side through the control device by instantiating a control object and instantiating an interface object that can communicate with the control object.

Согласно еще одному аспекту изобретения упомянутое устройство представляет собой принтер, сконфигурированный для осуществления печати; приложение сконфигурировано для его выполнения в браузере терминала, запрашивающего управляющее устройство для управления принтером; управляющее устройство сконфигурировано для установления управления принтером на основе полученного запроса управления принтером; и после установления управляющим устройством управления принтером терминал устанавливает управление принтером со стороны приложения через управляющее устройство.According to another aspect of the invention, said device is a printer configured to print; the application is configured to run in a browser of the terminal requesting a control device for controlling the printer; the control device is configured to establish printer control based on the received printer control request; and after establishing the printer control by the control device, the terminal establishes application control of the printer through the control device.

Согласно этому аспекту изобретения управление принтером, взятым в качестве примера устройства, основано на запросе от приложения, и управление принтером со стороны приложения через управляющее устройство устанавливается последовательно, при этом приложение, которое выполняется в браузере терминала, может осуществить печать, когда это необходимо.According to this aspect of the invention, controlling a printer taken as an example of a device is based on a request from an application, and controlling the printer from the application through the control device is set sequentially, while the application that is running in the terminal browser can print when necessary.

Другие цели и достижения вместе с более полным пониманием изобретения станут очевидными при обращении к соответствующему описанию и формуле изобретения вместе с сопроводительными чертежами.Other objectives and achievements, together with a more complete understanding of the invention will become apparent when referring to the corresponding description and claims along with the accompanying drawings.

Claims (16)

1. Способ управления системы управления, включающей в себя терминал, сконфигурированный для выполнения приложения в Web-браузере для отображения Web-страницы, записанной на языке сценариев или языке разметки, устройство, сконфигурированное для посылки и приема данных и присвоенной идентификационной информации, и принтер, подсоединенный к упомянутому устройству, причем способ содержит:
передачу запроса от приложения на принтер на инстанцирование управляющего объекта устройства для управления устройством с присвоенной идентификационной информацией, заданной приложением;
инстанцирование управляющего объекта устройства на принтере, основываясь на запросе от приложения на инстанцирование управляющего объекта устройства;
выполнение установления управления устройством на принтере посредством управляющего объекта устройства;
выполнение установления управления устройством посредством приложения через принтер на терминале, основываясь на идентификационной информации.
1. The control method of a control system including a terminal configured to run an application in a Web browser to display a Web page recorded in a scripting language or markup language, a device configured to send and receive data and assigned identification information, and a printer, connected to said device, the method comprising:
sending a request from the application to the printer for instantiating a device control object for device control with the assigned identification information specified by the application;
instantiating a device control object on a printer based on a request from an application to instantiate a device control object;
the implementation of the establishment of device control on the printer through the control object of the device;
performing a device control establishment by means of an application through a printer on a terminal based on the identification information.
2. Способ управления системы управления по п. 1, в котором
установление управления устройством посредством принтера состоит в установлении состояния, в котором может быть инициировано выполнение упомянутым устройством процесса на основе запроса от терминала.
2. The control method of the control system according to claim 1, in which
establishing device control by means of a printer is to establish a state in which a process can be initiated by said device based on a request from a terminal.
3. Способ управления системы управления по п. 1, в котором установление управления устройством посредством принтера состоит в установлении состояния, в котором возможна посылка и прием данных между упомянутым устройством и терминалом через принтер.3. The control method of the control system according to claim 1, wherein establishing control of the device by means of a printer consists in establishing a state in which it is possible to send and receive data between said device and the terminal through the printer. 4. Способ управления системы управления по п. 1, в котором
управляющий объект устройства сконфигурирован для обработки обмена данными с упомянутым устройством с помощью контроллера.
4. The control method of the control system according to claim 1, in which
the control object of the device is configured to process data exchange with said device using a controller.
5. Способ управления системы управления по п. 4, в котором
инстанцирование на терминале интерфейсного объекта, сконфигурированного для осуществления связи с управляющим объектом устройства, выполняют после того, как управляющий объект устройства инстанцирован на принтере.
5. The control method of the control system according to claim 4, in which
instantiation at the terminal of an interface object configured to communicate with a device control object is performed after the device control object is instantiated on a printer.
6. Способ управления системы управления по п. 1, в котором
упомянутое устройство представляет собой сканер, осуществляющий считывание;
запрос на инстанцирование управляющего объекта устройства является запросом на инстанцирование управляющего объекта сканера для управления сканером; и
принтер выполняет установление управления сканером на основе полученного запроса.
6. The control method of the control system according to claim 1, in which
said device is a scanner that reads;
a request to instantiate a control object of a device is a request to instantiate a control object of a scanner to control a scanner; and
the printer performs the scanner control establishment based on the request received.
7. Способ управления системы управления по п. 6, в котором
управление сканером состоит в посылке данных, считываемых сканером, в приложение через принтер.
7. The control method of the control system according to claim 6, in which
Scanner management consists of sending data read by the scanner to the application through a printer.
8. Система управления, содержащая:
устройство, сконфигурированное для посылки или приема данных и присвоенной идентификационной информации;
терминал, включающий в себя
блок выполнения программы Web-браузера, сконфигурированный для выполнения программы Web-браузера, где действует приложение, сконфигурированное для вывода запроса на инстанцирование управляющего объекта устройства и предписания устройству действовать,
и коммуникационный модуль, сконфигурированный для передачи запроса от приложения на инстанцирование управляющего объекта устройства; и
принтер, включающий в себя
интерфейс, сконфигурированный для соединения с упомянутым устройством, и
блок управления, сконфигурированный для инстанцирования управляющего объекта устройства на принтере, основываясь на запросе от приложения на инстанцирование управляющего объекта устройства, для управления устройством с присвоенной идентификационной информацией, заданной приложением, и для выполнения установления управления устройством.
8. A control system comprising:
a device configured to send or receive data and assigned identification information;
terminal including
a Web browser program execution unit, configured to execute a Web browser program, where an application configured to output a request to instantiate a device control object and instruct the device to act,
and a communication module configured to transmit a request from the application to instantiate a device control object; and
printer including
an interface configured to connect to said device, and
a control unit configured to instantiate a device control object on a printer based on a request from an application to instantiate a device control object to control a device with the assigned identification information specified by the application and to perform a device control establishment.
9. Система управления по п. 8, в которой
после выполнения блоком управления установления управления устройством приложение выполняет установление управления устройством через принтер.
9. The control system of claim 8, wherein
after the control unit completes the establishment of device control, the application performs the device control establishment through the printer.
10. Система управления по п. 8, в которой
устройство включает в себя обрабатывающий блок; и
установление управления устройством посредством принтера состоит в установлении состояния, в котором может быть инициировано выполнение обрабатывающим блоком процесса на основе управляющего объекта устройства.
10. The control system of claim 8, wherein
the device includes a processing unit; and
establishing device control by means of a printer consists in establishing a state in which a processing unit may initiate a process based on a control object of the device.
11. Система управления по п. 8, в которой
установление управления устройством посредством принтера состоит в установлении состояния, в котором между упомянутым устройством и терминалом возможна посылка и прием данных через принтер.
11. The control system of claim 8, wherein
establishing device control by means of a printer is to establish a state in which data can be sent and received between the device and the terminal through the printer.
12. Система управления по п. 8, в которой
управляющий объект устройства сконфигурирован для обработки обмена данными с устройством.
12. The control system of claim 8, wherein
the control object of the device is configured to process communication with the device.
13. Система управления по п. 9, в которой
блок выполнения программы Web-браузера сконфигурирован для инстанцирования интерфейсного объекта, сконфигурированного для осуществления связи с управляющим объектом устройства.
13. The control system of claim 9, wherein
a web browser program execution unit is configured to instantiate an interface object configured to communicate with a device control object.
14. Система управления по п. 8, в которой
упомянутое устройство представляет собой сканер, сконфигурированный для считывания;
запрос на инстанцирование управляющего объекта устройства является запросом на инстанцирование управляющего объекта сканера для управления сканером; и
принтер выполняет установление управления сканером на основе полученного запроса.
14. The control system of claim 8, wherein
said device is a scanner configured to read;
a request to instantiate a control object of a device is a request to instantiate a control object of a scanner to control a scanner; and
the printer performs the scanner control establishment based on the request received.
15. Система управления по п. 14, в которой
после выполнения принтером установления управления сканером, приложение выполняет установление управления сканером через принтер.
15. The management system of claim 14, wherein
after the printer performs the scanner control establishment, the application performs the scanner control establishment through the printer.
16. Система управления по п. 15, в которой
управление сканером представляет собой управление, сконфигурированное для посылки данных, считываемых сканером, в приложение через принтер.
16. The control system of claim 15, wherein
scanner control is a control configured to send data read by the scanner to an application through a printer.
RU2014101597/08A 2013-01-30 2014-01-20 Method of controlling control system and control system itself RU2575420C2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013016056A JP6060708B2 (en) 2013-01-30 2013-01-30 Control system control method and control device control method
JP2013-016056 2013-01-30

Publications (2)

Publication Number Publication Date
RU2014101597A RU2014101597A (en) 2015-07-27
RU2575420C2 true RU2575420C2 (en) 2016-02-20

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2323477C2 (en) * 2002-03-14 2008-04-27 Юронет Уорлдвайд, Инк System and method for purchasing goods and services through access stations for accessing data transmission network using a network of trading terminals

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2323477C2 (en) * 2002-03-14 2008-04-27 Юронет Уорлдвайд, Инк System and method for purchasing goods and services through access stations for accessing data transmission network using a network of trading terminals

Similar Documents

Publication Publication Date Title
EP2953033B1 (en) Control system and control method for the control system
EP2763095A1 (en) Control method of a control system and a control system
US20150002896A1 (en) Control System, Control Method of a Control System, and Recording Device
US10154081B2 (en) Control system, and information processing device
EP3154237B1 (en) Network system and communication control method
US20140211255A1 (en) Control system and control method of a control system
JP6365648B2 (en) Terminal and terminal control method
JP6182880B2 (en) Control system and control system control method
RU2575420C2 (en) Method of controlling control system and control system itself
JP2014147045A (en) Control system and control system control method
US10032152B2 (en) Transmission system that enables correlation between a sending device and each of multiple receiving devices
JP2016049723A (en) Recording device, control method of the same and recording system
JP6229269B2 (en) Control device and control method of control device
JP6229268B2 (en) Control device and control method of control device
JP6229270B2 (en) Control system and control system control method
JP6984184B2 (en) Device control device and control method of device control device
JP6160437B2 (en) POS system, host device, and host device control method
JP6171837B2 (en) Transmission system, transmission apparatus, and data transmission method
JP2016048411A (en) Recording apparatus, control system, and information processing method
JP2016051273A (en) Recording device and control method of the same