WO2016035340A1 - 処理装置、及び、データ処理方法 - Google Patents

処理装置、及び、データ処理方法 Download PDF

Info

Publication number
WO2016035340A1
WO2016035340A1 PCT/JP2015/004468 JP2015004468W WO2016035340A1 WO 2016035340 A1 WO2016035340 A1 WO 2016035340A1 JP 2015004468 W JP2015004468 W JP 2015004468W WO 2016035340 A1 WO2016035340 A1 WO 2016035340A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
processing
data
communication path
processing device
Prior art date
Application number
PCT/JP2015/004468
Other languages
English (en)
French (fr)
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
Application filed by セイコーエプソン株式会社 filed Critical セイコーエプソン株式会社
Priority to EP15837877.8A priority Critical patent/EP3190522A4/en
Priority to KR1020177000649A priority patent/KR101877813B1/ko
Priority to US15/329,184 priority patent/US10536531B2/en
Priority to JP2016546327A priority patent/JP6589870B2/ja
Priority to CN201580047148.3A priority patent/CN106796552B/zh
Publication of WO2016035340A1 publication Critical patent/WO2016035340A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/202Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/208Input by product or record sensing, e.g. weighing or scanner processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/0036Checkout procedures
    • G07G1/0045Checkout procedures with a code reader for reading of an identifying code of the article to be registered, e.g. barcode reader or radio-frequency identity [RFID] reader
    • G07G1/0081Checkout procedures with a code reader for reading of an identifying code of the article to be registered, e.g. barcode reader or radio-frequency identity [RFID] reader the reader being a portable scanner or data reader
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/12Cash registers electronically operated
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/12Cash registers electronically operated
    • G07G1/14Systems including one or more distant stations co-operating with a central processing unit
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/12Cash registers electronically operated
    • G07G1/14Systems including one or more distant stations co-operating with a central processing unit
    • G07G1/145PLU-management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Definitions

  • the present invention relates to a processing apparatus and a data processing method for processing data.
  • Patent Document 1 there has been a system in which a terminal device connected to a server performs data processing using a function provided by the server (see, for example, Patent Document 1).
  • the POS (Point Of Sales) system of Patent Document 1 includes an auxiliary server device having a line confirmation device between a server device and a client device.
  • the auxiliary server device and the server device are connected by two or more Internet lines, and communication via one Internet line cannot be confirmed, the client device and the server device communicate with each other via the Internet line. .
  • the system of Patent Document 1 monitors whether an auxiliary server device connected to two or more Internet lines relays communication between a client device and a server device and can confirm communication via the Internet line. . For this reason, since the system configuration becomes complicated, it is not easy to introduce such countermeasures.
  • the present invention has been made in view of the above-described circumstances, and enables a terminal device to execute data processing even if a communication failure occurs in a system in which the terminal device communicates with a server to perform data processing. For the purpose.
  • a processing apparatus of the present invention has a data storage unit for storing processing apparatus side master data, is connected to a server through a server communication path, and is based on server side master data of the server.
  • Update processing of the processing device side master data stored in the data storage unit connect to the terminal device through the processing communication path, and store in the data storage unit in response to the master data transmission request transmitted by the terminal device It responds based on the said processing apparatus side master data to perform,
  • the process information which the said terminal device transmits is received, It is characterized by the above-mentioned.
  • the master data can be provided in response to a request from the terminal device on behalf of the server. Can be executed without delay.
  • the processing apparatus of the present invention transmits the processing information received from the terminal device to the server through the server communication path when the server communication path satisfies a preset server communication condition. According to the present invention, processing information received from a terminal device by a processing device can be processed by a server.
  • the processing device of the present invention includes a processing information storage unit, and receives the processing information transmitted by the terminal device when the server communication path does not satisfy a preset server communication condition, and performs the processing.
  • the processing device side master data stored in the data storage unit is updated based on the processing information stored in the information storage unit and stored in the processing information storage unit.
  • the processing device of the present invention executes the processing based on the processing device side master data of the data storage unit, and the processing information relating to the executed processing Are stored in the processing information storage unit.
  • ADVANTAGE OF THE INVENTION when the communication state of a server communication path does not satisfy
  • the processing device of the present invention may store the processing information stored in the processing information storage unit in the server when the server communication path changes from a state that does not satisfy the server communication condition to a state that satisfies the server communication condition. Send. ADVANTAGE OF THE INVENTION According to this invention, when the communication state of a server communication path returns to the state which satisfy
  • the processing device of the present invention when the server communication path satisfies the server communication condition, connected to the server through the server communication path, and executes processing based on server-side master data possessed by the server, Process information relating to the executed process is transmitted to the server. According to the present invention, processing can be executed based on data held by the server, and the server can process information regarding the executed processing.
  • the data processing method of the present invention is connected to a server through a server communication path by a processing device having a data storage unit for storing processing device side master data, and the server side of the server has Based on the master data, update processing of the processing device side master data stored in the data storage unit, connected to the terminal device through the processing communication path, for the master data transmission request transmitted by the terminal device, Responding based on the processing device side master data stored in the data storage unit, receiving processing information transmitted by the terminal device, and storing the processing device side master in the data storage unit based on the received processing information The data is updated, and the terminal communication path does not satisfy a preset terminal communication condition by the terminal device.
  • the processing device is connected to the processing device through the processing communication path, transmits the master data transmission request, receives the processing device-side master data from the processing device, executes processing, and processing information regarding the executed processing. It transmits to the said processing apparatus, It is characterized by the above-mentioned.
  • the processing device when the processing device holds data that matches the master data held by the server and a communication failure occurs, the master data can be provided in response to a request from the terminal device on behalf of the server.
  • the terminal device can execute the processing without delay.
  • the terminal device when the terminal communication path satisfies the terminal communication conditions, the terminal device connects to the server through the terminal communication path and executes processing based on the server-side master data. Then, processing information regarding the executed processing is transmitted to the server.
  • ADVANTAGE OF THE INVENTION According to this invention, the information regarding the process which the terminal device performed based on the data of a server can be processed with a server.
  • the processing is performed by executing software in a web browser by the processing device and the terminal device. According to the present invention, processing can be performed by executing software provided through a communication path by a web browser.
  • the terminal device can execute the processing without delay.
  • FIG. 1 is a block diagram showing the configuration of the data processing system 1 according to the present embodiment, and particularly shows the configuration of the server 50 in detail.
  • the data processing system 1 functions as a POS (Point of Sales) system that performs accounting processing related to commercial transactions at a store L that conducts commercial transactions.
  • the store L to which the data processing system 1 is applied is an establishment that provides goods (including services) and receives payment of the consideration.
  • the data processing system 1 performs accounting processing for calculating the consideration and receiving payment. And store information about the accounting process performed.
  • the data processing system 1 includes a POS device 10 and a POS device 30, and the POS devices 10 and 30 are each connected to a server 50 via a communication network N.
  • the data processing system 1 is a Web POS system in which a POS application 62 (web application) provided by the server 50 is executed by each of the processing device 11 and the tablet 31 using a web browser to realize a function as a POS device.
  • the POS device 10 includes a processing device 11, a monitor 26 connected to the processing device 11, a barcode scanner 27, a customer display 28, and a cash drawer 29.
  • the processing device 11 is connected to the server 50 via the communication network N and transmits / receives various data to / from the server 50.
  • the POS device 30 includes a tablet 31 (terminal device), a recording device 41, a barcode scanner 47, a customer display 48, and a cash drawer 49.
  • the tablet 31 is a so-called tablet computer having a flat body.
  • the tablet 31 is connected to the server 50 via the communication network N and transmits / receives various data to / from the server 50.
  • the configurations of the POS device 10 and the POS device 30 will be described later.
  • the communication network N is realized by various communication lines such as a public line network, a dedicated line, a wireless communication line including a mobile phone line, and a backbone communication line of these lines, or a combination thereof, and its specific configuration is not limited. .
  • the communication network N can be referred to as a wide area communication line network that can connect remote locations, but the range, area, etc. where the communication network N is laid are not limited.
  • the communication network N may include network devices such as a server device, a gateway device, and a router device that connect the various communication lines. Further, the communication network N may be composed of a plurality of communication lines.
  • a communication path through which the POS device 30 communicates with the server 50 is referred to as a terminal communication path N1, and a communication path through which the POS device 10 communicates with the server 50 is referred to as a server communication path N2.
  • the terminal communication path N1 and the server communication path N2 indicate virtual or logical communication paths (paths and channels) provided in the communication line.
  • the terminal communication path N1 and the server communication path N2 may be formed on the same physical communication line, or may be formed on physically different communication lines. In the present embodiment, a configuration in which a communication device 5 described later is installed in the store L and the communication device 5 is connected to the communication network N is shown as an example.
  • the processing device 11 of the POS device 10 and the tablet 31 of the POS device 30 are connected to the communication network N via the communication device 5. Therefore, the terminal communication path N1 and the server communication path N2 are on a common communication line at least in a section connecting the communication device 5 and the communication network N, but can be said to be logically independent communication paths. For example, a configuration in which the processing device 11 and the tablet 31 are connected to the communication network N via different communication devices can of course be realized.
  • the data processing system 1 has a function of determining whether a communication line can communicate. That is, the POS device 30 can determine whether or not the terminal communication path N1 is communicable, and the POS device 10 can determine whether or not the server communication path N2 is communicable. More specifically, the tablet 31 has a terminal communication condition that is a condition for determining the communication state of the terminal communication path N1. The terminal communication condition is set in advance in the tablet 31 and is generated by the tablet 31 or is given to the tablet 31 by some method, such as being acquired from another device.
  • the processing device 11 has a server communication condition that is a condition for determining the communication state of the server communication path N2.
  • the server communication condition is set in the processing device 11 in advance, and is generated by the processing device 11 or is given to the processing device 11 by some method, such as being acquired from another device.
  • the terminal communication condition includes data serving as a reference or index for determining whether or not the communication state of the terminal communication path N1 is a state in which communication is possible.
  • the server communication condition includes data serving as a reference or index for determining whether or not the communication state of the server communication path N2 is a state in which communication is possible. Specific examples of data include terminal loss conditions, packet loss rate, transmission delay time, noise ratio, error correction execution status, and the like.
  • the server 50 may transmit the terminal communication condition and / or the server communication condition to the tablet 31 and / or the processing device 11.
  • the server 50 includes a server control unit 51 and a server communication unit 55.
  • the server control unit 51 includes an application execution unit 52 and a database control unit 53.
  • a data storage unit 61 and a database 65 are connected to the server 50.
  • the server communication unit 55 is connected to the communication network N, and transmits and receives data to and from the POS device 10 and the POS device 30 according to the control of the server control unit 51.
  • the server control unit 51 includes a CPU, a ROM, a RAM, and other peripheral circuits.
  • the CPU executes a program and controls each unit of the server 50.
  • the application execution unit 52 and the database control unit 53 are software functions that the CPU of the server control unit 51 generates by executing a program.
  • the data storage unit 61 stores a POS application 62 executed by the application execution unit 52 and an HTML (HyperText Markup Language) file 63 transmitted to the POS devices 10 and 30.
  • HTML HyperText Markup Language
  • the database 65 stores server-side sales data 66 and server-side master data 67.
  • the database 65 registers the result of the transaction processing of the business transaction executed by the POS devices 10 and 30 in the server-side sales data 66.
  • the server-side sales data 66 includes data of the result of the accounting process processed by the data processing system 1.
  • the data included in the server-side sales data 66 includes, for example, the date and time of the accounting process, the name of the store L, the identification information (ID) of the POS devices 10 and 30 that executed the accounting process, and the product name of the merchandise subject to the accounting process. Data such as quantity, unit price, total amount of accounting, payment method, etc. Moreover, you may include the deposit amount and change amount when cash settlement is performed.
  • the server-side sales data 66 may include information related to the customer who is the counterpart of the accounting process.
  • the server-side master data 67 stores data used for accounting processing. For example, a PLU (Price Look Up) database including the unit price of the product corresponding to the product identification information is included.
  • the product identification information is, for example, product barcode data read by the barcode scanners 27 and 47, and is so-called PLU data.
  • the server-side master data 67 may include data related to product sales conditions and the like.
  • the server control unit 51 calls the application execution unit 52 with the server communication unit 55 receiving an access request transmitted by the processing device 11 or an access request transmitted by the tablet 31 as a trigger.
  • the application execution unit 52 executes the POS application 62 and transmits the HTML file 63 stored in the data storage unit 61 to the processing device 11 or the tablet 31.
  • the HTML file 63 is a file that the server control unit 51 transmits to the processing device 11 and the tablet 31.
  • the HTML file 63 includes a script that calls a function of the server 50.
  • An implementation form of this script is, for example, a Java (registered trademark) script.
  • the processing device 11 and the tablet 31 process the HTML file 63 with a web browser, and execute transmission of data to the server 50 and processing of data transmitted by the server 50 with a script function.
  • a web browser executes a script, transmits PLU data to the server 50, and requests data of the server-side master data 67.
  • This request corresponds to a master data transmission request.
  • the application execution unit 52 extracts price data corresponding to the PLU data from the server-side master data 67 and transmits it to the processing device 11 or the tablet 31.
  • This price data includes a unit price, a product name, a product category, or other information.
  • the application execution unit 52 displays the processing result received. Based on this, the server-side sales data 66 is updated.
  • FIG. 2 is a block diagram showing the configuration of the data processing system 1 according to the present embodiment, and particularly shows the configuration of the POS device 10 and the POS device 30 in detail.
  • the communication device 5 is installed in the store L where the POS devices 10 and 30 are installed.
  • the communication device 5 is a device that connects the wide area network and the network in the store L, and is, for example, a switch, a router, a gateway server, or the like.
  • the wide area network side of the communication device 5 is connected to the communication network N through a wired communication line or a wireless communication line such as a cellular phone network.
  • the LAN-side interface of the communication device 5 includes a wired LAN interface such as Ethernet (registered trademark), a wireless LAN interface of IEEE 802.11, and a Bluetooth (registered trademark) interface.
  • the processing device 11 is connected to the wired LAN interface of the communication device 5, and the tablet 31 is connected to the wireless LAN interface.
  • the communication device 5 relays communication between the processing device 11 and the server 50 and communication between the tablet 31 and the server 50.
  • the communication device 5 has a function of relaying communication between devices connected to the LAN side.
  • the processing device 11 and the tablet 31 can perform data communication through the communication device 5.
  • a communication path for communication between the processing device 11 and the tablet 31 is defined as a processing communication path N3.
  • the processing communication path N3 indicates a virtual or logical communication path (path, channel) provided in the LAN in the store L. Part or all of the processing communication path N3 may be formed on the same communication line as the terminal communication path N1 and part of the server communication path N2, or may be formed on a physically different communication line. .
  • the tablet 31 includes a tablet control unit 32 that controls each unit of the tablet 31 and the recording device 41, a tablet communication unit 34, a touch panel 35, and a tablet storage unit 36.
  • the recording device 41 is a printer that prints a receipt with the printer unit 45 under the control of the tablet 31.
  • the recording device 41 includes a recording device control unit 42, a recording device communication unit 43, a device connection unit 44, and a printer unit 45.
  • a barcode scanner 47 is connected to the device connection unit 44, and a customer display 48 and a cash drawer 49 are connected to the printer unit 45.
  • the tablet 31 includes a touch panel 35 including a display panel provided on a front surface of a flat plate-like main body and a touch sensor provided on the display panel.
  • This display panel is composed of a liquid crystal display panel or an organic EL panel.
  • the touch sensor of the touch panel 35 is a capacitance type sensor, a pressure sensitive type sensor, etc., detects a touch operation by a user's finger or a pen-type operation device (not shown), and displays operation data indicating a detection position on the tablet. Output to the control unit 32.
  • a web browser program is installed in the tablet 31, and the tablet control unit 32 reads and executes the web browser program stored in the tablet storage unit 36.
  • the browser execution unit 33 executes a request with a preset server address (URL) as a destination, and requests the server 50 to transmit an HTML file. The operation of the browser execution unit 33 will be described later.
  • the tablet storage unit 36 stores a program executed by the tablet control unit 32, data processed by the tablet control unit 32, and the like in a nonvolatile manner.
  • the tablet storage unit 36 stores, for example, setting data related to the operation of the browser execution unit 33, setting data for the tablet control unit 32 to control each unit of the recording device 41, and the like.
  • the tablet communication unit 34 is connected to the communication device 5 and executes data communication through the communication device 5 under the control of the tablet control unit 32.
  • the tablet communication unit 34 of the present embodiment has a wireless LAN interface and executes wireless data communication with the communication device 5.
  • the tablet communication unit 34 performs data communication with the recording device communication unit 43.
  • the recording device communication unit 43 has a wireless LAN interface or a short-range wireless communication interface such as Bluetooth (registered trademark) or WirelessUSB.
  • the tablet communication unit 34 includes a wireless communication interface corresponding to the recording device communication unit 43.
  • the tablet communication unit 34 may perform direct communication with the recording device communication unit 43 in the wireless ad hoc mode, or may perform communication through a network relayed by the communication device 5.
  • a communication path connecting the tablet communication unit 34 and the recording device communication unit 43 is defined as a wireless communication link N4.
  • the recording device control unit 42 included in the recording device 41 is connected to the tablet control unit 32 through the wireless communication link N4, and the tablet control unit 32 controls each unit of the recording device 41.
  • the recording device control unit 42 controls the recording device communication unit 43 to execute data communication with the tablet 31.
  • a device connection unit 44 and a printer unit 45 are connected to the recording apparatus control unit 42.
  • the device connection unit 44 includes connectors such as a USB connector and a monitor connector, and interface circuits corresponding to these connectors, and can connect various devices.
  • the bar code scanner 47 reads bar codes such as merchandise, merchandise wrapping or reading sheets, and outputs the read results to the device connection unit 44.
  • the barcode scanner 47 only needs to be able to optically read the code and output the read result, and there is no limitation on the specific form of the code. For example, a two-dimensional code such as a QR code (registered trademark) may be used.
  • the device connection unit 44 generates PLU data based on the reading result output from the barcode scanner 47 and outputs the PLU data to the recording device control unit 42.
  • the printer unit 45 includes a transport mechanism that transports roll paper accommodated in the casing of the recording device 41, a recording mechanism that records an image on the roll paper with a thermal head, and a cutting mechanism that cuts the roll paper at a predetermined position. And a mechanism for recording on roll paper.
  • the printer unit 45 transports the roll paper with the transport mechanism under the control of the recording device control unit 42, records the receipt image on the roll paper with the recording mechanism, cuts the roll paper with the cutting mechanism, and issues the receipt. .
  • the printer unit 45 includes a plurality of serial interfaces that are serially connected to external devices, and a customer display 48 and a cash drawer 49 are connected to the serial interfaces.
  • the printer unit 45 outputs the control signal output from the recording apparatus control unit 42 to the serial interface. Accordingly, the customer display 48 and the cash drawer 49 are daisy chain connected to the recording device control unit 42 through the printer unit 45.
  • the customer display 48 displays characters, symbols, images, etc. based on the control signal input from the printer unit 45.
  • the cash drawer 49 includes a tray for storing cash and a mechanism for locking the tray, and releases the lock according to a drawer kick signal input from the printer unit 45 to open the tray.
  • the recording device control unit 42 transmits the PLU data to the tablet control unit 32.
  • the tablet control unit 32 outputs display data such as numbers displayed on the customer display 48 by the tablet control unit 32
  • the recording device control unit 42 generates a display signal based on the display data and passes through the printer unit 45 to pass through the customer. Send to display 48.
  • the tablet control unit 32 outputs an instruction to open the cash drawer 49
  • the recording device control unit 42 generates a drive signal for the cash drawer 49 and outputs it to the printer unit 45.
  • the recording device control unit 42 drives and controls the printer unit 45 to issue a receipt.
  • FIG. 3 is a flowchart showing the operation of the data processing system 1.
  • FIG. 3A shows the operation of the POS devices 10 and 30 that operate as POS terminals
  • FIG. 3B shows the operation of the server 50.
  • the browser execution unit 33 of the POS device 30 requests the server 50 to transmit the HTML file 63 in accordance with preset access destination data (step S11).
  • the application execution unit 52 of the server 50 receives the request for transmission of the HTML file 63 (step S21), and transmits the HTML file 63 (step S22).
  • the browser execution unit 33 downloads and executes the HTML file 63 transmitted from the server 50 (step S12), and executes a web application having a POS function. Thereafter, the operator who operates the POS device 30 operates the barcode scanner 47 to read the barcode of the merchandise subject to commercial transaction (step S13).
  • the device connection unit 44 acquires the reading result output by the barcode scanner 47 (step S14), generates PLU data, and outputs it to the browser execution unit 33.
  • the browser execution unit 33 sends PLU data to the server 50 to make a master data transmission request (step S15).
  • the application execution unit 52 receives the PLU data transmitted by the POS device 30 (step S23), and refers to the server-side master data 67 based on the received PLU data (step S24).
  • the application execution unit 52 acquires price data corresponding to the received PLU data from the server-side master data 67 and transmits it to the POS device 30 (step S25).
  • the browser execution unit 33 receives the price data transmitted by the server 50 (step S16), and executes an accounting process based on the received price data (step S17). Specifically, the product name, unit price, product category, etc. corresponding to the PLU data read by the barcode scanner 47 are displayed on the touch panel 35. Further, the product quantity, the deposit amount, etc. are input by operating the touch panel 35, and the browser execution unit 33 acquires the input data, calculates the total amount by the function of the web application, the total amount and the change amount, etc. Is displayed on the touch panel 35. In addition, the browser execution unit 33 transmits an instruction to open the cash drawer 49 as necessary. When processing a plurality of commodities in one accounting process, the data processing system 1 repeatedly executes the processes in steps S13 to S17 in FIG. 3A and steps S22 to S25 in FIG.
  • the browser execution unit 33 outputs an issuance instruction for issuing a receipt, text data, and image data to the recording device 41, and issues a receipt (step S18).
  • the browser execution unit 33 performs one accounting process when the receipt is issued, when an operation for instructing completion is performed on the touch panel 35 after the receipt is issued, or when the cash drawer 49 is closed. Determine that completed.
  • the browser execution unit 33 transmits a processing result (processing information) indicating a result of the accounting process to the server 50 (step S19).
  • the browser execution unit 33 may send the processing results of a plurality of transaction processes together to the server 50.
  • the application execution unit 52 receives the processing result transmitted by the POS device 30 (step S26), registers the processing result in the server-side sales data 66 of the database 65, and updates the server-side sales data 66 (step S27). .
  • the POS device 30 performs the accounting process as a POS in accordance with the operation of the operator, and the result of the accounting process is reflected in the server-side sales data 66.
  • the processing device 11 is a printer that prints a receipt by the printer unit 19 and has a function of executing data processing based on data stored in the auxiliary storage unit 20 (software storage unit) and the data storage unit 23 (processing information storage unit).
  • the processing device 11 includes a processing device control unit 12 that executes control of printing by the printer unit 19 and data processing.
  • the processing device control unit 12 is connected to the processing device communication unit 17, the device connection unit 18, the printer unit 19, the auxiliary storage unit 20, and the data storage unit 23.
  • the monitor 26 and the barcode scanner 27 are connected to the device connection unit 18, and the customer display 28 and the cash drawer 29 are connected to the printer unit 19.
  • the processing device communication unit 17 is connected to the communication device 5 by, for example, a wired LAN interface.
  • the processing device communication unit 17 executes data communication with the server 50 under the control of the processing device control unit 12.
  • the processing device communication unit 17 performs data communication with the tablet 31 through the communication device 5.
  • the processing device communication unit 17 has a wireless LAN interface and may be wirelessly connected to the communication device 5, and the processing device communication unit 17 directly connects to the tablet communication unit 34 of the tablet 31 to perform communication. But you can.
  • the device connection unit 18 includes connectors such as a USB connector and a monitor connector, and interface circuits corresponding to these connectors, and can connect various devices.
  • the monitor 26 has a display screen such as a liquid crystal display panel or an organic EL panel, and displays various screens based on a display signal input from the device connection unit 18.
  • the device connection unit 18 outputs a display signal to the monitor 26 under the control of the processing device control unit 12.
  • the bar code scanner 27 reads bar codes such as merchandise, merchandise wrapping or reading sheets, and outputs the read results to the device connection unit 18. When an operator operating the POS device 10 registers a product to be sold, the bar code scanner 27 reads the product barcode.
  • the barcode scanner 27 can be configured similarly to the barcode scanner 47, for example.
  • the device connection unit 18 acquires the PLU data output from the barcode scanner 27 and outputs the PLU data to the processing device control unit 12.
  • the printer unit 19 includes a transport mechanism that transports roll paper accommodated in the housing of the processing apparatus 11, a recording mechanism that records an image on the roll paper with a thermal head, a cutting mechanism that cuts the roll paper at a predetermined position, and the like. And a mechanism for recording on roll paper.
  • the printer unit 19 transports the roll paper with the transport mechanism under the control of the processing device control unit 12, records the receipt image on the roll paper with the recording mechanism, cuts the roll paper with the cutting mechanism, and issues the receipt. .
  • the printer unit 19 includes a plurality of serial interfaces for serial connection with external devices, and a customer display 28 and a cash drawer 29 are connected to the serial interfaces.
  • the printer unit 19 outputs the control signal output from the processing device controller 12 to the serial interface. Accordingly, the customer display 28 and the cash drawer 29 are daisy chain connected to the processing device controller 12 through the printer unit 19.
  • the customer display 28 displays characters, symbols, images, etc. based on the control signal input from the printer unit 19.
  • the cash drawer 29 is configured in the same manner as the cash drawer 49, unlocks according to the drawer kick signal input from the printer unit 19, and opens the tray.
  • the printer unit 19 passes through the control signal output from the processing device controller 12, the customer display 28 and the cash drawer 29 operate according to this control signal.
  • the processing device control unit 12 includes a CPU, a ROM, a RAM, and other peripheral circuits, and the CPU executes a program to control each unit of the processing device 11.
  • the browser execution unit 12a, the device control unit 12b, the printer control unit 12c, the application execution unit 12d, and the data control unit 12e are software functions that the CPU of the processing device control unit 12 generates by executing a program.
  • the browser execution unit 12a executes a browser program stored in the auxiliary storage unit 20, the data storage unit 23, or another storage unit (not shown).
  • the browser execution unit 12a reads and executes an HTML file with a web browser, generates display data for screen display, and outputs the display data to the device control unit 12b. Further, when the HTML file to be executed includes a script, the browser execution unit 12a executes the script.
  • the browser execution unit 12a outputs text data and image data to be printed to the printer control unit 12c when executing a script to print a receipt.
  • the device control unit 12 b detects the connection of the monitor 26 connected to the device connection unit 18, the barcode scanner 27, the customer display 28 connected to the printer unit 19, and the cash drawer 29.
  • the device control unit 12b converts display data output from the browser execution unit 12a into a display signal suitable for the monitor 26 and outputs the display signal to the device connection unit 18, or outputs display data to the device connection unit 18 and displays it. Convert to signal.
  • the device control unit 12b acquires the PLU data and outputs it to the browser execution unit 12a.
  • the printer control unit 12c prints a receipt by controlling the printer unit 19 based on text data and image data output from the browser execution unit 12a.
  • the browser execution unit 12a executes a web application based on the HTML file 63, and executes an accounting process as a POS, similar to the browser execution unit 33 included in the POS device 30.
  • the browser execution unit 12a executes the operation of the browser execution unit 33 shown in FIG.
  • the browser execution unit 12a requests the server 50 to transmit the HTML file 63 in accordance with preset access destination data (step S11), and downloads and executes the HTML file 63 transmitted by the server 50 (step S11).
  • S12) A web application is executed.
  • the device connection unit 18 acquires a reading result (step S14).
  • PLU data is generated and output to the browser execution unit 12a.
  • the browser execution unit 12a transmits the PLU data to the server 50 (Step S15).
  • the browser execution unit 12a receives the price data (step S16), and executes an accounting process based on the received price data (step S16).
  • Step S17 the browser execution unit 12 a displays the product name, unit price, product category, and the like corresponding to the PLU data read by the barcode scanner 27 on the monitor 26.
  • the browser execution unit 12a acquires the input data.
  • the browser execution unit 12a calculates the total amount with the function of the web application based on the input data, and displays the total amount and the amount of change on the monitor 26. Further, the browser execution unit 12a transmits an instruction to open the cash drawer 29 as necessary.
  • the browser execution unit 12a outputs an issuance instruction for issuing a receipt, text data, and image data to the printer unit 19 and issues a receipt (step S18).
  • the browser execution unit 12a determines that one accounting process is completed, the browser execution unit 12a transmits a processing result (processing information) indicating a result of the accounting process to the server 50 (step S19).
  • the browser execution unit 12a may send the processing results of a plurality of transaction processes together to the server 50. While the browser execution unit 12a executes the operations in steps S11 to S19, the application execution unit 52 executes the operation shown in FIG. 3B, as in the case where the POS device 30 executes the web application.
  • the POS device 10 performs the accounting process as a POS in response to the operation of the operator, and the result of the accounting process of the POS device 10 is reflected in the server-side sales data 66 in the same manner as the POS device 30.
  • FIG. 4 is an explanatory diagram of an operation in which the data processing system 1 transmits and receives data.
  • (A) is a normal operation
  • (B) is a communication line failure avoiding operation
  • (C) is a communication line failure.
  • FIG. 4A shows an operation when the POS device 10 and the server 50, and the POS device 30 and the server 50 communicate with each other to execute the POS function.
  • the tablet 31 communicates with the server 50 through the terminal communication path N1.
  • the tablet 31 makes an inquiry based on the PLU data in the terminal communication path N1, the server 50 transmits the inquiry result (price data), and the tablet 31 transmits the processing result.
  • the processing device 11 communicates with the server 50 through the server communication path N2, makes an inquiry based on the PLU data, the server 50 transmits the inquiry result (price data), and the processing device 11 transmits the processing result.
  • the server 50 updates the server-side sales data 66 in the database 65 based on the processing results transmitted by the processing device 11 and the tablet 31.
  • the browser execution unit 33 determines the communication state of the terminal communication path N1.
  • the tablet 31 stores in the tablet storage unit 36 terminal communication conditions that are conditions for determining the communication state of the terminal communication path N1.
  • the browser execution unit 33 detects the communication state of the terminal communication path N1, and determines the communication state based on whether the detected communication state satisfies the terminal communication condition. When the communication state of the terminal communication path N1 satisfies the terminal communication condition, the browser execution unit 33 determines that the terminal communication path N1 can communicate. When the communication state of the terminal communication path N1 does not satisfy the terminal communication condition, the browser execution unit 33 determines that the terminal communication path N1 is not in a communicable state.
  • the browser execution unit 12a determines the communication state of the server communication path N2.
  • the processing device 11 stores the server communication condition, which is a condition for determining the communication state of the server communication path N2, in the auxiliary storage unit 20 or the data storage unit 23.
  • the browser execution unit 12a detects the communication state of the server communication path N2, and determines the communication state based on whether the detected communication state satisfies the server communication condition.
  • the browser execution unit 12a determines that the server communication path N2 can communicate.
  • the browser execution unit 12a determines that the server communication path N2 is not in a communicable state.
  • the tablet 31 switches the connection destination from the server 50 to the processing device 11.
  • Information (such as a network address) that designates the switching destination when switching the connection destination is included in the HTML file 63 that the server 50 transmits to the tablet 31.
  • the HTML file 63 may include terminal communication conditions.
  • the browser execution unit 33 determines the communication state of the terminal communication path N ⁇ b> 1, the browser execution unit 33 switches the connection destination based on the settings included in the HTML file 63. In this case, the tablet 31 communicates with the processing device 11 through the processing communication path N3.
  • the tablet 31 makes an inquiry based on the PLU data in the processing communication path N3, and the processing apparatus 11 operates in the same manner as the server 50 and transmits the inquiry result (price data). In addition, when the tablet 31 transmits the processing result, the processing device 11 updates the database based on the processing result transmitted by the tablet 31.
  • the processing device 11 includes an application execution unit 12d, a data control unit 12e, an auxiliary storage unit 20, and a data storage unit 23.
  • the application execution unit 12d provides the same function as the application execution unit 52 (FIG. 1) based on the data stored in the auxiliary storage unit 20 and the data storage unit 23.
  • the auxiliary storage unit 20 stores a POS application 21 and an HTML file 22.
  • the POS application 21 is an application that can be used as an alternative to the POS application 62 stored in the data storage unit 61.
  • the HTML file 22 is a file that can be used as an alternative to the HTML file 63 stored in the data storage unit 61.
  • the application execution unit 12d executes the POS application 21 to operate the web application.
  • the data storage unit 23 stores processing device side sales data 24 and processing device side master data 25.
  • the processing device side sales data 24 includes data having the same contents as the server side sales data 66
  • the processing device side master data 25 includes data having the same contents as the server side master data 67.
  • the application execution unit 12 d When the POS device 30 requests an HTML file, the application execution unit 12 d reads the HTML file 22 from the auxiliary storage unit 20 and transmits it to the POS device 30. This operation corresponds to the operations in steps S21 to S22 in FIG.
  • the application execution unit 12d receives the PLU data transmitted from the tablet 31 (step S23), and refers to the processing device side master data 25 based on the received PLU data (step S24).
  • the application execution unit 12d extracts price data corresponding to the received PLU data from the processing device side master data 25 and transmits it to the POS device 30 (step S25).
  • the application execution unit 12d receives the processing result transmitted by the POS device 30 (step S26), registers the received processing result in the processing device side sales data 24, and updates the processing device side sales data 24 (step S27). .
  • the POS application 21 and the HTML file 22 may be the same as the POS application 62 and the HTML file 63 or may be partially different.
  • the application execution unit 12 d only needs to be able to execute the web application in the same manner as the application execution unit 52.
  • the setting data related to the execution subject of the script included in the HTML file 22 may be different from the HTML file 63.
  • the processing device side master data 25 and the server side master data 67 may be the same data, but some of them may be different.
  • the price data obtained by the application execution unit 52 referring to the server-side master data 67 based on the PLU data and the price data obtained by the browser execution unit 12a referring to the processing device-side master data 25 may be the same.
  • the processing device-side sales data 24 and the server-side sales data 66 only need to include the same data based on the same processing result, and may have different data structures, for example.
  • the POS application 21 and the POS application 62, and the HTML file 22 and the HTML file 63 are the same.
  • the processing device side sales data 24 and the server side sales data 66 are the same, and the processing device side master data 25 and the server side master data 67 are the same.
  • the browser execution unit 12a determines that the server communication path N2 is not in a communicable state
  • the browser execution unit 12a accesses the application execution unit 12d and executes the web application.
  • Information specifying the application execution unit 12d as an access destination when the server communication path N2 is not in a communicable state may be included in the HTML file 63, or may be stored in the auxiliary storage unit 20 or the data storage unit 23. Further, the HTML file 63 may include server communication conditions.
  • the application execution unit 12d passes the HTML file 22 to the browser execution unit 12a in response to a request from the browser execution unit 12a, operates the web application, acquires PLU data output from the browser execution unit 12a, and obtains price data. Output.
  • the browser execution unit 12a executes the operation shown in FIG. 3A
  • the application execution unit 12d executes the operation shown in FIG.
  • the browser execution unit 12a and the application execution unit 12d transmit and receive data to and from each other inside the processing device 11. For this reason, even if the server communication path N2 is not in a communicable state, it can function as a POS.
  • the browser execution unit 33 When the browser execution unit 33 is executing the accounting process or after downloading the HTML file 63 from the server 50, it is determined that the terminal communication path N1 is not in a communicable state, the downloading of the HTML file 22 can be omitted. In this case, the browser execution unit 33 operates using the already downloaded HTML file 63. The same applies when the browser execution unit 12a determines that the server communication path N2 is not in a communicable state during execution of the accounting process or after downloading the HTML file 63.
  • FIG. 4B illustrates a state in which both the terminal communication path N1 and the server communication path N2 are determined not to be communicable, but one of the terminal communication path N1 and the server communication path N2 can communicate. The same applies when it is determined that the state is not correct.
  • the tablet 31 determines that the terminal communication path N1 is not in a communicable state, the tablet 31 accesses the application execution unit 12d regardless of the communication state of the server communication path N2, and data communication through the processing communication path N3 is performed.
  • the browser execution unit 12a determines that the server communication path N2 is not in a communicable state
  • the browser execution unit 12a accesses the application execution unit 12d regardless of the state of the terminal communication path N1, and performs the above processing. Starts.
  • the processing result of at least one of the processing device 11 and the tablet 31 is registered in the processing device side sales data 24. For this reason, the processing result during the failure avoidance operation in FIG. 4B is not registered (reflected) in the server-side sales data 66 of the database 65. That is, a mismatch occurs between the processing device side sales data 24 and the server side sales data 66. For this reason, the data processing system 1 changes the state of the terminal communication path N1 and the server communication path N2 that are determined not to be communicable (recovered) to the communicable state. Perform the recovery operation.
  • the processing device 11 and the server 50 communicate to align the processing device side sales data 24 and the server side sales data 66.
  • the processing results of the processing device 11 and the tablet 31 during the failure avoidance operation are registered in the server-side sales data 66.
  • FIG. 5 is a flowchart showing tablet side switching processing executed by the tablet 31.
  • the browser execution unit 33 detects the communication state of the terminal communication path N1 (step S41) and determines whether or not the terminal communication condition is satisfied (step S42).
  • the timing for executing step S41 is arbitrary, and may be executed while communicating with the server 50 on the terminal communication path N1, or may be executed while performing the accounting process. Further, step S41 may be executed every set time while not communicating with the server 50.
  • step S42 If the communication state of the terminal communication path N1 satisfies the terminal communication condition (step S42; Yes), the browser execution unit 33 returns to step S41 and performs the next detection. If the communication state of the terminal communication path N1 does not satisfy the terminal communication condition (step S42; No), the browser execution unit 33 refers to the setting of the HTML file 63 and acquires information regarding the connection switching destination (step). S43). Based on the acquired information, the browser execution unit 33 switches the connection destination to the processing device 11 (step S44), and notifies the processing device 11 of the switching (step S45).
  • the notification in step S45 is an access request to the application execution unit 12d of the processing device 11, for example. By performing switching in step S44, the browser execution unit 33 can execute the operation of FIG.
  • the browser execution unit 33 detects the communication state of the terminal communication path N1 during the failure avoiding operation (step S46), and determines whether or not the terminal communication condition is satisfied (step S47). When the communication state of the terminal communication path N1 does not satisfy the terminal communication condition (step S47; No), the browser execution unit 33 returns to step S46 and performs the next detection.
  • the browser execution unit 33 determines whether a transaction for the processing device 11 is being executed (step S48).
  • This transaction is a unit of processing that involves transmission / reception of data that should not be interrupted.
  • this transaction indicates processing related to one processing result registered in the server-side sales data 66 or the processing device-side sales data 24. Specifically, one transaction process is regarded as one transaction.
  • step S48 When the transaction is being executed (step S48; Yes), the browser execution unit 33 waits until the transaction being executed is completed (step S49). Specifically, it waits until the processing result is transmitted. Thereafter, the browser execution unit 33 switches the connection destination from the processing device 11 to the server 50 (step S50), and notifies the processing device 11 that the connection destination is switched to the server (step S51). If the transaction is not being executed (step S48; No), the browser execution unit 33 proceeds to step S50.
  • FIG. 6 is a flowchart showing processing device side switching processing executed by the processing device 11.
  • the processing device 11 executes both the process of switching the connection destination corresponding to the communication state of the server communication path N ⁇ b> 2 and the process corresponding to the notification of the tablet 31.
  • the browser execution unit 12a of the processing device 11 detects the communication state of the server communication path N2 (step S61), and determines whether or not the server communication condition is satisfied (step S62).
  • the timing for executing step S61 is arbitrary, and may be executed while communicating with the server 50 via the server communication path N2, or may be executed while performing the accounting process. Further, step S61 may be executed every set time while not communicating with the server 50.
  • step S62 When the communication state of the server communication path N2 satisfies the server communication condition (step S62; Yes), the browser execution unit 12a determines whether or not there is a notification for switching the communication destination from the tablet 31 (step S63). If there is no notification (step S63; No), the browser execution unit 12a returns to step S61 to perform the next detection.
  • step S62 When the communication state of the server communication path N2 does not satisfy the server communication condition (step S62; No), and when there is a notification of switching the communication destination from the tablet 31 (step S63; Yes), the browser execution unit 12a connects to the connection destination. Switch. That is, the browser execution unit 12a switches the output destination to output the processing result to the processing device side sales data 24 controlled by the application execution unit 12d (step S64), and notifies the tablet 31 that the switching has been performed (step S64). S65).
  • steps S62 to S64 when the terminal communication path N1 is not in a communicable state, the connection destination is changed to the application execution unit 12d even when the server communication path N2 is communicable.
  • step S63 and step S68 described later may be omitted.
  • the browser execution unit 12a detects the communication state of the server communication path N2 during the failure avoiding operation (step S66), and determines whether or not the server communication condition is satisfied (step S67). When the communication state of the server communication path N2 does not satisfy the server communication condition (step S67; No), the browser execution unit 12a determines whether there is a notification for switching the communication destination from the tablet 31 (step S68). If there is no notification (step S68; No), the browser execution unit 12a returns to step S66 to perform the next detection.
  • step S67 When the communication state of the server communication path N2 satisfies the server communication condition (step S67; Yes), that is, when the communication state of the server communication path N2 changes (recovers) to a communicable state, and notification from the tablet 31 If there is (step S68; Yes), the browser execution unit 12a switches the connection destination again.
  • the browser execution unit 12a determines whether the browser execution unit 12a and the application execution unit 12d are executing a transaction (step S69). In step S69, both the transaction executed by the application execution unit 12d in response to the request from the tablet 31 and the transaction executed by the browser execution unit 12a on the application execution unit 12d are determined.
  • step S69 If any transaction is being executed (step S69; Yes), the browser execution unit 12a waits until the transaction being executed is completed (step S70). Thereafter, the browser execution unit 12a switches the connection destination to the server 50 (step S71), and notifies the tablet 31 that the connection destination is switched to the server (step S72). If the transaction is not being executed (step S69; No), the browser execution unit 12a proceeds to step S71.
  • step S73 the data control unit 12e performs a process of synchronizing the database (step S73).
  • step S73 the data control unit 12e and the database control unit 53 perform data communication to align the processing device side sales data 24 and the server side sales data 66.
  • the data control unit 12e acquires information such as update history, update date / time, last update date / time, updated data, and data size for the processing device side sales data 24.
  • the database control unit 53 acquires information such as update history, update date / time, last update date / time, updated data, and data size for the server-side sales data 66.
  • the data control unit 12e and the database control unit 53 extract difference data between the processing device side sales data 24 and the server side sales data 66 by mutually transmitting and receiving and collating the acquired information. By reflecting this difference data in the processing device side sales data 24 and the server side sales data 66, the data can be matched.
  • the data control unit 12e may perform data communication with the database control unit 53, and may update the processing device side master data 25 based on the server side master data 67, and may update the POS application 21 based on the POS application 62. It may be updated. Further, the HTML file 22 may be updated based on the HTML file 63.
  • the software and data held by the processing device 11 can be matched with the software and data held by the server 50. For example, when software or data stored in the data storage unit 61 and the database 65 by the server 50 is updated or modified, the contents of the update or modification can be reflected in the software or data held by the processing device 11. .
  • the processing device 11 included in the data processing system 1 includes the data storage unit 23 that stores the processing device-side master data 25, is connected to the server 50 through the server communication path N2, Based on the server-side master data 67 of the server 50, the update processing of the processing device-side master data 25 stored in the data storage unit 23 is executed, connected to the tablet 31 through the processing communication path N 3, and the master transmitted by the tablet 31.
  • a response is made based on the processing apparatus side master data 25 stored in the data storage unit 23, and the processing result transmitted by the tablet 31 is received. Therefore, the processing device 11 can provide master data in response to a request from the tablet 31 instead of the server 50 when a communication failure occurs, and the tablet 31 can execute the processing without delay.
  • the processing device 11 can transmit the processing result received from the tablet 31 to the server 50 through the server communication path N2. Further, when the server communication path N2 does not satisfy the given server communication condition, the processing device 11 receives the processing result transmitted by the tablet 31, stores it in the data storage unit 23, and stores it in the data storage unit 23. Based on the processing result, the processing device side master data 25 stored in the data storage unit 23 is updated. For this reason, when the server communication path N2 connecting the processing device 11 to the server 50 does not satisfy the condition, the processing result transmitted by the tablet 31 can be stored and processed.
  • the processing device 11 executes processing based on the processing device side master data 25 of the data storage unit 23, and the processing result regarding the executed processing is displayed in the data storage unit 23. To accumulate. For this reason, the processing result transmitted by the tablet 31 can be stored when the communication state of the server communication path N2 does not satisfy the condition. Further, when the communication state of the server communication path N2 changes (recovers) from a state that does not satisfy the server communication condition to a state that satisfies the server communication condition, the processing device 11 displays the processing result stored in the data storage unit 23 as the server 50. Send to. For this reason, the information transmitted by the tablet 31 can be transmitted to the server 50 when the communication state of the server communication path N2 is restored to a state satisfying the condition.
  • the processing device 11 when the server communication path N2 satisfies the server communication condition, the processing device 11 is connected to the server 50 through the server communication path N2, and executes the process based on the server-side master data 67 included in the server 50.
  • the processing result regarding the processing is transmitted to the server 50. Therefore, processing can be executed based on the data held by the server 50, and the server 50 can process information related to the executed processing.
  • the tablet 31 when the terminal communication path N1 satisfies the terminal communication condition, the tablet 31 connects to the server 50 through the terminal communication path N1 and executes the process based on the server-side master data 67.
  • the processing result regarding the processing is transmitted to the server 50. Therefore, the server 50 can process information related to processing performed by the tablet 31 based on the data of the server 50.
  • the processing device 11 and the tablet 31 can perform processing by executing the POS applications 62 and 21 with a web browser.
  • the above-described embodiment is merely an aspect of the present invention, and can be arbitrarily modified and applied within the scope of the present invention.
  • devices connected to the processing apparatus 11 and the recording apparatus 41 of the present embodiment are not limited to the example shown in FIG. 1, and a card reader that reads information on a magnetic card or an IC card may be connected.
  • the printing method of the printer units 19 and 45 is the thermal method.
  • the printing method is not limited to the thermal method.
  • the specific configurations of the communication network N, the terminal communication channel N1, the server communication channel N2, the processing communication channel N3, and the wireless communication link N4 are arbitrary, and the communication protocol to be used is not limited.
  • Each functional block shown in FIGS. 1 and 2 can be arbitrarily realized by hardware and software, and does not suggest a specific hardware configuration.
  • the present invention is useful in a system in which a terminal device communicates with a server to perform data processing, and is particularly suitable when the terminal device executes data processing even if a communication failure occurs.
  • Recording device 42 ... Recording device controller 43 ... Recording device communication unit 44 ... Device connection unit 50 ... Server 51 ... Service Bar control unit 52 ... Application execution unit 53 ... Database control unit 55 ... Server communication unit 61 ... Data storage unit 62 ... POS application 63 ... HTML file 63 ... File 65 ... Database 66 66 Server side Sales data, 67 ... server side master data, N ... communication network, N1 ... terminal communication path, N2 ... server communication path, N3 ... processing communication path.

Abstract

 端末装置がサーバーと通信してデータ処理を行うシステムにおいて、通信の障害が発生しても端末装置がデータ処理を実行できるようにする。 処理装置は、処理装置側マスターデータを記憶するデータ記憶部を有し、サーバー通信路を通じてサーバーに接続し、サーバーが有するサーバー側マスターデータに基づいて、データ記憶部に記憶する処理装置側マスターデータの更新処理を実行し、処理通信路を通じてタブレットに接続し、タブレットが送信するマスターデータ送信要求に対し、データ記憶部に記憶する処理装置側マスターデータに基づいて応答し、タブレットが送信する処理結果を受信する。

Description

処理装置、及び、データ処理方法
 本発明は、データを処理する処理装置、及び、データ処理方法に関する。
 従来、サーバーに接続された端末装置が、サーバーが提供する機能を利用してデータ処理を行うシステムがあった(例えば、特許文献1参照)。この種のシステムでは、サーバーと端末装置とを接続する通信回線が遮断されると、システムが動作しなくなるという問題がある。この問題の対策として、例えば特許文献1のPOS(Point Of Sales)システムは、サーバー装置とクライアント装置との間に、回線確認装置を有する補助サーバー装置を設ける。特許文献1のシステムは、補助サーバー装置とサーバー装置とを二以上のインターネット回線で接続し、一のインターネット回線による交信が確認できない場合に、他のインターネット回線でクライアント装置とサーバー装置とが交信する。
特開2013-137666号公報
 通信障害の対策のために通信回線を冗長化する場合、各通信回線の通信状態を監視する装置を備える必要がある。例えば、特許文献1のシステムは、二以上のインターネット回線に接続された補助サーバー装置が、クライアント装置とサーバー装置との間で通信を中継し、インターネット回線による交信が確認できるか否かを監視する。このため、システムの構成が複雑化するので、このような対策を導入することは容易ではない。
 本発明は、上述した事情に鑑みてなされたものであり、端末装置がサーバーと通信してデータ処理を行うシステムにおいて、通信の障害が発生しても端末装置がデータ処理を実行できるようにすることを目的とする。
 上記目的を達成するために、本発明の処理装置は、処理装置側マスターデータを記憶するデータ記憶部を有し、サーバー通信路を通じてサーバーに接続し、前記サーバーが有するサーバー側マスターデータに基づいて、前記データ記憶部に記憶する前記処理装置側マスターデータの更新処理を実行し、処理通信路を通じて端末装置に接続し、前記端末装置が送信するマスターデータ送信要求に対し、前記データ記憶部に記憶する前記処理装置側マスターデータに基づいて応答し、前記端末装置が送信する処理情報を受信すること、を特徴とする。
 本発明によれば、サーバーが有するマスターデータと整合するデータを保持し、通信の障害が発生した場合等に、サーバーに代わって端末装置の要求に応答してマスターデータを提供できるので、端末装置が処理を滞らず実行できる。
 また、本発明の処理装置は、前記サーバー通信路が、予め設定されたサーバー通信条件を満たす場合、前記端末装置から受信する前記処理情報を、前記サーバー通信路を通じて前記サーバーに送信する。
 本発明によれば、処理装置が端末装置から受信する処理情報を、サーバーで処理できる。
 また、本発明の処理装置は、処理情報記憶部を有し、前記サーバー通信路が、予め設定されたサーバー通信条件を満たさない場合、前記端末装置が送信する前記処理情報を受信して前記処理情報記憶部に記憶し、前記処理情報記憶部に記憶する前記処理情報に基づいて前記データ記憶部に記憶する前記処理装置側マスターデータを更新する。
 本発明によれば、処理装置をサーバーに接続するサーバー通信路が条件を満たさない場合に、端末装置が送信する処理情報を記憶して処理できる。
 また、本発明の処理装置は、前記サーバー通信路が前記サーバー通信条件を満たさない場合、前記データ記憶部の前記処理装置側マスターデータに基づいて前記処理を実行し、実行した処理に関する前記処理情報を前記処理情報記憶部に蓄積する。
 本発明によれば、サーバー通信路の通信状態が条件を満たさない場合に、端末装置が送信する処理情報を記憶できる。
 また、本発明の処理装置は、前記サーバー通信路が前記サーバー通信条件を満たさない状態から前記サーバー通信条件を満たす状態に変化した場合、前記処理情報記憶部に蓄積した前記処理情報を前記サーバーに送信する。
 本発明によれば、サーバー通信路の通信状態が条件を満たす状態に回復した場合に、端末装置が送信した情報をサーバーに送信できる。
 また、本発明の処理装置は、前記サーバー通信路が前記サーバー通信条件を満たす場合、前記サーバー通信路を通じて前記サーバーに接続して、前記サーバーが有するサーバー側マスターデータに基づいて処理を実行し、実行した処理に関する処理情報を前記サーバーに送信する。
 本発明によれば、サーバーが保持するデータに基づいて処理を実行し、実行した処理に関する情報をサーバーが処理できる。
 また、上記目的を達成するために、本発明のデータ処理方法は、処理装置側マスターデータを記憶するデータ記憶部を有する処理装置によって、サーバー通信路を通じてサーバーに接続し、前記サーバーが有するサーバー側マスターデータに基づいて、前記データ記憶部に記憶する前記処理装置側マスターデータの更新処理を実行し、処理通信路を通じて端末装置に接続し、前記端末装置が送信するマスターデータ送信要求に対し、前記データ記憶部に記憶する前記処理装置側マスターデータに基づいて応答し、前記端末装置が送信する処理情報を受信し、受信する前記処理情報に基づいて前記データ記憶部に記憶する前記処理装置側マスターデータを更新し、前記端末装置によって、端末通信路が、予め設定された端末通信条件を満たさない場合、前記処理通信路を通じて前記処理装置に接続して、前記マスターデータ送信要求を送信し、前記処理装置から前記処理装置側マスターデータを受信して処理を実行し、実行した処理に関する処理情報を前記処理装置に送信する、ことを特徴とする。
 本発明によれば、サーバーが有するマスターデータと整合するデータを処理装置が保持し、通信の障害が発生した場合等に、サーバーに代わって端末装置の要求に応答してマスターデータを提供できるので、端末装置が処理を滞らず実行できる。
 また、本発明のデータ処理方法は、前記端末装置によって、前記端末通信路が前記端末通信条件を満たす場合、前記端末通信路を通じて前記サーバーに接続し、前記サーバー側マスターデータに基づいて処理を実行し、実行した処理に関する処理情報を前記サーバーに送信する。
 本発明によれば、端末装置がサーバーのデータに基づいて実行した処理に関する情報を、サーバーで処理できる。
 また、本発明のデータ処理方法は、前記処理装置及び前記端末装置によってソフトウェアをウェブブラウザーで実行することにより、前記処理を行う。
 本発明によれば、ウェブブラウザーで、通信路を通じて提供されるソフトウェアを実行して処理を行うことができる。
 このように、本発明の構成によれば、サーバーが有するマスターデータと整合するデータを保持し、通信の障害が発生した場合等に、サーバーに代わって端末装置の要求に応答してマスターデータを提供できるので、端末装置が処理を滞らず実行できる。
本実施形態に係るデータ処理システムの構成を示すブロック図。 データ処理システムの構成を示すブロック図。 データ処理システムの動作を示すフローチャート。 データ処理システムがデータを送受信する動作の説明図。 タブレットが実行するタブレット側切替処理のフローチャート。 処理装置が実行する処理装置側切替処理のフローチャート。
 以下、図面を参照して本発明の実施形態について説明する。
 図1は、本実施形態に係るデータ処理システム1の構成を示すブロック図であり、特に、サーバー50の構成を詳細に示す。
 本実施形態では、データ処理システム1は、商取引を行う店舗Lで、商取引に関する会計処理を行うPOS(Point of Sales)システムとして機能する。データ処理システム1が適用される対象の店舗Lは、商品(サービスを含む)を提供して対価の支払いを受ける事業所であり、データ処理システム1は対価を計算し支払いを受け付ける会計処理を実行し、実行した会計処理に関する情報を保存する。
 データ処理システム1は、POS装置10、及び、POS装置30を含み、POS装置10、30はそれぞれ通信ネットワークNでサーバー50に接続される。
 データ処理システム1は、サーバー50が提供するPOSアプリケーション62(ウェブアプリケーション)を、処理装置11、及びタブレット31のそれぞれがウェブブラウザーにより実行して、POS装置としての機能を実現するWebPOSシステムである。
 POS装置10は、処理装置11、及び、処理装置11に接続するモニター26、バーコードスキャナー27、カスタマーディスプレー28、キャッシュドロアー29を備える。処理装置11は、通信ネットワークNによりサーバー50に接続して、サーバー50との間で各種データを送受信する。
 POS装置30は、タブレット31(端末装置)、記録装置41、バーコードスキャナー47、カスタマーディスプレー48、及び、キャッシュドロアー49を備える。タブレット31は、平板状の本体を有する、いわゆるタブレット型コンピューターである。タブレット31は、通信ネットワークNでサーバー50に接続して、サーバー50との間で各種データを送受信する。
 POS装置10及びPOS装置30の構成については後述する。
 通信ネットワークNは、公衆回線網、専用線、携帯電話回線を含む無線通信回線、及び、これらの回線のバックボーン通信回線など、各種の通信回線またはその組合せで実現され、その具体的構成は限定されない。通信ネットワークNは、遠隔地を接続できる広域通信回線網ということができるが、通信ネットワークNが敷設された範囲、面積などは制限されない。通信ネットワークNは、上記各種通信回線を接続するサーバー装置、ゲートウェイ装置、ルーター装置等のネットワーク機器を含んでもよい。また、通信ネットワークNが複数の通信回線で構成されてもよい。
 POS装置30がサーバー50と通信する通信路を、端末通信路N1とし、POS装置10がサーバー50と通信する通信路を、サーバー通信路N2とする。端末通信路N1及びサーバー通信路N2は、通信回線に設けられる仮想的或いは論理的な通信路(パス、チャネル)を指す。端末通信路N1とサーバー通信路N2とは物理的に同じ通信回線に形成されてもよいし、物理的に異なる通信回線にそれぞれ形成されてもよい。
 本実施形態では、店舗Lに後述する通信装置5を設置し、通信装置5が通信ネットワークNに接続する構成を一例として示す。この構成では、POS装置10の処理装置11及びPOS装置30のタブレット31は、通信装置5を経由して通信ネットワークNに接続する。従って、端末通信路N1及びサーバー通信路N2は、少なくとも通信装置5と通信ネットワークNとを繋ぐ区間では共通の通信回線上にあるが、論理的には独立した通信路といえる。例えば、処理装置11とタブレット31とが別の通信装置を経由して通信ネットワークNに接続する構成も、勿論実現可能である。
 データ処理システム1は、通信回線が通信可能か否かを判定する機能を有する。すなわち、POS装置30は、端末通信路N1が通信可能な状態か否かを判定でき、POS装置10は、サーバー通信路N2が通信可能な状態が否かを判定できる。
 より詳細には、タブレット31は、端末通信路N1の通信状態を判定する条件である端末通信条件を有する。端末通信条件は、予めタブレット31に設定され、タブレット31が生成し、或いは、タブレット31が他の装置から取得するなど、何らかの方法でタブレット31に与えられる。処理装置11は、サーバー通信路N2の通信状態を判定する条件であるサーバー通信条件を有する。サーバー通信条件は、予め処理装置11に設定され、処理装置11が生成し、或いは、処理装置11が他の装置から取得するなど、何らかの方法で処理装置11に与えられる。端末通信条件は、端末通信路N1の通信状態が、通信を実行可能な状態であるか否かを判定する基準または指標となるデータを含む。サーバー通信条件は、サーバー通信路N2の通信状態が、通信を実行可能な状態であるか否かを判定する基準または指標となるデータを含む。データの具体例としては、端末通信条件は、パケット欠損率、伝送遅延時間、ノイズ比率、エラー訂正の実行状態等が挙げられる。端末通信条件、及び/又はサーバー通信条件は、サーバー50がタブレット31及び/又は処理装置11に送信してもよい。
 サーバー50は、サーバー制御部51、及び、サーバー通信部55を備える。サーバー制御部51は、アプリケーション実行部52、及び、データベース制御部53を備える。また、サーバー50には、データ記憶部61、及び、データベース65が接続する。
 サーバー通信部55は、通信ネットワークNに接続し、サーバー制御部51の制御に従って、POS装置10との間、及び、POS装置30との間でデータを送受信する。
 サーバー制御部51は、CPU、ROM、RAM、及び、その他の周辺回路を備え、CPUがプログラムを実行して、サーバー50の各部を制御する。アプリケーション実行部52及びデータベース制御部53は、サーバー制御部51のCPUがプログラムを実行して生成する、ソフトウェアの機能である。
 データ記憶部61は、アプリケーション実行部52が実行するPOSアプリケーション62、及び、POS装置10、30に送信するHTML(HyperText Markup Language)ファイル63を記憶する。
 データベース65は、サーバー側売上データ66、及び、サーバー側マスターデータ67を記憶する。データベース65は、POS装置10、30が実行する商取引の会計処理の結果をサーバー側売上データ66に登録する。つまり、サーバー側売上データ66は、データ処理システム1が処理した会計処理の結果のデータを含む。サーバー側売上データ66が含むデータは、例えば、会計処理の日時、店舗Lの名称、会計処理を実行したPOS装置10、30の識別情報(ID)、会計処理の対象となった商品の商品名、数量、単価、会計処理の合計金額、支払い方法等のデータを含む。また、現金決済を行った場合の預かり金額、釣り銭金額を含めてもよい。また、サーバー側売上データ66は、会計処理の相手である顧客に関する情報を含んでもよい。
 サーバー側マスターデータ67は、会計処理に用いるデータを蓄積する。例えば、商品の識別情報に対応する商品の単価を含む、PLU(Price Look Up)データベースを含む。商品の識別情報とは、例えば、バーコードスキャナー27、47が読み取る商品のバーコードのデータであり、いわゆるPLUデータである。また、サーバー側マスターデータ67は、商品の販売条件等に関するデータを含んでもよい。
 サーバー制御部51は、処理装置11が送信するアクセス要求、またはタブレット31が送信するアクセス要求をサーバー通信部55が受信することをトリガーとして、アプリケーション実行部52を呼び出す。アプリケーション実行部52は、POSアプリケーション62を実行して、データ記憶部61が記憶するHTMLファイル63を、処理装置11またはタブレット31に送信する。
 HTMLファイル63は、サーバー制御部51が処理装置11及びタブレット31に送信するファイルであり、処理装置11及びタブレット31が表示する表示用の画像データ、テキストデータ、及び、これらの表示態様を定めるデータを含む。HTMLファイル63は、サーバー50の機能を呼び出すスクリプトを含む。このスクリプトの実装形態は、例えばJava(登録商標)スクリプトである。
 処理装置11及びタブレット31は、後述するようにHTMLファイル63をウェブブラウザーで処理し、スクリプトの機能でサーバー50に対するデータの送信、及びサーバー50が送信するデータの処理を実行する。
 処理装置11及びタブレット31は、ウェブブラウザーがスクリプトを実行して、サーバー50に対してPLUデータを送信し、サーバー側マスターデータ67のデータを要求する。この要求は、マスターデータ送信要求に相当する。アプリケーション実行部52は、処理装置11またはタブレット31からPLUデータを受信すると、PLUデータに対応する価格データをサーバー側マスターデータ67から抽出して、処理装置11またはタブレット31に送信する。この価格データは、単価、商品名、商品カテゴリー、或いは、その他の情報等を含む。
 処理装置11またはタブレット31が、POSアプリケーション62の機能により会計処理を行った処理結果を送信し、この処理結果をサーバー通信部55が受信した場合に、アプリケーション実行部52は、受信する処理結果に基づいてサーバー側売上データ66を更新する。
 図2は、本実施形態に係るデータ処理システム1の構成を示すブロック図であり、特に、POS装置10及びPOS装置30の構成を詳細に示す。
 図2に示すように、POS装置10、30が設置される店舗Lには通信装置5が設置される。通信装置5は、広域ネットワークと店舗L内のネットワークとを接続する装置であり、例えば、スイッチ、ルーター、ゲートウェイサーバー等である。通信装置5の広域ネットワーク側は、有線の通信回線または携帯電話網等の無線通信回線で通信ネットワークNに接続する。通信装置5のLAN側のインターフェイスは、Ethernet(登録商標)等の有線LANインターフェイスや、IEEE802.11の無線LANインターフェイス、Bluetooth(登録商標)インターフェイスを含む。本実施形態では、通信装置5の有線LANインターフェイスに処理装置11が接続し、無線LANインターフェイスにタブレット31が接続する。通信装置5は、処理装置11とサーバー50との間の通信、及び、タブレット31とサーバー50との間の通信を中継する。
 また、通信装置5はLAN側に接続された機器間の通信を中継する機能を備え、具体的には、処理装置11とタブレット31とが通信装置5を通じてデータ通信可能である。処理装置11とタブレット31とが通信する通信路を、処理通信路N3とする。処理通信路N3は、店舗L内のLANに設けられる仮想的或いは論理的な通信路(パス、チャネル)を指す。処理通信路N3の一部または全部が、端末通信路N1及びサーバー通信路N2の一部と物理的に同じ通信回線に形成されてもよいし、物理的に異なる通信回線に形成されてもよい。
 タブレット31は、タブレット31の各部及び記録装置41を制御するタブレット制御部32、タブレット通信部34、タッチパネル35、及び、タブレット記憶部36を備える。
 記録装置41は、タブレット31の制御により、プリンターユニット45でレシートを印刷するプリンターである。記録装置41は、記録装置制御部42、記録装置通信部43、デバイス接続部44、及びプリンターユニット45を備える。デバイス接続部44にはバーコードスキャナー47が接続し、プリンターユニット45にはカスタマーディスプレー48及びキャッシュドロアー49が接続する。
 タブレット31は、平板状の本体の前面に設けられた表示パネル、及び、表示パネルに重ねて設けられたタッチセンサーを含むタッチパネル35を備える。この表示パネルは、液晶表示パネルや有機ELパネルで構成される。また、タッチパネル35のタッチセンサーは、静電容量式や感圧式等のセンサーであり、ユーザーの手指やペン型操作デバイス(図示略)によるタッチ操作を検出して、検出位置を示す操作データをタブレット制御部32に出力する。
 タブレット31にはウェブブラウザープログラムがインストールされており、タブレット制御部32が、タブレット記憶部36に記憶されるウェブブラウザープログラムを読み出して実行する。ブラウザー実行部33は、予め設定されたサーバーのアドレス(URL)を宛先としてリクエストを実行し、サーバー50に対してHTMLファイルの送信を要求する。ブラウザー実行部33の動作については後述する。
 タブレット記憶部36は、タブレット制御部32が実行するプログラムや、タブレット制御部32が処理するデータ等を不揮発的に記憶する。タブレット記憶部36は、例えば、ブラウザー実行部33の動作に関する設定データ、タブレット制御部32が記録装置41の各部を制御するための設定データ等を記憶する。
 タブレット通信部34は、通信装置5に接続して、タブレット制御部32の制御に従って通信装置5を通じたデータ通信を実行する。本実施形態のタブレット通信部34は、無線LANインターフェイスを有し、通信装置5と無線データ通信を実行する。
 タブレット通信部34は、記録装置通信部43とデータ通信を実行する。記録装置通信部43は、無線LANインターフェイス、或いは、Bluetooth(登録商標)やWirelessUSB等の近距離無線通信インターフェイスを有する。また、タブレット通信部34は、記録装置通信部43に対応する無線通信インターフェイスを備える。タブレット通信部34は、例えば、無線アドホックモードで、記録装置通信部43と直接通信を行ってもよいし、通信装置5が中継するネットワークを通じて通信を行ってもよい。タブレット通信部34と記録装置通信部43とを接続する通信路を無線通信リンクN4とする。記録装置41が備える記録装置制御部42は、無線通信リンクN4を通じてタブレット制御部32に接続し、タブレット制御部32が記録装置41の各部を制御する。
 記録装置制御部42は、記録装置通信部43を制御して、タブレット31とのデータ通信を実行する。また、記録装置制御部42には、デバイス接続部44及びプリンターユニット45が接続する。
 デバイス接続部44は、USBコネクター、モニター用コネクターなどのコネクター類、及び、これらのコネクターに対応するインターフェイス回路を備え、各種のデバイスを接続できる。バーコードスキャナー47は、商品、商品の包装或いは読み取り用のシート等のバーコードを読み取り、読取結果をデバイス接続部44に出力する。バーコードスキャナー47はコードを光学的に読み取って読取結果を出力できればよく、コードの具体的態様に制限はない。例えば、QRコード(登録商標)等の二次元コードでもよい。
 デバイス接続部44は、バーコードスキャナー47が出力する読取結果に基づきPLUデータを生成して、記録装置制御部42に出力する。
 プリンターユニット45は、記録装置41の筐体に収容されたロール紙を搬送する搬送機構、サーマルヘッドでロール紙に画像を記録する記録機構、及び、ロール紙を所定の位置で切断する切断機構等、ロール紙に記録するための機構を備える。プリンターユニット45は、記録装置制御部42の制御で、搬送機構でロール紙を搬送し、記録機構でロール紙にレシートの画像を記録し、切断機構でロール紙を切断して、レシートを発行する。
 また、プリンターユニット45は、外部デバイスとシリアル接続するシリアルインターフェイスを複数備え、このシリアルインターフェイスにカスタマーディスプレー48とキャッシュドロアー49とがそれぞれ接続される。プリンターユニット45は、記録装置制御部42が出力する制御信号を、シリアルインターフェイスにパススルー出力する。従って、カスタマーディスプレー48及びキャッシュドロアー49は、プリンターユニット45を通じて、記録装置制御部42にデイジーチェーン接続する。
 カスタマーディスプレー48は、プリンターユニット45から入力される制御信号に基づいて文字、記号、画像等を表示する。キャッシュドロアー49は、現金を収容するトレイ及びトレイをロックする機構を備え、プリンターユニット45から入力されるドロアーキック信号に従ってロックを解除し、トレイを開く。プリンターユニット45が、記録装置制御部42が出力する制御信号をパススルー出力すると、この制御信号に従って、カスタマーディスプレー48及びキャッシュドロアー49が動作する。
 記録装置制御部42は、サーバー制御部51がバーコードを読み取った場合に、デバイス接続部44がPLUデータ出力すると、このPLUデータをタブレット制御部32に送信する。また、記録装置制御部42は、タブレット制御部32がカスタマーディスプレー48に表示する数字等の表示データを出力した場合、この表示データに基づき表示信号を生成して、プリンターユニット45をパススルーしてカスタマーディスプレー48に送信する。記録装置制御部42は、タブレット制御部32がキャッシュドロアー49を開く指示を出力した場合、キャッシュドロアー49の駆動信号を生成して、プリンターユニット45に出力する。また、記録装置制御部42は、タブレット制御部32がレシート発行の指示と、レシートに記録するテキストデータ及び画像データを出力すると、プリンターユニット45を駆動制御して、レシートを発行する。
 図3は、データ処理システム1の動作を示すフローチャートである。図3(A)はPOS端末として動作するPOS装置10、30の動作を示し、図3(B)はサーバー50の動作を示す。
 POS装置30のブラウザー実行部33は、上述したように、予め設定されたアクセス先のデータに従って、サーバー50に対してHTMLファイル63の送信を要求する(ステップS11)。サーバー50のアプリケーション実行部52は、HTMLファイル63の送信の要求を受信して(ステップS21)、HTMLファイル63を送信する(ステップS22)。
 ブラウザー実行部33は、サーバー50が送信するHTMLファイル63をダウンロードして実行し(ステップS12)、POSの機能を有するウェブアプリケーションを実行する。
 その後、POS装置30を操作するオペレーターが、バーコードスキャナー47を操作して、商取引の対象となる商品のバーコードを読み取る(ステップS13)。デバイス接続部44は、バーコードスキャナー47が出力する読取結果を取得し(ステップS14)、PLUデータを生成してブラウザー実行部33に出力する。ブラウザー実行部33は、PLUデータをサーバー50に送信してマスターデータ送信要求を行う(ステップS15)。
 アプリケーション実行部52は、POS装置30が送信するPLUデータを受信し(ステップS23)、受信したPLUデータに基づきサーバー側マスターデータ67を参照する(ステップS24)。アプリケーション実行部52は、受信したPLUデータに対応する価格データをサーバー側マスターデータ67から取得して、POS装置30に送信する(ステップS25)。
 ブラウザー実行部33は、サーバー50が送信する価格データを受信し(ステップS16)、受信した価格データに基づき会計処理を実行する(ステップS17)。具体的には、バーコードスキャナー47が読み取ったPLUデータに対応する商品名、単価、商品カテゴリー等をタッチパネル35に表示する。また、タッチパネル35の操作により商品数量、預かり金額等が入力され、ブラウザー実行部33は、入力されたデータを取得して、ウェブアプリケーションの機能で合計金額を算出し、合計金額と釣り銭の金額等をタッチパネル35に表示する。また、ブラウザー実行部33は、必要に応じてキャッシュドロアー49を開く指示を送信する。
 1回の会計処理で複数の商品を処理する場合、データ処理システム1は、図3(A)のステップS13~S17及び図3(B)のステップS22~S25の処理を繰り返し実行する。
 ブラウザー実行部33は、レシートを発行するための発行指示、テキストデータ、及び画像データを記録装置41に出力して、レシートを発行する(ステップS18)。ブラウザー実行部33は、レシートの発行が完了したとき、レシートの発行後にタッチパネル35で完了を指示する操作が行われたとき、或いは、キャッシュドロアー49が閉じられたときに、1回の会計処理が完了したと判定する。1回の会計処理が完了した場合、ブラウザー実行部33は、会計処理の結果を示す処理結果(処理情報)をサーバー50に送信する(ステップS19)。ここで、ブラウザー実行部33は、複数回の会計処理の処理結果をまとめてサーバー50に送信してもよい。
 アプリケーション実行部52は、POS装置30が送信する処理結果を受信して(ステップS26)、処理結果をデータベース65のサーバー側売上データ66に登録し、サーバー側売上データ66を更新する(ステップS27)。
 このように、POS装置30は、オペレーターの操作に応じてPOSとして会計処理を実行し、会計処理の結果がサーバー側売上データ66に反映される。
 処理装置11は、プリンターユニット19によりレシートを印刷するプリンターであり、補助記憶部20(ソフトウェア記憶部)及びデータ記憶部23(処理情報記憶部)に記憶するデータに基づきデータ処理を実行する機能を備える。
 処理装置11は、プリンターユニット19による印刷の制御、及び、データ処理を実行する処理装置制御部12を備える。処理装置制御部12は、処理装置通信部17、デバイス接続部18、プリンターユニット19、補助記憶部20、及びデータ記憶部23に接続する。POS装置10が備えるデバイスのうち、モニター26及びバーコードスキャナー27はデバイス接続部18に接続し、カスタマーディスプレー28及びキャッシュドロアー29はプリンターユニット19に接続する。
 処理装置通信部17は、例えば有線LANインターフェイスで通信装置5に接続する。処理装置通信部17は、処理装置制御部12の制御に従って、サーバー50に対するデータ通信を実行する。また、処理装置通信部17は、通信装置5を通じてタブレット31とデータ通信を行う。なお、処理装置通信部17が無線LANインターフェイスを有し、通信装置5に無線接続してもよく、処理装置通信部17がタブレット31のタブレット通信部34に直接、無線接続して通信を行う構成でもよい。
 デバイス接続部18は、USBコネクター、モニター用コネクターなどのコネクター類、及び、これらのコネクターに対応するインターフェイス回路を備え、各種のデバイスを接続できる。
 モニター26は、液晶表示パネルや有機ELパネル等の表示画面を有し、デバイス接続部18から入力される表示信号に基づき各種画面を表示する。デバイス接続部18は、処理装置制御部12の制御に従って、モニター26に表示信号を出力する。
 バーコードスキャナー27は、商品、商品の包装或いは読み取り用のシート等のバーコードを読み取り、読取結果をデバイス接続部18に出力する。POS装置10を操作するオペレーターが、販売する商品を登録するときに、バーコードスキャナー27で商品のバーコードを読み取る操作を行う。バーコードスキャナー27は、例えばバーコードスキャナー47と同様に構成できる。デバイス接続部18は、バーコードスキャナー27が出力するPLUデータを取得して、処理装置制御部12に出力する。
 プリンターユニット19は、処理装置11の筐体に収容されたロール紙を搬送する搬送機構、サーマルヘッドでロール紙に画像を記録する記録機構、及び、ロール紙を所定の位置で切断する切断機構等、ロール紙に記録するための機構を備える。プリンターユニット19は、処理装置制御部12の制御で、搬送機構でロール紙を搬送し、記録機構でロール紙にレシートの画像を記録し、切断機構でロール紙を切断して、レシートを発行する。
 また、プリンターユニット19は、外部デバイスとシリアル接続するシリアルインターフェイスを複数備え、このシリアルインターフェイスにカスタマーディスプレー28とキャッシュドロアー29とがそれぞれ接続される。プリンターユニット19は、処理装置制御部12が出力する制御信号を、シリアルインターフェイスにパススルー出力する。従って、カスタマーディスプレー28及びキャッシュドロアー29は、プリンターユニット19を通じて、処理装置制御部12にデイジーチェーン接続する。
 カスタマーディスプレー28は、プリンターユニット19から入力される制御信号に基づいて文字、記号、画像等を表示する。キャッシュドロアー29は、キャッシュドロアー49と同様に構成され、プリンターユニット19から入力されるドロアーキック信号に従ってロックを解除してトレイを開く。プリンターユニット19が、処理装置制御部12が出力する制御信号をパススルー出力すると、この制御信号に従って、カスタマーディスプレー28及びキャッシュドロアー29が動作する。
 処理装置制御部12は、CPU、ROM、RAM、及び、その他の周辺回路を備え、CPUがプログラムを実行して、処理装置11の各部を制御する。ブラウザー実行部12a、デバイス制御部12b、プリンター制御部12c、アプリケーション実行部12d、及びデータ制御部12eは、処理装置制御部12のCPUがプログラムを実行して生成する、ソフトウェアの機能である。
 ブラウザー実行部12aは、補助記憶部20、データ記憶部23、または図示しない他の記憶部が記憶するブラウザープログラムを実行する。ブラウザー実行部12aは、ウェブブラウザーでHTMLファイルを読み込んで実行し、画面表示用の表示データを生成してデバイス制御部12bに出力する。また、ブラウザー実行部12aは、実行するHTMLファイルがスクリプトを含む場合、このスクリプトを実行する。また、ブラウザー実行部12aは、スクリプトを実行してレシートを印刷させる場合に、印刷するテキストデータや画像データをプリンター制御部12cに出力する。
 デバイス制御部12bは、デバイス接続部18に接続するモニター26、バーコードスキャナー27、及び、プリンターユニット19に接続するカスタマーディスプレー28、及びキャッシュドロアー29の接続を検出する。デバイス制御部12bは、ブラウザー実行部12aが出力する表示データを、モニター26に適した表示信号に変換してデバイス接続部18に出力し、或いは、デバイス接続部18に表示データを出力して表示信号に変換させる。また、デバイス制御部12bは、デバイス接続部18がPLUデータを出力した場合に、このPLUデータを取得してブラウザー実行部12aに出力する。
 プリンター制御部12cは、ブラウザー実行部12aが出力するテキストデータや画像データに基づき、プリンターユニット19を制御して、レシートを印刷する。
 ブラウザー実行部12aは、HTMLファイル63に基づきウェブアプリケーションを実行して、POS装置30が有するブラウザー実行部33と同様に、POSとして会計処理を実行する。
 ブラウザー実行部12aは、図3(A)に示したブラウザー実行部33の動作を実行する。ブラウザー実行部12aは、予め設定されたアクセス先のデータに従って、サーバー50に対してHTMLファイル63の送信を要求し(ステップS11)、サーバー50が送信するHTMLファイル63をダウンロードして実行し(ステップS12)、ウェブアプリケーションを実行する。
 POS装置10を操作するオペレーターが、バーコードスキャナー27を操作して、商取引の対象となる商品のバーコードを読み取ると(ステップS13)、デバイス接続部18が読取結果を取得し(ステップS14)、PLUデータを生成してブラウザー実行部12aに出力する。ブラウザー実行部12aは、PLUデータをサーバー50に送信する(ステップS15)。
 その後、ブラウザー実行部12aが送信したPLUデータに対応する価格データをサーバー50が送信すると、ブラウザー実行部12aは価格データを受信し(ステップS16)、受信した価格データに基づき会計処理を実行する(ステップS17)。
 ここで、ブラウザー実行部12aは、バーコードスキャナー27が読み取ったPLUデータに対応する商品名、単価、商品カテゴリー等をモニター26に表示する。また、バーコードスキャナー27によるバーコードの読み取り、又は、図示しない入力デバイスの操作により、商品数量、預かり金額等が入力されると、ブラウザー実行部12aは、入力されたデータを取得する。ブラウザー実行部12aは、入力データに基づきウェブアプリケーションの機能で合計金額を算出し、合計金額と釣り銭の金額等をモニター26に表示する。また、ブラウザー実行部12aは、必要に応じてキャッシュドロアー29を開く指示を送信する。
 ブラウザー実行部12aは、レシートを発行するための発行指示、テキストデータ、及び画像データをプリンターユニット19に出力して、レシートを発行する(ステップS18)。ブラウザー実行部12aは、1回の会計処理が完了したと判定した場合、会計処理の結果を示す処理結果(処理情報)をサーバー50に送信する(ステップS19)。ブラウザー実行部12aは、複数回の会計処理の処理結果をまとめてサーバー50に送信してもよい。
 ブラウザー実行部12aが上記ステップS11~S19の動作を実行する間、アプリケーション実行部52は、POS装置30がウェブアプリケーションを実行する場合と同様に、図3(B)の動作を実行する。
 このように、POS装置10は、POS装置30と同様、オペレーターの操作に応じてPOSとして会計処理を実行し、POS装置10の会計処理の結果がサーバー側売上データ66に反映される。
 図4は、データ処理システム1がデータを送受信する動作の説明図であり、(A)は通常時の動作、(B)は通信回線の障害回避動作、(C)は通信回線の障害からの復旧動作を示す。
 図4(A)は、POS装置10とサーバー50、及び、POS装置30とサーバー50とが通信を行ってPOSの機能を実行する場合の動作を示す。タブレット31は、端末通信路N1を通じてサーバー50と通信する。タブレット31は、端末通信路N1でPLUデータに基づく問合せを行い、サーバー50が問合せの結果(価格データ)を送信し、タブレット31が処理結果を送信する。また、処理装置11は、サーバー通信路N2を通じてサーバー50と通信し、PLUデータに基づく問合せを行い、サーバー50が問合せの結果(価格データ)を送信し、処理装置11が処理結果を送信する。サーバー50は、処理装置11及びタブレット31が送信する処理結果に基づき、データベース65のサーバー側売上データ66を更新する。
 ブラウザー実行部33は、端末通信路N1の通信状態を判定する。タブレット31は、端末通信路N1の通信状態を判定する条件である端末通信条件をタブレット記憶部36に記憶する。ブラウザー実行部33は、端末通信路N1の通信状態を検出し、検出した通信状態が端末通信条件を満たすか否かに基づき、通信状態を判定する。端末通信路N1の通信状態が端末通信条件を満たす場合、ブラウザー実行部33は、端末通信路N1が通信可能な状態と判定する。また、端末通信路N1の通信状態が端末通信条件を満たさない場合、ブラウザー実行部33は、端末通信路N1が通信可能な状態でないと判定する。
 また、ブラウザー実行部12aは、サーバー通信路N2の通信状態を判定する。処理装置11は、サーバー通信路N2の通信状態を判定する条件であるサーバー通信条件を補助記憶部20またはデータ記憶部23に記憶する。ブラウザー実行部12aは、サーバー通信路N2の通信状態を検出し、検出した通信状態がサーバー通信条件を満たすか否かに基づき、通信状態を判定する。サーバー通信路N2の通信状態がサーバー通信条件を満たす場合、ブラウザー実行部12aは、サーバー通信路N2が通信可能な状態と判定する。また、サーバー通信路N2の通信状態がサーバー通信条件を満たさない場合、ブラウザー実行部12aは、サーバー通信路N2が通信可能な状態でないと判定する。
 図4(B)に示すように、端末通信路N1が通信可能な状態でないと判定した場合、タブレット31は、接続先をサーバー50から処理装置11に切り替える。接続先を切り替える場合の切替先を指定する情報(ネットワークアドレスなど)は、サーバー50がタブレット31に送信するHTMLファイル63に含まれる。また、HTMLファイル63は、端末通信条件を含んでもよい。ブラウザー実行部33は、端末通信路N1の通信状態を判定した後、ブラウザー実行部33がHTMLファイル63に含まれる設定に基づき、接続先を切り替える。
 この場合、タブレット31は、処理通信路N3を通じて処理装置11と通信する。タブレット31は、処理通信路N3でPLUデータに基づく問合せを行い、処理装置11が、サーバー50と同様に動作して、問合せの結果(価格データ)を送信する。また、タブレット31が処理結果を送信すると、処理装置11は、タブレット31が送信する処理結果に基づき、データベースを更新する。
 この動作を行うため、処理装置11は、アプリケーション実行部12d、データ制御部12e、補助記憶部20及びデータ記憶部23を備える。
 アプリケーション実行部12dは、補助記憶部20及びデータ記憶部23が記憶するデータに基づき、アプリケーション実行部52(図1)と同様の機能を提供する。
 補助記憶部20は、POSアプリケーション21、及び、HTMLファイル22を記憶する。POSアプリケーション21は、データ記憶部61が記憶するPOSアプリケーション62の代替として使用可能なアプリケーションである。HTMLファイル22は、データ記憶部61が記憶するHTMLファイル63の代替として使用可能なファイルである。アプリケーション実行部12dは、POSアプリケーション21を実行してウェブアプリケーションを動作させる。
 データ記憶部23は、処理装置側売上データ24、及び、処理装置側マスターデータ25を記憶する。処理装置側売上データ24はサーバー側売上データ66と同じ内容のデータを含み、処理装置側マスターデータ25はサーバー側マスターデータ67と同じ内容のデータを含む。
 アプリケーション実行部12dは、POS装置30がHTMLファイルを要求した場合に、補助記憶部20からHTMLファイル22を読み出して、POS装置30に送信する。この動作は図3(B)のステップS21~S22の動作に対応する。
 また、アプリケーション実行部12dは、タブレット31が送信するPLUデータを受信して(ステップS23)、受信したPLUデータに基づき処理装置側マスターデータ25を参照する(ステップS24)。アプリケーション実行部12dは、受信したPLUデータに対応する価格データを処理装置側マスターデータ25から抽出して、POS装置30に送信する(ステップS25)。
 アプリケーション実行部12dは、POS装置30が送信する処理結果を受信し(ステップS26)、受信した処理結果を処理装置側売上データ24に登録し、処理装置側売上データ24を更新する(ステップS27)。
 POSアプリケーション21及びHTMLファイル22は、POSアプリケーション62及びHTMLファイル63と同一でもよいし、一部が異なっていてもよい。アプリケーション実行部12dがアプリケーション実行部52と同様にウェブアプリケーションを実行できればよく、例えばHTMLファイル22が含むスクリプトの実行主体に関する設定データは、HTMLファイル63とは異なっていてもよい。
 また、処理装置側マスターデータ25とサーバー側マスターデータ67とは同一のデータでもよいが、一部が異なっていてもよい。アプリケーション実行部52がPLUデータに基づいてサーバー側マスターデータ67を参照して得る価格データと、ブラウザー実行部12aが処理装置側マスターデータ25を参照して得る価格データとが一致すればよい。処理装置側売上データ24とサーバー側売上データ66とは、同じ処理結果に基づく同じデータを含んでいればよく、例えばデータ構造等が異なっていてもよい。
 最も単純な例では、POSアプリケーション21とPOSアプリケーション62、及び、HTMLファイル22とHTMLファイル63とが、それぞれ同一である。また、処理装置側売上データ24とサーバー側売上データ66、及び、処理装置側マスターデータ25とサーバー側マスターデータ67とが、それぞれ同一である。
 図4(B)に示すように、ブラウザー実行部12aが、サーバー通信路N2が通信可能な状態でないと判定した場合、ブラウザー実行部12aは、アプリケーション実行部12dにアクセスしてウェブアプリケーションを実行する。サーバー通信路N2が通信可能な状態でない場合のアクセス先としてアプリケーション実行部12dを指定する情報は、HTMLファイル63が含んでもよいし、補助記憶部20またはデータ記憶部23が記憶してもよい。また、HTMLファイル63は、サーバー通信条件を含んでもよい。
 アプリケーション実行部12dは、ブラウザー実行部12aの要求に応じてHTMLファイル22をブラウザー実行部12aに渡して、ウェブアプリケーションを動作させ、ブラウザー実行部12aが出力するPLUデータを取得して、価格データを出力する。この場合、ブラウザー実行部12aは図3(A)の動作を実行し、アプリケーション実行部12dは図3(B)の動作を実行する。
 この場合、処理装置11の内部において、ブラウザー実行部12a及びアプリケーション実行部12dが互いにデータを送受信する。このため、サーバー通信路N2が通信可能な状態でなくても、POSとして機能できる。
 ブラウザー実行部33が会計処理の実行中、または、HTMLファイル63をサーバー50からダウンロードした後に、端末通信路N1が通信可能な状態でないと判定された場合、HTMLファイル22のダウンロードを省略できる。この場合、ブラウザー実行部33は、既にダウンロードしたHTMLファイル63を使用して動作する。ブラウザー実行部12aが、会計処理の実行中またはHTMLファイル63をダウンロードした後に、サーバー通信路N2が通信可能な状態でないと判定した場合も同様である。
 図4(B)には、端末通信路N1及びサーバー通信路N2の両方が、通信可能な状態でないと判定された状態を図示するが、端末通信路N1及びサーバー通信路N2の一方が通信可能な状態でないと判定された場合も同様である。タブレット31が、端末通信路N1が通信可能な状態でないと判定した場合、サーバー通信路N2の通信状態に関わらず、タブレット31がアプリケーション実行部12dにアクセスし、処理通信路N3を通じたデータ通信が開始する。また、ブラウザー実行部12aが、サーバー通信路N2が通信可能な状態でないと判定した場合、端末通信路N1の状態に関わらず、ブラウザー実行部12aがアプリケーション実行部12dにアクセスして、上記の処理が開始する。
 データ処理システム1が図4(B)の障害回避動作を行うと、処理装置11及びタブレット31の少なくともいずれかの処理結果が、処理装置側売上データ24に登録される。このため、図4(B)の障害回避動作中の処理結果は、データベース65のサーバー側売上データ66に登録(反映)されない。つまり、処理装置側売上データ24とサーバー側売上データ66の不整合が発生する。
 このため、データ処理システム1は、端末通信路N1及びサーバー通信路N2のうち、通信可能な状態でないと判定された通信路が、通信可能な状態に変化(回復)すると、図4(C)の復旧動作を実行する。この復旧動作では、処理装置11とサーバー50とが通信を行い、処理装置側売上データ24とサーバー側売上データ66を整合させる。これにより、サーバー側売上データ66に、障害回避動作中の処理装置11及びタブレット31の処理結果が登録される。
 図5は、タブレット31が実行するタブレット側切替処理を示すフローチャートである。
 ブラウザー実行部33は、端末通信路N1の通信状態を検出し(ステップS41)、端末通信条件を満たすか否かを判定する(ステップS42)。ステップS41を実行するタイミングは任意であり、端末通信路N1でサーバー50と通信中に実行してもよいし、会計処理を行う間に実行してもよい。また、サーバー50と通信していない間も設定された時間毎にステップS41を実行してもよい。
 端末通信路N1の通信状態が端末通信条件を満たす場合(ステップS42;Yes)、ブラウザー実行部33はステップS41に戻って次の検出を行う。また、端末通信路N1の通信状態が端末通信条件を満たさない場合(ステップS42;No)、ブラウザー実行部33は、HTMLファイル63の設定を参照して接続の切替先に関する情報を取得する(ステップS43)。ブラウザー実行部33は取得した情報に基づき、接続先を処理装置11に切り替えて(ステップS44)、処理装置11に対して切替を通知する(ステップS45)。ステップS45の通知は、例えば、処理装置11のアプリケーション実行部12dに対するアクセス要求である。ステップS44で切り替えを行うことにより、ブラウザー実行部33は、図4(B)の動作を実行できる。
 その後、ブラウザー実行部33は、障害回避動作中に、端末通信路N1の通信状態を検出し(ステップS46)、端末通信条件を満たすか否かを判定する(ステップS47)。端末通信路N1の通信状態が端末通信条件を満たさない場合(ステップS47;No)、ブラウザー実行部33はステップS46に戻って次の検出を行う。
 端末通信路N1の通信状態が端末通信条件を満たす場合(ステップS47;Yes)、つまり、端末通信路N1の通信状態が、通信可能な状態に変化(回復)した場合、ブラウザー実行部33は、接続先を再度切り替えるための動作を行う。まず、ブラウザー実行部33は、処理装置11に対するトランザクションを実行中であるか否かを判定する(ステップS48)。このトランザクションは、中断すべきでないデータの送受信を伴う処理の単位であり、本実施形態では、サーバー側売上データ66または処理装置側売上データ24に登録する1つの処理結果に関係する処理を指す。具体的には、1回の会計処理を1つのトランザクションとする。
 トランザクションを実行中である場合(ステップS48;Yes)、ブラウザー実行部33は、実行中のトランザクションが完了するまで待機する(ステップS49)。具体的には処理結果を送信するまで待機する。その後、ブラウザー実行部33は、接続先を処理装置11からサーバー50に切り替え(ステップS50)、処理装置11に対して、接続先をサーバーに切り替えることを通知する(ステップS51)。また、トランザクションを実行中でない場合(ステップS48;No)、ブラウザー実行部33はステップS50に移行する。
 図6は、処理装置11が実行する処理装置側切替処理を示すフローチャートである。図6の処理で、処理装置11は、サーバー通信路N2の通信状態に対応して接続先を切り替える処理と、タブレット31の通知に対応する処理との両方を実行する。
 処理装置11のブラウザー実行部12aは、サーバー通信路N2の通信状態を検出し(ステップS61)、サーバー通信条件を満たすか否かを判定する(ステップS62)。ステップS61を実行するタイミングは任意であり、サーバー通信路N2でサーバー50と通信中に実行してもよいし、会計処理を行う間に実行してもよい。また、サーバー50と通信していない間も設定された時間毎にステップS61を実行してもよい。
 サーバー通信路N2の通信状態がサーバー通信条件を満たす場合(ステップS62;Yes)、ブラウザー実行部12aは、タブレット31から通信先を切り替える通知の有無を判定する(ステップS63)。そして、通知がない場合(ステップS63;No)、ブラウザー実行部12aはステップS61に戻って次の検出を行う。
 サーバー通信路N2の通信状態がサーバー通信条件を満たさない場合(ステップS62;No)、及び、タブレット31から通信先を切り替える通知があった場合(ステップS63;Yes)、ブラウザー実行部12aは接続先の切り替えを行う。即ち、ブラウザー実行部12aは、処理結果を出力する出力先を、アプリケーション実行部12dが制御する処理装置側売上データ24に切り替え(ステップS64)、タブレット31に切替を行ったことを通知する(ステップS65)。ステップS62~S64では、端末通信路N1が通信可能な状態でない場合に、サーバー通信路N2が通信可能な状態でも、接続先がアプリケーション実行部12dに変更する。これは、処理装置側売上データ24とサーバー側売上データ66との両方が、それぞれ異なる状態に更新されないようにする対策である。処理装置側売上データ24とサーバー側売上データ66との差分を、相互に組み込む処理が可能な場合、ステップS63と、後述するステップS68を省略してもよい。
 ブラウザー実行部12aは、障害回避動作中に、サーバー通信路N2の通信状態を検出し(ステップS66)、サーバー通信条件を満たすか否かを判定する(ステップS67)。サーバー通信路N2の通信状態がサーバー通信条件を満たさない場合(ステップS67;No)、ブラウザー実行部12aは、タブレット31から通信先を切り替える通知の有無を判定する(ステップS68)。そして、通知がない場合(ステップS68;No)、ブラウザー実行部12aはステップS66に戻って次の検出を行う。
 サーバー通信路N2の通信状態がサーバー通信条件を満たす場合(ステップS67;Yes)、つまり、サーバー通信路N2の通信状態が、通信可能な状態に変化(回復)した場合、及び、タブレット31から通知があった場合(ステップS68;Yes)、ブラウザー実行部12aは、接続先を再度切り替える。まず、ブラウザー実行部12aは、ブラウザー実行部12a及びアプリケーション実行部12dがトランザクションを実行中であるか否かを判定する(ステップS69)。ステップS69では、タブレット31の要求に対応してアプリケーション実行部12dが実行するトランザクション、及び、ブラウザー実行部12aがアプリケーション実行部12dに対して行うトランザクションの両方について判定する。いずれかのトランザクションを実行中である場合(ステップS69;Yes)、ブラウザー実行部12aは、実行中のトランザクションが完了するまで待機する(ステップS70)。
 その後、ブラウザー実行部12aは、接続先をサーバー50に切り替え(ステップS71)、タブレット31に対して、接続先をサーバーに切り替えることを通知する(ステップS72)。また、トランザクションを実行中でない場合(ステップS69;No)、ブラウザー実行部12aはステップS71に移行する。
 接続先をサーバー50に切り替えた後、データ制御部12eが、データベースを同期する処理を行う(ステップS73)。ステップS73では、データ制御部12eとデータベース制御部53とがデータ通信を行い、処理装置側売上データ24とサーバー側売上データ66とを整合させる。例えば、データ制御部12eが、処理装置側売上データ24について、更新履歴、更新日時、最終更新日時、更新されたデータ、データサイズ等の情報を取得する。また、データベース制御部53が、サーバー側売上データ66について、更新履歴、更新日時、最終更新日時、更新されたデータ、データサイズ等の情報を取得する。そして、データ制御部12e及びデータベース制御部53が、取得した情報を相互に送受信して照合することで、処理装置側売上データ24とサーバー側売上データ66の差分データを抽出する。この差分データを処理装置側売上データ24とサーバー側売上データ66に反映することで、データを一致させることができる。
 このステップS73で、データ制御部12eは、データベース制御部53とデータ通信を行い、処理装置側マスターデータ25をサーバー側マスターデータ67に基づき更新してもよく、POSアプリケーション21をPOSアプリケーション62に基づき更新してもよい。また、HTMLファイル22をHTMLファイル63に基づき更新してもよい。この処理により、処理装置11が保持するソフトウェア及びデータを、サーバー50が保持するソフトウェア及びデータと整合させることができる。例えば、サーバー50がデータ記憶部61及びデータベース65に記憶するソフトウェアやデータが更新または改修された場合に、この更新または改修の内容を、処理装置11が保持するソフトウェアやデータに反映させることができる。
 以上説明したように、本実施形態に係るデータ処理システム1が備える処理装置11は、処理装置側マスターデータ25を記憶するデータ記憶部23を有し、サーバー通信路N2を通じてサーバー50に接続し、サーバー50が有するサーバー側マスターデータ67に基づいて、データ記憶部23に記憶する処理装置側マスターデータ25の更新処理を実行し、処理通信路N3を通じてタブレット31に接続し、タブレット31が送信するマスターデータ送信要求に対し、データ記憶部23に記憶する処理装置側マスターデータ25に基づいて応答し、タブレット31が送信する処理結果を受信する。このため、処理装置11は、通信の障害が発生した場合等に、サーバー50に代わってタブレット31の要求に応答してマスターデータを提供でき、タブレット31が処理を滞らず実行できる。
 また、処理装置11は、サーバー通信路N2が、与えられたサーバー通信条件を満たす場合、タブレット31から受信する処理結果を、サーバー通信路N2を通じてサーバー50に送信できる。
 また、処理装置11は、サーバー通信路N2が、与えられたサーバー通信条件を満たさない場合、タブレット31が送信する処理結果を受信してデータ記憶部23に記憶し、データ記憶部23に記憶する処理結果に基づいてデータ記憶部23に記憶する処理装置側マスターデータ25を更新する。このため、処理装置11をサーバー50に接続するサーバー通信路N2が条件を満たさない場合に、タブレット31が送信する処理結果を記憶して処理できる。
 また、処理装置11は、サーバー通信路N2がサーバー通信条件を満たさない場合、データ記憶部23の処理装置側マスターデータ25に基づいて処理を実行し、実行した処理に関する処理結果をデータ記憶部23に蓄積する。このため、サーバー通信路N2の通信状態が条件を満たさない場合に、タブレット31が送信する処理結果を記憶できる。
 また、処理装置11は、サーバー通信路N2の通信状態が、サーバー通信条件を満たさない状態からサーバー通信条件を満たす状態に変化(回復)した場合、データ記憶部23に蓄積した処理結果をサーバー50に送信する。このため、サーバー通信路N2の通信状態が条件を満たす状態に回復した場合に、タブレット31が送信した情報をサーバー50に送信できる。
 また、処理装置11は、サーバー通信路N2がサーバー通信条件を満たす場合、サーバー通信路N2を通じてサーバー50に接続して、サーバー50が有するサーバー側マスターデータ67に基づいて処理を実行し、実行した処理に関する処理結果をサーバー50に送信する。このため、サーバー50が保持するデータに基づいて処理を実行し、実行した処理に関する情報をサーバー50が処理できる。
 また、データ処理システム1では、タブレット31が、端末通信路N1が端末通信条件を満たす場合、端末通信路N1を通じてサーバー50に接続し、サーバー側マスターデータ67に基づいて処理を実行し、実行した処理に関する処理結果をサーバー50に送信する。このため、タブレット31がサーバー50のデータに基づいて実行した処理に関する情報を、サーバー50で処理できる。
 また、処理装置11及びタブレット31は、POSアプリケーション62、21をウェブブラウザーで実行することにより、処理を行うことができる。
 なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。例えば、本実施形態の処理装置11、記録装置41に接続されるデバイスは図1に示した例に限定されず、磁気カードやICカードの情報を読み取るカードリーダーを接続してもよい。また、上述した実施形態では、プリンターユニット19、45のプリント方式は、サーマル方式とした。しかしながら、プリント方式は、サーマル方式に限定されない。また、通信ネットワークN、端末通信路N1、サーバー通信路N2、処理通信路N3、及び無線通信リンクN4の具体的な構成は任意であり、使用する通信プロトコルも制限されない。また、図1、2に示す各機能ブロックはハードウェアとソフトウェアにより任意に実現可能であり、特定のハードウェア構成を示唆するものではない。
 以上説明したように、本発明は、端末装置がサーバーと通信してデータ処理を行うシステムにおいて有用であり、特に、通信の障害が発生しても端末装置がデータ処理を実行する場合に適する。
 1…データ処理システム、5…通信装置、10…POS装置、11…処理装置、12…処理装置制御部、12a…ブラウザー実行部、12b…デバイス制御部、12c…プリンター制御部、12d…アプリケーション実行部、12e…データ制御部、17…処理装置通信部、18…デバイス接続部、20…補助記憶部、21…POSアプリケーション、22…HTMLファイル、23…データ記憶部(処理情報記憶部)、24…処理装置側売上データ、25…処理装置側マスターデータ、30…POS装置、31…タブレット(端末装置)、32…タブレット制御部、33…ブラウザー実行部、34…タブレット通信部、41…記録装置、42…記録装置制御部、43…記録装置通信部、44…デバイス接続部、50…サーバー、51…サーバー制御部、52…アプリケーション実行部、53…データベース制御部、55…サーバー通信部、61…データ記憶部、62…POSアプリケーション、63…HTMLファイル、63…ファイル、65…データベース、66…サーバー側売上データ、67…サーバー側マスターデータ、N…通信ネットワーク、N1…端末通信路、N2…サーバー通信路、N3…処理通信路。

Claims (14)

  1.  処理装置側マスターデータを記憶するデータ記憶部を有し、
     サーバー通信路を通じてサーバーに接続し、前記サーバーが有するサーバー側マスターデータに基づいて、前記データ記憶部に記憶する前記処理装置側マスターデータの更新処理を実行し、
     処理通信路を通じて端末装置に接続し、前記端末装置が送信するマスターデータ送信要求に対し、前記データ記憶部に記憶する前記処理装置側マスターデータに基づいて応答し、前記端末装置が送信する処理情報を受信すること、
     を特徴とする処理装置。
  2.  前記サーバー通信路が、予め設定されたサーバー通信条件を満たす場合、
     前記端末装置から受信した前記処理情報を、前記サーバー通信路を通じて前記サーバーに送信する、請求項1記載の処理装置。
  3.  処理情報記憶部を有し、
     前記サーバー通信路が、予め設定されたサーバー通信条件を満たさない場合、
     前記端末装置が送信する前記処理情報を受信して前記処理情報記憶部に記憶し、前記処理情報記憶部に記憶する前記処理情報に基づいて前記データ記憶部に記憶する前記処理装置側マスターデータを更新する、請求項1または2記載の処理装置。
  4.  前記サーバー通信路が前記サーバー通信条件を満たさない場合、
     前記データ記憶部の前記処理装置側マスターデータに基づいて前記処理を実行し、実行した処理に関する前記処理情報を前記処理情報記憶部に蓄積する、請求項3記載の処理装置。
  5.  前記サーバー通信路が前記サーバー通信条件を満たさない状態から前記サーバー通信条件を満たす状態に変化した場合、前記処理情報記憶部に蓄積した前記処理情報を前記サーバーに送信する、請求項4記載の処理装置。
  6.  前記サーバー通信路が前記サーバー通信条件を満たす場合、前記サーバー通信路を通じて前記サーバーにマスターデータ送信要求を送信して、前記サーバーから前記サーバー側マスターデータを受信して処理を実行し、実行した処理に関する処理情報を、前記サーバー通信路を通じて前記サーバーに送信する、請求項2記載の処理装置。
  7.  処理装置と、当該処理装置とサーバーとを接続するサーバー通信路と、前記サーバーと端末装置とを接続する端末通信路と、前記端末装置と前記処理装置とを接続する処理通信路とを備えるデータ処理方法であって、
     前記処理装置は、処理装置側マスターデータを記憶し、前記サーバー通信路を通じて、前記サーバーが有するサーバー側マスターデータに基づいて、前記処理装置側マスターデータの更新処理を実行し、
     前記端末通信路が、予め設定された端末通信条件を満たさない場合、
     前記端末装置は前記処理通信路を通じて、前記処理装置にマスターデータ送信要求を送信し、前記処理装置から前記処理装置側マスターデータを受信して処理を実行し、実行した処理に関する処理情報を前記処理装置に送信し、
     前記処理装置は前記処理通信路を通じて、前記端末装置から受信した、マスターデータ送信要求に対し、前記処理装置側マスターデータに基づいて応答し、前記端末装置が送信する処理情報を受信し、受信した前記処理情報に基づいて前記処理装置側マスターデータを更新する、
     ことを特徴とするデータ処理方法。
  8.  前記サーバー通信路が、予め設定されたサーバー通信条件を満たす場合、
     前記処理装置は前記端末装置から受信した前記処理情報を、前記サーバー通信路を通じて前記サーバーに送信する、請求項7記載のデータ処理方法。
  9.  前記サーバー通信路が、予め設定されたサーバー通信条件を満たさない場合、
     前記処理装置は前記端末装置が送信する前記処理情報を受信して記憶し、当該前記処理情報に基づいて前記処理装置側マスターデータを更新する、請求項7または8記載のデータ処理方法。
  10.  前記サーバー通信路が前記サーバー通信条件を満たさない場合、
     前記処理装置は前記処理装置側マスターデータに基づいて前記処理を実行し、実行した処理に関する前記処理情報を蓄積する、請求項8記載のデータ処理方法。
  11.  前記サーバー通信路が前記サーバー通信条件を満たさない状態から前記サーバー通信条件を満たす状態に変化した場合、前記処理装置は蓄積した前記処理情報を、前記サーバー通信路を通じて前記サーバーに送信する、請求項10記載のデータ処理方法。
  12.  前記サーバー通信路が前記サーバー通信条件を満たす場合、
     前記処理装置は前記サーバー通信路を通じて前記サーバーにマスターデータ送信要求を送信して、前記サーバーから前記サーバー側マスターデータを受信して処理を実行し、実行した処理に関する処理情報を、前記サーバー通信路を通じて前記サーバーに送信する、請求項8記載のデータ処理方法。
  13.  前記端末通信路が前記端末通信条件を満たす場合、
     前記端末装置は前記端末通信路を通じて、前記サーバーにマスターデータ送信要求を送信し、前記サーバーから前記サーバー側マスターデータを受信して処理を実行し、実行した処理に関する処理情報を前記サーバーに送信する、請求項7記載のデータ処理方法。
  14.  前記処理は、前記処理装置及び前記端末装置がウェブブラウザーでソフトウェアを実行することにより、行われる、請求項7記載のデータ処理方法。
PCT/JP2015/004468 2014-09-04 2015-09-02 処理装置、及び、データ処理方法 WO2016035340A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP15837877.8A EP3190522A4 (en) 2014-09-04 2015-09-02 Processing device and data processing method
KR1020177000649A KR101877813B1 (ko) 2014-09-04 2015-09-02 처리 장치 및, 데이터 처리 방법
US15/329,184 US10536531B2 (en) 2014-09-04 2015-09-02 Printer and data processing method
JP2016546327A JP6589870B2 (ja) 2014-09-04 2015-09-02 プリンター、及び、データ処理方法
CN201580047148.3A CN106796552B (zh) 2014-09-04 2015-09-02 处理装置以及数据处理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014180378 2014-09-04
JP2014-180378 2014-09-04

Publications (1)

Publication Number Publication Date
WO2016035340A1 true WO2016035340A1 (ja) 2016-03-10

Family

ID=55439419

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/004468 WO2016035340A1 (ja) 2014-09-04 2015-09-02 処理装置、及び、データ処理方法

Country Status (6)

Country Link
US (1) US10536531B2 (ja)
EP (1) EP3190522A4 (ja)
JP (1) JP6589870B2 (ja)
KR (1) KR101877813B1 (ja)
CN (1) CN106796552B (ja)
WO (1) WO2016035340A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112764946A (zh) * 2021-01-08 2021-05-07 重庆创通联智物联网有限公司 跨进程数据传输方法、装置、电子设备和存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7037289B2 (ja) * 2017-06-26 2022-03-16 三菱重工業株式会社 制御切替装置、プラント、制御切替方法およびプログラム
NL2020277B1 (en) * 2018-01-15 2019-07-25 Numus Entpr B V Device with a network connection to a (cloud) server for coupling a cash drawer, a point of sale (POS) system and various peripherals, for integrating sales- and payment transactions for managing, monitoring, reporting and securing counter sales
JP2020042582A (ja) * 2018-09-11 2020-03-19 セイコーエプソン株式会社 情報処理装置、情報処理装置の制御方法、及び、プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000076549A (ja) * 1998-09-01 2000-03-14 Nec Corp 複数プライスルックアップ・メンテナンス方式および方法
JP2011053842A (ja) * 2009-08-31 2011-03-17 Teraoka Seiko Co Ltd 携帯端末およびposシステム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2924905B2 (ja) * 1988-03-25 1999-07-26 エヌシーアール インターナショナル インコーポレイテッド フアイル・バツクアツプ・システム
JPH04126423A (ja) * 1990-09-17 1992-04-27 Omron Corp データ処理システム
GB9819354D0 (en) * 1998-09-04 1998-10-28 Seiko Epson Corp Pos terminal,method of controlling the pos terminal,pos system using the pos terminal and information storage medium
JP2000286858A (ja) * 1999-03-31 2000-10-13 Fujitsu General Ltd Dmmによるデータ管理システム
JP2001229097A (ja) 2000-02-18 2001-08-24 Fujitsu Ltd 分散処理システム及びクライアント
US20080126213A1 (en) * 2006-09-14 2008-05-29 Gilbarco Inc. Peer-to-peer data replication for off-line transactions in a retail fueling environment
US7954712B2 (en) * 2008-09-12 2011-06-07 Transparent Visibility Holdings, LLC Product, asset, and device tracking, identification, and pricing system
JP5381009B2 (ja) * 2008-10-20 2014-01-08 セイコーエプソン株式会社 デバイス制御システム
JP5293086B2 (ja) * 2008-10-28 2013-09-18 セイコーエプソン株式会社 情報配信システム、情報配信システムのサービス実現方法およびそのプログラム
JP5321311B2 (ja) * 2009-07-17 2013-10-23 セイコーエプソン株式会社 通信制御装置
US20110093344A1 (en) * 2009-10-21 2011-04-21 Burke Wells D Targeted interactive content for in-store retail customers
JP2013137666A (ja) 2011-12-28 2013-07-11 Focus Advertising Inc Web−POSシステム
KR20140062930A (ko) * 2012-11-15 2014-05-27 박혜경 전력케이블 연결장치
JP5925138B2 (ja) * 2013-01-16 2016-05-25 東芝テック株式会社 情報処理装置及びプログラム
JP6064703B2 (ja) * 2013-03-15 2017-01-25 ブラザー工業株式会社 中継サーバ

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000076549A (ja) * 1998-09-01 2000-03-14 Nec Corp 複数プライスルックアップ・メンテナンス方式および方法
JP2011053842A (ja) * 2009-08-31 2011-03-17 Teraoka Seiko Co Ltd 携帯端末およびposシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3190522A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112764946A (zh) * 2021-01-08 2021-05-07 重庆创通联智物联网有限公司 跨进程数据传输方法、装置、电子设备和存储介质
CN112764946B (zh) * 2021-01-08 2024-02-02 重庆创通联智物联网有限公司 跨进程数据传输方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
KR101877813B1 (ko) 2018-07-12
US10536531B2 (en) 2020-01-14
EP3190522A4 (en) 2018-02-07
JP6589870B2 (ja) 2019-10-16
CN106796552A (zh) 2017-05-31
US20170223111A1 (en) 2017-08-03
KR20170018899A (ko) 2017-02-20
EP3190522A1 (en) 2017-07-12
CN106796552B (zh) 2020-05-05
JPWO2016035340A1 (ja) 2017-06-22

Similar Documents

Publication Publication Date Title
JP6572884B2 (ja) Posシステム及びposシステムの制御方法
JP6589870B2 (ja) プリンター、及び、データ処理方法
US9727852B2 (en) Control device, control system, and control method of a control device
JP2013250602A (ja) 端末装置、端末装置の制御方法、及び、プログラム
US9697509B2 (en) Control system, control method thereof, and controller thereof
TWI505178B (zh) Printing systems and printers
US10068219B2 (en) Information processing method and recording system
JP2009015747A (ja) ネットワークシステムおよびプログラム
US10032152B2 (en) Transmission system that enables correlation between a sending device and each of multiple receiving devices
JP6756267B2 (ja) データ処理システム、及び、データ処理方法
JP6191385B2 (ja) 送信システム、ホスト装置、及び、データ送信方法
KR101634450B1 (ko) 표시 시스템, 표시 장치, 및 표시 방법
US20150154582A1 (en) Print control system and print control method
JP6364740B2 (ja) 送信システム、送信装置、及び、送信装置のデータ送信方法
JP2013250844A (ja) 端末装置、及び、posシステム
JP6206083B2 (ja) 送信システム、送信装置、及び、データ送信方法
JP6160437B2 (ja) Posシステム、ホスト装置、及び、ホスト装置の制御方法
JP6405844B2 (ja) ネットワークシステム、及び、通信方法
JP6160436B2 (ja) Posシステム、ホスト装置、及び、ホスト装置の制御方法
JP6171837B2 (ja) 送信システム、送信装置、及び、データ送信方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15837877

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016546327

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20177000649

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15329184

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015837877

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015837877

Country of ref document: EP