Industrial Field of the Invention
[0001] The present invention relates to a POS (Point of Sale) system, a method of controlling
the POS system, and an information storage medium. More particularly, the present
invention relates to a POS system including a printer provided with nonvolatile storage
means, a POS terminal capable of being connected to the printer, and a store controller
capable of being connected to the POS terminal wherein the POS terminal is realized
by an NC (Network Computer) and wherein transaction data generated by the POS terminal
and other data such as a total sales amount associated with the transaction data can
be stored in the nonvolatile storage device provided in the printer and the transaction
data and other data stored in the nonvolatile storage device can also be saved in
the store controller, and also to a method of controlling such a POS system, and an
information storage medium.
Description of the Related Art
[0002] A POS system including POS terminals, a printer, and a store controller is widely
used. Information associated with an article such as the article code (a code uniquely
identifying an article and distinguishing it from other articles), the number of units
of articles, the amount of price reduction, and correction data is input to the POS
terminal via a bar code scanner and/or a keyboard. From this information, transaction
data and associated data such as total sales data are generated in the POS terminal,
and these are transmitted to the store controller. The store controller saves the
received transaction data and associated data for use in the accounting calculation
performed later. The POS terminal generates a receipt print command on the basis of
information about the article name, the price, the number of units of the article,
and the amount of price reduction, and transmits the command to the printer. The printer
issues a receipt in accordance with the received print command.
[0003] For each sale the transaction data includes the article code, the article name, the
per unit price, the number of units of the article, the amount of price reduction,
and the correction data associated with an article sold. The transaction data also
includes information about the sale's start and end times, the operator's name, and
the POS terminal number.
[0004] The total sales data includes the total sales amount, the consumption tax, and the
amount of price reduction.
[0005] It is desirable that the POS terminal for use in such a POS system be reasonably
low in cost. It is also desirable that the program executed in the POS terminal can
be easily managed so that for example the program can be easily updated. To meet the
above requirements, a promising technique is to employ an NC (Network Computer) as
a POS terminal.
[0006] The NC is a particular type of computer constructed in accordance with the standard
established together with the standards of the JAVA language and the JAVA OS (Operating
System). In a POS system using an NC, the NC serving as a POS terminal downloads a
program from a store controller serving as a server, and performs various processes
described above by executing the program.
[0007] In the POS system, it is required that even when a failure or trouble occurs in some
device or some part in the system, processes can be continued without being stopped.
Furthermore, it is also required that any data including the transaction data be not
lost by such a failure. For example, when trouble occurs in a communication line between
the store controller and the POS terminal or in the store controller itself, if the
POS terminal is still working, it is required that accounting processes associated
with articles be continued without being stopped, and the transaction data be stored.
Problems to be Solved by the Invention
[0008] As described above, the NC is constructed with hardware according to a special standard.
However, in this standard, a nonvolatile storage device (flash EEPROM (Electrically
Erasable Programmable Read Only Memory)) of the NC has a limitation in terms of its
usage. This limitation makes it difficult to store the transaction data generated
by the POS terminal in the nonvolatile storage device of the NC.
[0009] In view of the above, it is a general object of the present invention to solve the
above problem. More specifically, it is an object of the present invention to provide
a POS system including a printer, a POS terminal capable of being connected to the
printer, and a store controller capable of being connected to the POS terminal, a
method of controlling these devices, and an information storage medium wherein the
POS terminal is realized by an NC and wherein transaction data generated by the POS
terminal and other associated data can be reliably stored in such a way that even
when a failure or trouble occurs in some device or some part in the system, sales
processing can be continued without being stopped and the transaction data can be
temporarily stored in a nonvolatile storage device and read and transferred to the
store controller when the failure or the problem is removed.
Means for Solving the Problems
[0010] The above objects are achieved by the present invention as defined in the claims
and having various aspects as described below.
[0011] According to a first aspect of the invention, there is provided a POS system including
a POS terminal, a printer connected to the POS terminal, and a store controller connected
to the POS terminal, wherein: the POS terminal comprises data generation means for
generating transaction data; first data transmission means for transmitting the transaction
data generated to the printer; and second data transmission means for transmitting
the transaction data to the store controller; the printer comprises first reception
means for receiving the transaction data transmitted by the first data transmission
means; and first nonvolatile storage means for storing the transaction data received
via the first reception means; and the store controller comprises second reception
means for receiving the transaction data transmitted by the second data transmission
means; and second nonvolatile storage means for storing the transaction data received
via the second reception means. The printer further comprises third data transmission
means for transmitting the transaction data stored in the first nonvolatile storage
means of the printer to the POS terminal, the POS terminal further comprises third
reception means for receiving the transaction data transmitted by the third data transmission
means; and fourth data transmission means for transmitting the transaction data received
via the third reception means to the store controller; and the store controller further
comprises fourth reception means for receiving the transaction data transmitted by
the fourth transmission means.
[0012] In this first aspect of the invention, the data generation means of the POS terminal
generates transaction data, the first data transmission means transmits the transaction
data to the printer, and the second data transmission means transmits the transaction
data to the store controller. The first reception means of the printer receives the
transaction data, and the first nonvolatile storage means stores the transmitted transaction
data. The second reception means of the store controller receives the transaction
data transmitted by the second data transmission means, and the second nonvolatile
storage means stores the transmitted transaction data.
[0013] According to this first aspect of the invention, it is possible to provide a POS
system in which a POS terminal is realized by an NC having no nonvolatile storage
device for storing transaction data. The first nonvolatile storage means provided
in the printer is used for storing the transaction data which are additionally stored
in the second nonvolatile storage means provided in the store controller. If a failure
occurs in the communication link between the POS terminal and the store controller,
the POS terminal can still be used and the transaction data stored in the first nonvolatile
storage means. After the failure has been fixed, transaction data that have temporarily
stored only in the first nonvolatile storage means can be read and stored in the second
nonvolatile storage means.
[0014] According to a second aspect of the invention the store controller further comprises
third nonvolatile storage means for backing up the transaction data stored in the
second nonvolatile storage means.
[0015] According to a third aspect of the present invention, there is provided a POS system
wherein the store controller further comprises storage notification means for transmitting
notification data to the POS terminal to notify that a backup of the transaction data
in the second nonvolatile storage means has bean made in the third nonvolatile storage
means; the POS terminal further comprises notification data reception means for receiving
the notification data transmitted from the storage notification means, the notification
data notifying that the transaction data has been backed up in the third nonvolatile
storage means; and command transmission means for transmitting a command to the printer
to delete the transaction data stored in the first nonvolatile storage means when
the notification data reception means receives notification data notifying that the
transaction data has been backed up to the third nonvolatile storage means; and the
printer further comprises command reception means for receiving the command transmitted
by the POS terminal, the command requiring the printer to delete the transaction data
stored in the first nonvolatile storage means; and delete means responsive to the
delete command for deleting the transaction data stored in the first nonvolatile storage
means.
[0016] In this third aspect of the invention, the storage notification means of the store
controller transmits notification data to the POS terminal to notify that a backup
of the transaction data has been made in the third nonvolatile storage means, the
notification data reception means of the POS terminal receives the notification data
transmitted from the storage notification means and notifying that the transaction
data has been backed up in the third nonvolatile storage means, the command transmission
means transmits a command to the printer to delete the transaction data stored in
the first nonvolatile storage means when the notification data reception means receives
notification data notifying that the transaction data has been backed up in the third
nonvolatile storage means, the command reception means of the printer receives the
command transmitted by the POS terminal requiring the printer to delete the transaction
data stored in the first nonvolatile storage means, and the delete means, in response
to the delete command, deletes the transaction data stored in the first nonvolatile
storage means.
[0017] Thus, in the POS system according to the third aspect of the invention, if the printer
is informed that the transaction data stored in the printer has been transferred to
the store controller and stored therein in both the second and the third nonvolatile
memory means, the printer deletes the transaction data stored in the first nonvolatile
memory means.
[0018] According to a fourth aspect based on any of the first to third aspects of the invention,
there is provided a POS system wherein a plurality of sales data such as a total sales
amount are stored, read, or deleted separately from or together with the transaction
data.
[0019] According to this fourth aspect of the invention, it is possible to provide a POS
system in which even when data other than the transaction data is used by the store
controller for example to reduce the time required to perform the accounting process,
such data can also be stored in the printer thereby holding it in a similar manner
to the transaction data.
[0020] According to a fifth aspect of the invention, there is provided a POS terminal capable
of being connected to a printer and a store controller, wherein the POS terminal comprises
data generation means for generating transaction data; first data transmission means
for transmitting the data generated by the transaction data generation means to the
printer; and second data transmission means for transmitting the transaction data
generated by the data generation means to the store controller.
[0021] According to a sixth aspect of the invention, there is provided a POS terminal further
comprising third reception means for receiving the transaction data transmitted by
the printer; and fourth data transmission means for transmitting the transaction data
received via the third reception means to the store controller.
[0022] According to a seventh aspect of the invention, there is provided a POS terminal
further comprising notification data reception means for receiving notification data
transmitted from the store controller and notifying that the transaction data has
been stored; and command transmission means for transmitting a command to delete the
transaction data stored in the printer when the notification data reception means
receives notification data notifying that the transaction data has been stored.
[0023] According to an eighth aspect of the invention, there is provided a POS terminal
in which a plurality of sales data such as a total sales amount are processed separately
from or together with the transaction data.
[0024] According to any of the fifth to eighth aspects of the invention, it is possible
to provide a POS terminal used in the POS system described earlier.
[0025] According to a ninth aspect of the invention, there is provided a printer capable
of being connected to a POS terminal, wherein the printer comprises first reception
means for receiving transaction data transmitted from the POS terminal; and first
nonvolatile storage means for storing the transaction data received via the first
reception means.
[0026] According to a tenth aspect of the invention, there is provided a printer further
comprising third data transmission means for transmitting the transaction data stored
in the first nonvolatile storage means to the POS terminal.
[0027] According to an eleventh aspect of the invention, there is provided a printer further
comprising command reception means for receiving a command transmitted by the POS
terminal and requiring the printer to delete the transaction data stored in the first
nonvolatile storage means; and delete means for deleting the transaction data stored
in the first nonvolatile storage means.
[0028] According to a twelfth aspect of the invention, there is provided a printer wherein
the first nonvolatile storage means stores a plurality of sales data including a total
sales amount separately from or together with said transaction data.
[0029] According to any of the ninth to twelfth aspects of the invention, it is possible
to provide a printer used in the POS system described earlier.
[0030] According to a thirteenth aspect of the invention, there is provided a method of
controlling a POS terminal capable of being connected to a printer and also to a store
controller, wherein the method comprises the steps of generating transaction data;
transmitting the generated transaction data to the printer; and transmitting the generated
transaction data to the store controller.
[0031] According to a fourteenth aspect of the invention, there is provided a method of
controlling a POS terminal, further comprising the steps of receiving the transaction
data transmitted from the printer; and transmitting the received transaction data
to the store controller.
[0032] According to a fifteenth aspect of the invention, there is provided a method of controlling
a POS terminal, further comprising the steps of receiving notification data transmitted
from the store controller and notifying that the transaction data has been stored;
and upon receipt of the notification data notifying that the transaction data has
been stored, transmitting a command to the printer to request to delete the transaction
data stored in the printer.
[0033] According to a sixteenth aspect of the invention, there is provided a method of controlling
a POS terminal, further comprising the steps of processing a plurality of sales data
including a total sales amount.
[0034] According to any of the thirteenth to sixteenth aspects of the invention, it is possible
to provide a method of controlling the POS terminal used in the POS system.
[0035] According to a seventeenth aspect of the invention, there is provided a method of
controlling a printer used in conjunction with a POS terminal capable of being connected
to the printer, wherein the method comprises the steps of receiving transaction data
transmitted by the POS terminal; and storing the received transaction data in a nonvolatile
manner.
[0036] According to an eighteenth aspect of the invention, there is provided a method of
controlling a printer, further comprising the step of transmitting the stored transaction
data to the POS terminal.
[0037] According to a nineteenth aspect of the invention, there is provided a method of
controlling a printer, further comprising the steps of receiving a command transmitted
by the POS terminal and requiring the printer to delete the transaction data; and
deleting the stored transaction data in response to the delete command.
[0038] According to a twentieth aspect of the invention, there is provided a method of controlling
a printer, further comprising the step of processing a plurality of sales data including
a total sales amount separately from or together with said transaction data.
[0039] According to any of the seventeenth to twentieth aspects of the invention, it is
possible to provide a method of controlling the printer used in the POS system described
above.
[0040] According to a twenty-first aspect of the invention, there is provided an information
storage medium on which a computer program is stored, the computer program implementing
a method of controlling a POS terminal capable of being connected to a printer and
also to a store controller, the control method comprising the steps of generating
transaction data; transmitting the generated transaction data to the printer; and
transmitting the generated transaction data to the store controller.
[0041] According to a twenty-second aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the POS terminal is stored, the control method further comprising the steps of receiving
the transaction data transmitted from the printer; and transmitting the received transaction
data to the store controller.
[0042] According to a twenty-third aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the POS terminal is stored, the control method further comprising the steps of: receiving
notification data transmitted from the store controller and notifying that the transaction
data has been stored; and upon receipt of the notification data notifying that the
transaction data has been stored, transmitting a command to the printer to notify
that the transaction data stored in the printer should be deleted.
[0043] According to a twenty-fourth aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the POS terminal is stored, the control method further comprising the steps of: processing
a plurality of sales data including a total sales amount separately from or together
with the transaction data.
[0044] According to a twenty-fifth aspect of the invention, there is provided an information
storage medium on which a computer program is stored, the computer program implementing
a method of controlling a printer capable of being connected to a POS terminal, the
control method comprising the steps of: receiving transaction data transmitted by
the POS terminal; and storing the received transaction data.
[0045] According to a twenty-sixth aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the printer is stored, the control method further comprising the step of transmitting
the stored transaction data to the POS terminal.
[0046] According to a twenty-seventh aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the printer is stored, the control method further comprising the steps of receiving
a command transmitted by the POS terminal and requiring the printer to delete the
transaction data; and deleting the stored transaction data in response to the delete
command.
[0047] According to a twenty-eighth aspect of the invention, there is provided an information
storage medium on which a computer program implementing the method of controlling
the printer is stored, the control method further comprising the step of processing
a plurality of sales data including a total sales amount separately from or together
with said transaction data.
[0048] According to any of the twenty-first to twenty-eighth aspects of the invention, it
is possible to easily distribute or sell an information storage medium on which a
program is stored as a software product independently of hardware such as the POS
terminal and the printer. Furthermore, the POS system, the POS terminal, the printer,
and the method of controlling the system or the devices according to the invention
can be implemented by executing the program stored on the information storage medium
on the POS terminal or the printer.
[0049] Further objects and features of the invention will be appreciated from the following
description of preferred embodiments in conjunction with the accompanying drawings.
Brief Description of the Drawings
[0050]
- Fig. 1
- is a block diagram illustrating the main parts of an embodiment of a POS system according
to the invention.
- Fig. 2
- is a flow chart illustrating the process of storing sales data performed by a POS
terminal according to the present invention.
- Fig. 3
- is a flow chart illustrating the process of storing transaction data according to
the present invention.
- Fig. 4
- is a flow chart illustrating a process performed by a printer according to the present
invention.
Embodiments
[0051] Fig. 1 is a block diagram schematically illustrating the main parts of an embodiment
of a POS system according to the invention.
[0052] In the present embodiment, the POS system includes a POS terminal 101, a printer
111, and a store controller 121. The POS terminal 101 is connected to the printer
111 and also to the store controller 121 so that communication is possible between
these devices. The connection between the POS terminal 101 and the printer 111 may
be realized, for example, via a serial communication line, and the connection between
the POS terminal 101 and the store controller 121 may be realized, for example, via
an Ethernet communication line.
[0053] Information associated with an article such as the article code, the number of units
of the article, the amount of price reduction, and correction data is input to the
POS terminal 101 via a bar code reader 102 and/or a keyboard 103. Interfaces 104 and
105 serve as transmitting and receiving devices for transmitting and receiving data,
notifications, and commands between the POS terminal 101 and the store controller
121 or the printer 111. A CPU 106 loads a program from a flash EEPROM 107 into a RAM
(Random Access Memory) 109 and executes the program thereby generating transaction
data from information input via the bar code reader 102 and/or the keyboard 103 and
transmitting the generated transaction data to the printer 111 and the store controller
121. The CPU 106 also generates a receipt print command and sends it to the printer
111. In addition to the transaction data, a plurality of sales data including a total
sales amount are generated as required and processed in a manner similar to that of
the transaction data.
[0054] When the POS terminal 101 is started or when a program updating command is transmitted
from the store controller 121 to the POS terminal 101, the program stored in the store
controller 121 is transferred to the POS terminal 101 and stored in the EEPROM 107.
That is, the EEPROM 107 serves as an information storage medium for storing the program
executed by the CPU 106.
[0055] The bar code reader 102, the keyboard 103, the interface 104, the interface 105,
the CPU 106, the EEPROM 107, and the RAM 109 are connected to each other via a bus
108.
[0056] The CPU 106 forms transaction data generation means. The interface 104 forms second
and fourth data transmission means and also notification data reception means. The
interface 105 forms first data transmission means, second data reception means, and
command transmission means.
[0057] The printer 111 communicates with the POS terminal via an interface 112. If the printer
111 receives a receipt print command via the interface 112, a print processing device
114 including a print head, a platen, and a paper feeding device prints a receipt.
If the printer 111 receives transaction data via the interface 112, the received transaction
data is stored in a flash EEPROM 113. On the other hand, if a delete command is received
from the POS terminal 101, the transaction data stored in the EEPROM 113 is deleted.
The processes described above are performed under the control of a CPU 115. The interface
112, the EEPROM 113, the print processing device 114, and the CPU 115 are connected
to each other via a bus 116.
[0058] Although not shown in Fig. 1, the bus 116 is also connected to a ROM (Read Only Memory)
serving as an information storage medium for storing a program executed by the CPU
115.
[0059] The flash EEPROM 113 stores a plurality of sales data including a total sales amount.
In response to an inquiry from the POS terminal 101, the data stored in the EEPROM
113 is transmitted to the POS terminal. The POS terminal 101 transfers the data received
from the printer to the store controller 121 as required. As mentioned above, normally
data transferred to the printer 111 and stored in the flash EEPROM 113 are also transferred
to the store controller and stored on hard disk 123. The use of EEPROM 113 in the
printer 111 for storing transaction data and sales data allows continued use of the
POS terminal 101 even if for some reason data transfer to the store controller is
temporarily impossible. In such case, the transaction data are stored only in EEPROM
113. After the problem has been fixed and data can again be transmitted from the POS
terminal to the store controller, the POS terminal reads the data that could not be
sent to the store controller from EEPROM 113 and then sends them to the store controller
so that they be stored on hard disk 123. In this way the data stored in the store
controller are completed.
[0060] The interface 112 forms first reception means, third data transmission means, and
command reception means. The EEPROM 113 forms first nonvolatile storage means, and
the CPU 115 forms delete means.
[0061] The store controller communicates with the POS terminal via an interface 122. The
store controller stores and holds transaction data received from the POS terminal
on a hard disk 123 and, as a backup, on a magnetic tape 124 as will be explained in
detail later. When the transaction data stored on the hard disk 123 has been backed
up to the magnetic tape 124, the store controller transmits to the POS terminal an
acknowledgment signal indicating that the transaction data is backed up and encourages
it to make the printer 111 delete the transaction data stored therein. The hard disk
123 and/or the magnetic tape 124 also stores the program to be executed by the POS
terminal. The operations described above are performed under the control of a CPU
125. A RAM 126 is used as a storage area for temporarily storing data during an accounting
calculation process. When the data transmitted by the POS terminal includes a plurality
of sales data such as a total sales amount, these data are processed as required in
a manner similar to that of the transaction data.
[0062] The interface 122, the hard disk 123, the magnetic tape 124, the CPU 125, and the
RAM 126 are connected to each other via a bus 127.
[0063] The interface 122 forms second and fourth reception means and backup notification
means. The hard disk 123 forms second nonvolatile storage means. The magnetic tape
124 forms third nonvolatile storage means.
[0064] The hard disk 123 and/or the magnetic tape 124 may also be used as information storage
means for storing the program to be executed by the CPU 125 of the store controller
121.
[0065] In the specific example described above, a flash EEPROM, a hard disk, and a magnetic
tape are used as nonvolatile storage means in the printer 111 and the store controller
121, respectively. However, other types of memories such as a magneto-optical disk
and a floppy disk may additionally or alternatively be employed.
[0066] Referring now to the flow chart shown in Fig. 2, the sales data storage process performed
by the POS terminal 101 according to the present invention is described below. Of
various processes, the sales data storage process is the one that is performed most
frequently in the POS system according to the present invention. In this process,
the transaction data is stored at two or more locations.
[0067] The CPU 106 of the POS terminal 101 waits in step S201 until information such as
the article code, the number of units of the article, the amount of price reduction
or other correction data is input via the bar code reader 102 and/or the keyboard
103. When a bar code indicating the article code is directly printed on an article
or a bar code label is attached to an article, data is input via the bar code reader
102. If the bar code reader 102 fails to read data or if there is no bar code attached
to an article, data is input via the keyboard 103.
[0068] The name of the operator of the POS terminal 101 is input via the keyboard 103 or
the bar code reader 102. Alternatively, the name of the operator of the POS terminal
101 may be input via an ID card reader or by operating a special key provided on the
POS terminal 101. The information associated with an article may also be input by
detecting a radio wave generated by a label attached to the article. In this case,
a radio wave receiving device is used instead of the bar code reader 102.
[0069] At the next step (S202), the CPU 106 generates transaction data from the input information.
The transaction data includes the article code, the number of units of the article,
the per-unit price of the article, correction data, price reduction data, the operators
name, the store number, the start/end time, etc. The transaction data includes all
information which is input to the POS terminal 101 and which will be used by the store
controller 121 to perform the accounting calculation.
[0070] When the transaction data is generated, it is required to derive the price of the
article from the input information such as the article code. To this end, a price
table such as a price look-up table (hereinafter PLU) is used. The price table is
a database representing the relationship between the article code and the price for
each article offered by this store. This database is stored in the store controller
121, and transferred together with the program from the store controller 121 to the
POS terminal 101. The transferred database is stored in the flash EEPROM 107.
[0071] The CPU 106 transmits the generated transaction data to both the store controller
121 and the printer 111 via the interfaces 105 and 104, respectively, (steps S203
and S204). The received transaction data is stored in the nonvolatile storage means
of the printer 111 (flash EEPROM 113 in the example) as well as that of the store
controller 121 (hard disk 123 in the example).
[0072] In steps S203 and S204, a plurality of sales data including a total sales amount
may be transmitted independently of or together with the transaction data.
[0073] The CPU 106 then generates a receipt print command to print a receipt which will
be given to the customer (step S205) and transmits the receipt print command to the
printer 111 via the interface 105. In response to the receipt print command, the printer
111 prints a receipt.
[0074] After completion of the transmission of the transaction data and the transmission
of the receipt print command, the process returns to step S201 to be repeatedly performed.
[0075] The order of the processing steps described above may be changed as required. More
specifically, the order of the processing steps may be changed arbitrarily or some
steps may be processed in parallel as long as steps S203 and S204 are performed after
step S202, and step S206 is performed after step S205.
[0076] Referring now to the flow chart shown in Fig. 3, the process performed to backup
the transaction data according to the present invention is described below. In the
POS system according to the present invention, the process of backing up the transaction
data is performed for example when a daily accounting calculation is performed after
the store is closed. This process is necessary to ensure that the transaction data
is always stored at two or more locations. When there is other data such as total
sales data in addition to the transaction data, such data is usually processed together
with and/or in the same way as the transaction data, although the following description
deals only with the process of storing the transaction data.
[0077] At the first step (S301) in the transaction data storage process, an end process
is performed in the POS terminal 101. In the end process, the total sales amount for
the whole day is calculated and a confirmation is made of whether the process has
been completed for all transaction data. After completion of the end process in the
POS terminal, end information indicating that the end process is completed is transmitted
to the store controller via the interface 104.
[0078] The store controller 121 performs a store closing process (step S302). In the store
closing process, it is confirmed that the end process is completed in all POS terminals,
for example, on the basis of the end information transmitted from each POS terminal.
Furthermore, the total sales amount of the store for the whole day is calculated and
a report is made or issued.
[0079] After completion of the store closing process, the store controller 121 performs
a backup process to backup the transaction data and associated data to the magnetic
tape 124 (step S303).
[0080] After completion of the backup process, the store controller 121 informs the POS
terminal 101 via the interface 122 that the backup process is completed (step S304).
[0081] On receipt of the backup completion signal, the CPU 106 of the POS terminal 101 transmits
a command via the interface 105 to the printer 111 to require deletion of the transaction
data stored in the flash EEPROM 113 (step S305), thus all of the data saving and backing
up process is completed. In response to the above command, the CPU 115 of the printer
111 deletes the transaction data stored in the flash EEPROM 113.
[0082] The backup completion signal to the POS terminal in step S304 and the delete command
from the POS terminal to the printer in step S305 may be transmitted in the store
opening process the next day.
[0083] The process performed by the printer according to the present invention is described
below with reference to the flow chart shown in Fig. 4.
[0084] The CPU 115 of the printer 111 waits for a command to be transmitted from the POS
terminal via the interface 112 (step S401). If the CPU 115 receives a command from
the POS terminal, the CPU 115 interprets the command (step S402).
[0085] If the command is a receipt print command (step S402), the CPU 115 drives the print
processing device 114 in accordance with the command so as to print a receipt (step
S403). After that, the process returns to step S401.
[0086] In the case where it is determined in step S402 that the command is a transaction
data storage command, that is, in the case where transaction data is received, the
CPU 115 stores the transaction data in the flash EEPROM 113 (step S404). After that
the process returns to step S401.
[0087] If it is determined in step S402 that the command is a transaction data read command,
then the CPU 115 reads out the transaction data from the flash EEPROM 113 and transmits
it to the POS terminal 101 via the interface 112 (step S405). After that the process
returns to step S401.
[0088] If it is determined in step S402 that the command is a transaction data delete command,
then the CPU 115 deletes the transaction data from the flash EEPROM 113. After that
the process returns to step S401.
[0089] Although not shown in the flow chart, if the command indicates that a plurality of
sales data such as a total sales amount should be stored, read, or deleted, then the
data is stored, read, or deleted into or from the storage area of the memory in accordance
with the ID number contained in the command and indicating the data to be processed.
[0090] A description will now be given of a procedure of administrating information which
is employed when a flash EEPROM is used as the non-volatile storage means in the printer.
[0091] The storage area of a flash EEPROM is divided into a plurality of blocks which is
the minimum unit for an erasing operation. In other words, it is necessary to erase
a whole block for erasing a part of the block.
[0092] In general, once data is written in a certain area of a flash EEPROM, it is prohibited
to perform overwriting in the area without performing an erasing process before.
[0093] As mentioned above, erasing of information written in the EEPROM is effected on a
block basis. In general, erasing of a block of information stored in the EEPROM takes
a considerable time and further the number of erasing processes is limited to several
tens of thousand to several hundreds of thousand times, unlike other types of non-volatile
storage means such as hard disks.
[0094] It is therefore advisable that, when an EEPROM is used as information storage means,
the processes are limited as much as possible to writing processes only and that erasing
processes are avoided unless it is absolutely necessary.
[0095] Partial change/update of information stored in the flash EEPROM requires that the
data of the block containing the information to be changed or updated is read into
a volatile storage means such as a RAM, and the read information is changed or updated,
followed by writing it back into the EEPROM. There is a risk that journal data or
transaction data is lost, in the event that a failure or trouble occurs in the system
during the final step of writing the changed or updated data back into the EEPROM.
This problem is not negligible in view of the role and significance of the data.
[0096] To deal with this problem, the present invention adopts the following procedure for
the purpose of administrating the storage of information in the EEPROM.
[0097] First of all, it is to be noted that the information is stored on a "file" basis.
Each file contains a plurality of bytes indicative of the information to be stored,
the number of the bytes making up the information to be stored, the file name which
identifies the file, the date on which the file was created or last amended, and so
forth.
[0098] To this end, the storage area in the flash EEPROM is divided into two areas: namely,
an FAT (File Allocation Table) area and a data area. Information such as the file
name, the number of bytes of the file, the date of creating the file and so forth
are stored in the FAT area, while the information contained in the file is stored
in the data area. The FAT area also stores other kinds of information such as the
address of any defective sector which may exist in the flash EEPROM.
[0099] When an instruction is given for storing a file in the flash EEPROM, the file name,
the number of bytes and the date on which the file was made, as well as the information
contained in the file, are acquired from the instruction. The file name, the number
of bytes and the date on which the file was made are assembled into unit information
which is added to the data stored in the FAT area, while the information itself contained
in the file is added to the data stored in the data area. Thus, the process for storing
a file is executed without necessitating erasing of the flash EEPROM.
[0100] The method of adding data to the FAT area and the data area may be such that the
storage of the data in the FAT area is started from a lower-order address towards
higher-order addresses of the flash EEPROM, whereas the storage in the data area is
executed starting from a higher-order address towards a lower-order addresses. Writing
in this flash EEPROM is prohibited when the size of the border or vacancy between
both areas has become smaller than a predetermined number of bytes.
[0101] Processing journal data and transaction data is basically limited only to addition,
and deletion of information is not included. Correction of wrong information may appear
to require deletion of data. In case of journal data and transaction data, however,
it is necessary that a record of such a correction is stored. Thus, all the journal
data and the transaction data are recorded on a file basis, and all kinds of input
information including corrections are recorded in order to show the history of the
data.
[0102] When the size of the vacancy between the highest-order address of the FAT area and
the lowest-order address of the data area has become smaller than a predetermined
value in terms of the number of bytes, it is necessary to shift the information from
the flash EEPROM to the store controller, because storage of further information may
be impossible. This, however, does not cause any critical problem because the storage
area size of ordinarily available most cost-efficient flash EEPROM is large enough
to accommodate journal data and transaction data which is produced during one day
in an accounting machine such as a cash register; for example, the following operation
is performed.
[0103] That is, data of one whole day that has been saved to both the printer's flash EEPROM
113 and the store controller's hard disk 123 is backed up to another nonvolatile storage
in the store controller after business hours, e.g., in the night-time, and the whole
information in the flash EEPROM is erased after completion of the backup operation.
[0104] If it is expectable that the above-mentioned vacancy in the flash EEPROM falls down
below a predetermined number of bytes even during business hours, it is advisable
that the above-mentioned predetermined number of bytes is set to a comparatively large
value, and a suitable warning is given to inform the operator that only a small area
is left available for storage. The operator can then conduct the backup operation
while temporarily stopping routine operation of the cash register. Further it is effective
that the operator performs the backup operation while the cashier lane is temporary
stopped for supplying a paper roll for printing receipts to the printer.
[0105] Thus, administration of information in the flash EEPROM is conducted by using the
FAT. Any kind of information, such as journal data and its history, transaction data
and its history, a price look up table (PLU), environment setting information, programs
used in the POS terminal, and so forth can be stored in the flash EEPROM.
[0106] The described procedure may be employed regardless of whether the flash EEPROM is
installed in the POS terminal or in the printing device such as a printer.
Advantages of the Invention
[0107] As will be understood from the above description, the present invention offers the
following advantages.
[0108] The present invention provides a POS system in which an NC having no nonvolatile
storage device for storing transaction data can be employed as a POS terminal.
[0109] Furthermore, the present invention provides a POS system capable of transferring
transaction data from a printer to a store controller and storing it therein.
[0110] Furthermore, the present invention provides a POS system capable of deleting transaction
data stored in the printer if it is confirmed that the transaction data stored in
the nonvolatile storage such as a hard disk of the store controller has been transferred
and stored in the backup storage device of the store controller.
[0111] Still furthermore, the present invention provides a POS system capable of storing
a plurality of sales data such as a total sales amount as well as the transaction
data in the printer and of ensuring that they are always stored at two or more locations.
[0112] Furthermore, the present invention provides a POS terminal, a printer, and a store
controller for use in the POS system described above and also provide a method of
controlling these devices.
[0113] Still furthermore, the present invention provides an information storage medium that
can be easily distributed or sold and on which is stored a program as a software product
which, when executed, performs the method of controlling the system or the devices
according to the invention.
[0114] Although the invention has been described in terms of an embodiment, it is to be
understood that the described embodiment is only illustrative and is not intended
to limit the scope of the present invention. Those skilled in the art will obviously
modify or change the embodiment without departing from the spirit of the present invention,
by substituting each or all the elements of the invention with equivalents. Clearly,
such modifications and changes fall within the scope of the present invention.
1. A POS system including a POS terminal (101), a printer (111) connected to the POS
terminal, and a store controller (121) connected to the POS terminal, wherein:
said POS terminal comprises:
data generation means (102, 103, 106, 109) for generating transaction data;
first data transmission means (105) for transmitting the transaction data to the printer;
second data transmission means (104) for transmitting the transaction data to the
store controller;
third reception means (105) for receiving transaction; and
fourth data transmission means (104) for transmitting to the store controller the
transaction data received via the third reception means;
said printer comprises:
first reception means (112) for receiving the transaction data transmitted by the
first data transmission means;
first nonvolatile storage means (113) for storing the transaction data received via
the first reception means; and
third data transmission means (112) for transmitting the transaction data stored in
the first nonvolatile storage means (113) to said third reception means (105) of the
POS terminal (101); and
said store controller comprises:
second reception means (122) for receiving the transaction data transmitted by the
second data transmission means;
fourth reception means (122) for receiving the transaction data transmitted by said
fourth data transmission means; and
second nonvolatile storage means (123) for storing the transaction data received via
the second reception means or the fourth reception means.
2. A POS system as claimed in Claim 1, wherein said store controller (121) further comprises
third nonvolatile storage means (124) and backup means for storing the data stored
in said second nonvolatile storage means (123) as a backup in said third nonvolatile
storage means.
3. A POS system according to Claim 2, wherein:
said store controller (121) further comprises backup notification means for transmitting
notification data to the POS terminal (101) to notify that the transaction data has
been backed up to the third nonvolatile storage means (124);
said POS terminal (101) further comprises:
notification data reception means (104) for receiving said notification data; and
command transmission means (105) responsive to said notification data for transmitting
a data delete command to the printer (111); and
said printer further comprises:
command reception means (112) for receiving said data delete command; and
delete means responsive to said data delete command for deleting the transaction data
stored in the first nonvolatile storage means (113).
4. A POS system according to any of Claims 1 to 3, wherein said data generation means
comprises:
sales data generation means for generating a plurality of sales data including a total
sales amount as well as the transaction data; and
means for processing the plurality of sales data generated by the sales data generation
means separately from or together with said transaction data.
5. A POS terminal for use in a POS system as defined in Claim 1, comprising:
data generation means (102, 103, 106, 109) for generating transaction data;
first data transmission means (105) for transmitting the transaction data to the printer
(111); and
second data transmission means (104) for transmitting the transaction data to the
store controller (121).
6. A POS terminal according to Claim 5, further comprising:
reception means (105) for receiving the transaction data transmitted by the printer
(111); and
third transmission means (104) for transmitting to said store controller (121) the
transaction data received via said reception means.
7. A POS terminal according to Claim 6, further comprising:
notification data reception means (104) for receiving notification data from the store
controller, and
command transmission means (105) responsive to said notification data for transmitting
a data delete command to the printer (111).
8. A POS terminal according to any of Claims 5 to 7, further comprising:
sales data generation means for generating a plurality of sales data including a total
sales amount; and
means for processing the plurality of sales data generated by said sales data generation
means separately from or together with said transaction data.
9. A printer for use in a POS system as defined in Claim 1, comprising:
first reception means (112) for receiving transaction data from the POS terminal (101);
and
first nonvolatile memory means (113) for storing the transaction data received via
said first reception means.
10. A printer according to Claim 9, further comprising transmission means (112) for transmitting
to said POS terminal (101) the transaction data stored in said first nonvolatile storage
means (113).
11. A printer according to Claim 10, further comprising:
command reception means (112) for receiving a data delete command from said POS terminal
(101); and
delete means responsive to said data delete command for deleting the transaction data
stored in said first nonvolatile storage means (113).
12. A printer according to any of Claims 9 to 11, wherein said first nonvolatile storage
means (113) is capable of storing a plurality of sales data including a total sales
amount separately from or together with said transaction data.
13. A method of controlling a POS terminal connected to a printer and also to a store
controller, said method comprising the steps of:
(a) generating transaction data;
(b) transmitting to said printer the transaction data generated in said generation
step; and
(c) transmitting to said store controller the transaction data generated in said generation
step.
14. A method of controlling a POS terminal, according to Claim 13, further comprising
the steps of:
(d) receiving the transaction data transmitted from said printer; and
(e) transmitting to said store controller the transaction data received in said reception
step.
15. A method of controlling a POS terminal, according to Claim 14, further comprising
the steps of:
(f) receiving notification data transmitted from said store controller, said notification
data notifying that the transaction data has been backed up; and
(g) upon receipt of said notification data notifying that the transaction data has
been stored, transmitting to the printer a command requiring the printer to delete
the transaction data stored in the printer.
16. A method of controlling a POS terminal, according to any of Claims 13 to 15, further
comprising the steps of:
(h) generating a plurality of sales data including a total sales amount; and
(i) processing said plurality of sales data including the total sales amount separately
from or together with said transaction data.
17. A method of controlling a printer used in conjunction with a POS terminal connected
to said printer, said method comprising the steps of:
(a) receiving transaction data transmitted by said POS terminal; and
(b) storing the received transaction data in a nonvolatile manner.
18. A method of controlling a printer, according to Claim 17, further comprising the step
of:
(c) transmitting said stared transaction data to the POS terminal.
19. A method of controlling a printer, according to Claim 17, further comprising the steps
of:
(d) receiving a command transmitted by said POS terminal, said command requiring the
printer to delete the transaction data stared therein; and
(e) in response to the delete command received in said reception step, deleting the
stored transaction data.
20. A method of controlling a printer, according to any of Claims 17 to 19, further comprising
the step of:
(f) processing a plurality of sales data including at least a total sales amount separately
from or together with said transaction data.
21. An information storage medium on which a computer program is stored, said computer
program implementing a method of controlling a POS terminal used in conjunction with
a printer and a store controller connected to the POS terminal, said computer program
comprising the steps of:
(a) generating transaction data;
(b) transmitting to the printer the transaction data generated in said data generation
step; and
(c) transmitting to the store controller the transaction data generated in said data
generation step.
22. An information storage medium on which a computer program is stored, according to
Claim 21, said control method implemented in said computer program further comprising
the steps of:
(d) receiving the transaction data transmitted from said printer; and
(e) transmitting said received transaction data to the store controller.
23. An information storage medium on which a computer program is stored, according to
Claim 22, said control method implemented in said computer program further comprising
the steps of:
(f) receiving notification data transmitted by the store controller, said notification
data notifying that the transaction data has been backed up; and
(g) upon receipt of said notification data notifying that the transaction data has
been stored, transmitting to the printer a command for requiring the printer to delete
the transaction data stored in the printer.
24. An information storage medium on which a computer program is stored, according to
any of Claims 21 to 23, said control method implemented in said computer program further
comprising the steps of:
(h) generating a plurality of sales data including a total sales amount; and
(i) processing said plurality of sales data including the total sales amount separately
from or together with said transaction data.
25. An information storage medium on which a computer program is stored, said computer
program implementing a method of controlling a printer used in conjunction with a
POS terminal connected to the printer, said computer program comprising the steps
of:
(a) receiving transaction data transmitted by said POS terminal; and
(b) storing said received transaction data in a nonvolatile manner.
26. An information storage medium on which a computer program is stored, according to
Claim 25, said control method implemented in said computer program further comprising
the step of:
(c) transmitting said stored transaction data to the POS terminal.
27. An information storage medium on which a computer program is stored, according to
any of Claims 25 to 26, said control method implemented in said computer program further
comprising the steps of:
(d) receiving a command transmitted by said POS terminal, said command requiring the
printer to delete the transaction data stored therein; and
(e) in response to the delete command received in said reception step, deleting the
stored transaction data.
28. An information storage medium on which a computer program is stored, according to
any of Claims 25 to 27, said control method implemented in said computer program further
comprising the step of:
(f) processing a plurality of sales data including at least a total sales amount separately
from or together with said transaction data.
29. A method of controlling a POS system as defined in Claim 1, said method comprising
the steps of:
in the POS (101) terminal:
(a) generating transaction data;
(b) transmitting to said printer (111) the transaction data generated in step (a);
and
(c) transmitting to said store controller (121) the transaction data generated in
step (a),
in the printer (111):
(d) receiving the transaction data transmitted in step (b); and
(e) storing the received transaction data in said first nonvolatile memory means (113),
and
in the store controller (121):
(f) receiving the transaction data transmitted in step (c); and
(g) storing the received transaction data in said second nonvolatile memory means
(123).
30. The method of claim 29 further comprising the steps of:
in the store controller (121):
(h) backing up said transaction data stored in said second nonvolatile memory means
(123) to said third nonvolatile memory means (124), and
(i) transmitting notification data to said POS terminal (101) when step (h) has been
successfully completed,
in the POS terminal (101):
(j) receiving said notification data, and
(k) transmitting, in response to step (j), a data delete command to said printer (111),
and
in the printer (111):
(l) receiving said data delete command; and
(m) deleting, in response to step (l), the transaction data stored in said first nonvolatile
memory means (113).
31. The method according to any of Claims 29 and 30, further comprising the steps of:
in the printer (111):
(n) transmitting transaction data stored in said first nonvolatile memory means to
said POS terminal;
in the POS terminal (101):
(o) receiving the transaction data sent in step (n), and
(p) transmitting the transaction data received in step (o) to the store controller;
and
in the store controller (121):
(q) receiving the transaction data transmitted in step (p) and storing stored them
in said second nonvolatile memory means (123).
32. The method according to any one of Claims 29 to 31, further comprising processing
a plurality of sales data including a total sales amount separately from or together
with said transaction data.
33. A computer readable information storage medium carrying a computer program for implementing
the method as defined in any one of claims 29 to 32.