Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUSRE40576 E1
Publication typeGrant
Application numberUS 10/171,366
Publication dateNov 18, 2008
Filing dateJun 12, 2002
Priority dateOct 14, 1997
Fee statusPaid
Also published asCA2246171A1, CA2246171C, EP0910030A2, EP0910030A3, US5987426
Publication number10171366, 171366, US RE40576 E1, US RE40576E1, US-E1-RE40576, USRE40576 E1, USRE40576E1
InventorsJohn C. Goodwin, III
Original AssigneeNcr Corporation
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Point-of-sale system including isolation layer between client and server software
US RE40576 E1
Abstract
A system and method of transferring information between a first software application and a second software application which employ an isolation layer. The system includes a client computer system provided by a first seller of computer systems, including a client software application, and a server computer system provided by a second seller of computer systems different from the first seller of computer systems, including a server software application which provides information from the server computer system to the client computer system. The system additionally includes isolation layer software, either at the client computer system or at the server computer system, which facilitates communication between the client software application and the server software application to transfer the information.
Images(6)
Previous page
Next page
Claims(34)
1. A transaction system comprising:
a client computer system provided by a first seller of computer systems, including a client software application; and
a server computer system provided by a second seller of computer systems different from the first seller of computer systems, including a server software application which provides information from the server computer system to the client computer system and isolation layer software which facilitates communication between the client software application and the server software application to transfer the information between the client software application and the server software application, the isolation layer providing translation for commands and data communicated between the client software application and the server software application, the isolation layer including a translation layer producing custom outputs for communicating between the client software application and the server software application, the custom outputs being based on customized mappings and translations directed to facilitating communication between the client software application and the server software application.
2. A transaction system comprising:
a server computer system provided by a first seller of computer systems, including a server software application; and
a client computer system provided by a second seller of computer systems different from the first seller of computer systems, including a client software application which obtains information from the server computer system and isolation layer software which facilities communication between the client software application and the server software application to transfer the information between the client software application and the server software application, the isolation layer providing translation for commands and data communicated between the client software application and the server software application, the isolation layer including a translation layer producing custom outputs for communicating between the client software application and the server software application, the custom outputs being based on customized mappings and translations directed to facilitating communication between the client software application and the server software application.
3. A method of transferring information between a first software application and a second software application comprising the steps of:
(a) providing the first software application by a first company;
(b) providing the second software application by a second company different from the first company;
(c) executing the first software application by a first computer;
(d) executing the second software application by a second computer different from the first computer;
(e) providing an isolation layer having hooks into the second software application, the isolation layer providing translation for commands and data communicated between the first software application and the second software application, the isolation layer including a translation layer producing custom outputs for communicating between the first software application and the second software application, the custom outputs being based on customized mappings and translations directed to facilitating communication between the first software application and the second software application;
(f) executing the isolation layer; and
(g) establishing communication between the first software application and the second software application by the isolation layer to transfer the information.
4. The method as recited in claim 3, wherein step f comprises the substep of:
(f) executing the isolation layer by the first computer.
5. The method as recited in claim 3, wherein step f comprises the substep of:
(f) executing the isolation layer by the second computer.
6. A method of transferring information between a client software application and a server software application comprising the steps of:
(a) installing a client computer by a first company;
(b) providing and installing the client software application by the first company;
(c) installing a server computer by a second company different from the first company after installation of the client computer and the client software by the first company;
(d) providing and installing the server software application by the second company;
(e) providing and installing an isolation layer having hooks into the server software application by the second company, the isolation layer providing translation for commands and data communicated between the client software application and the server software application, the isolation layer including a translation layer producing custom outputs for communicating between the client software application and the server software application, the custom outputs being based on customized mappings and translations directed to facilitating communication between the client software application and the server software applications;
(f) executing the client software application by the client computer;
(g) executing the server software application and the isolation layer by the server computer; and
(h) establishing communication between the client software application and the server software application by the isolation layer to transfer the information.
7. A method of transferring information between a client software application and a server software application comprising the steps of:
(a) installing a server computer by a first company;
(b) providing and installing the server software application by the first company;
(c) installing a client computer by a second company different from the first company after installation of the server computer and the server software by the first company;
(d) providing and installing the client software application by the second company;
(e) providing and installing an isolation layer having hooks into the server software application by the second company, the isolation layer providing translation for commands and data communicated between the client software application and the server software application, the isolation layer including a translation layer producing custom outputs for communicating between the client software application and the server software application, the custom outputs being based on customized mappings and translations directed to facilitating communication between the client software application and the server software application;
(f) executing the client software application and the isolation layer by the client computer;
(g) executing the server software application by the server computer; and
(h) establishing communication between the client software application and the server software application by the isolation layer to transfer the information.
8. A method of obtaining information for a client software application from a server software application comprising the steps of:
(a) providing the client software application from a first company;
(b) providing a server software application for accessing the information by a second company different from the first company;
(c) providing an isolation layer between the client software application and the server software application, the isolation layer providing translation for commands and data communicated between the client software application and the server software application, the isolation layer including a translation layer producing custom outputs for communicating between the client software application and the server software application, the custom outputs being based on customized mappings and translations directed to facilitating communicating between the client software application and the server software application;
(d) sending a call for the information to the isolation layer by the client software application;
(e) sending a request message for the information to the server software application by the isolation layer;
(f) instructing control software to obtain the information by the server software application;
(g) sending the information to the isolation layer by the server software application; and
(h) sending the information to the client software application by the isolation layer.
9. The transaction system of claim 1 in which the client computer system comprises a first POS client terminal communicating with the server computer system through the isolation layer software, and in which the transaction system further comprises a second client computer system including a second POS client terminal that communicates with the server software application on the server computer system without requiring isolation layer software as required by the first POS client terminal.
10. The transaction system of claim 9 in which the first and second POS client terminals respectively run different POS client software applications from different developers and with different requirements for communicating with the server computer system.
11. The transaction system of claim 1 in which the client computer system comprises a first POS client terminal communicating with the server computer system through the isolation layer software, and in which the transaction system further comprises a second client computer system including a second POS client terminal communicating with the server computer system through different, custom isolation layer software.
12. The transaction system of claim 11 in which the first and second POS client terminals respectively run different POS client software applications from different developers and with different requirements for communicating with the server computer system.
13. The transaction system of claim 1 in which the client computer system comprises a first POS client terminal communicating with the server computer system through the isolation layer software, and in which the transaction system further comprises a second client computer system including a second POS client terminal communicating with the server computer system through different, custom isolation layer software.
14. The transaction system of claim 13 in which the first and second POS client terminals respectively run different POS client software applications from different developers and with different requirements for communicating with the server computer system.
15. A method of providing the transaction system of claim 1 in which the client software application and the server software application are POS software, and enabling client terminals with POS client application software from different developers to be connected to and communicate with the server software application on the server computer system, which comprises the following steps:
providing the client computer system including a client terminal adding to an existing POS system network of which the server computer system is a part, where the existing network includes a second client computer system with a client terminal running a POS client software application not requiring the isolation layer software to communicate with the server software application on the server computer system; and
providing the isolation layer software to provide translation services for the client terminal adding to the existing POS system network, to facilitate communications with the server software application on the server computer system.
16. A method of providing the transaction system of claim 1 in which the client software application and the server software application are POS software, comprising the step of providing the client computer system including a client terminal adding to an existing POS system network in which the server computer system is included, and in which the network includes a second client computer system, including a client terminal running a POS client software application not requiring the isolation layer software to communicate with the server software application running on the server computer system.
17. A method of providing the transaction system of claim 1, in which the client software application and the server software application are POS software, and enabling client terminals with POS client application software from different developers to be connected to and communicate with the server software application on the server computer system, comprising the step of providing the client computer system including a first POS client terminal adding to an existing POS system network of which the server computer system is a part, where the existing network includes a second client computer system with a second POS client terminal running a POS client software application requiring isolation layer software different than required by the first client terminal to communicate with the server software application on the server computer system.
18. A method of providing the transaction system of claim 1 in which the client software application and the server software application are POS software, comprising the step of providing the server computer system as part of a host computer system added to an existing POS system network in which the client computer system is included.
19. The method of claim 18 that comprises the further steps of writing the isolation layer software to provide translation services between the client software application and the server software application, and storing the isolation layer software on the host computer system added to the existing POS system network.
20. The method of claim 18 in which the isolation layer software provides read and write services for the client software application.
21. The method of claim 18 in which the client computer system includes IPC software facilitating inter-process communications between the client software application and the isolation layer software.
22. The transaction system of claim 2 in which the client computer system comprises a first POS client terminal communicating with the server computer system through the isolation layer software, and in which the transaction system further comprises a second client computer system including a second POS client terminal that communicates with the server software application on the server computer system without requiring isolation layer software as required by the first POS client terminal.
23. The transaction system of claim 22 in which the first and second POS client terminals respectively run different POS client software applications from different developers and with different requirements for communicating with the server computer system.
24. A method of providing the transaction system of claim 2 in which the client software application and the server software application are POS software, and enabling client terminals with POS client application software from different developers to be connected to and communicate with the server software application on the server computer system, which comprises the following steps:
providing the client computer system including a client terminal adding to an existing POS system network of which the server computer system is a part, where the existing network includes a second client computer system with a client terminal running a POS client software application not requiring the isolation layer software to communicate with the server software application on the server computer system; and
providing the isolation layer software to provide translation services for the client terminal adding to the existing POS system network, to facilitate communications with the server software application on the server computer system.
25. A method of providing the transaction system of claim 2 in which the client software application and the server software application are POS software, comprising the step of providing the client computer system including a client terminal adding to an existing POS system network in which the server computer system is included, and in which the network includes a second client computer system, including a client terminal running a POS client software application not requiring the isolation layer software to communicate with the server software application running on the server computer system.
26. A method of providing the transaction system of claim 2, in which the client software application and the server software application are POS software, and enabling client terminals with POS client application software from different developers to be connected to and communicate with the server software application on the server computer system, comprising the step of providing the client computer system including a first POS client terminal adding to an existing POS system network of which the server computer system is a part, where the existing network includes a second client computer system with a second POS client terminal running a POS client software application requiring isolation layer software different than required by the first client terminal to communicate with the server software application on the server computer system.
27. A method of providing the transaction system of claim 2 in which the client software application and the server software application are POS software, comprising the step of providing the client computer system including a client terminal added to an existing POS system network in which the server computer system is included.
28. The method of claim 27 in which the isolation layer software provides read and write services for the client software application.
29. The method of claim 27 in which the client computer system includes IPC software facilitating inter-process communications between the client software application and the isolation layer software.
30. The method of claim 27 that comprises the further steps of writing the isolation layer software to provide translation services between the client software application and the server software application, and storing the isolation layer software on the client terminals added to the existing POS system network.
31. The method of claim 30 in which the isolation layer software is written by compiling sample target routines that have been edited and customized to meet the needs of a target transaction establishment.
32. The method of claim 30 in which the client computer system includes a plurality of different independent software applications running on a plurality of different client terminals from different developers.
33. The method of claim 32 in which the client computer system includes client terminals running independent software applications developed by the same developer as the server software application and not requiring isolation layer software to communicate with the server software application, and client terminals running independent software applications developed by a developer different from the server software application and using isolation layer software to communicate with the server software application.
34. The method of claim 29 for which communications between the server computer system and the added client POS computer terminal occurs between interprocess communications software and the isolation layer software.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is related to the U.S. Pat. No. 5,839,116 issued on Nov. 17, 1998, entitled “SYSTEM AND METHOD OF OBTAINING INFORMATION FROM A PRICE LOOK-UP FILE”, and having as inventor, John Goodwin.

BACKGROUND OF THE INVENTION

The present invention relates to point-of-sale (POS) systems, and more specifically to a POS system including an isolation layer between POS server software and a client POS application program.

POS systems typically include a central server and a plurality of checkout terminals connected through a client-server network.

The checkout terminals include bar code readers and keyboards for entry of the item numbers during a transaction.

The central server stores a price look-up (PLU) file which associates item numbers with item prices. The central server processes requests from the checkout terminals for price information for the items. The central server may perform additional tasks, such as storing transaction history (audit log and transaction totals history), storing accountability totals, storing cashier and terminal accountability totals, holding future price change information (batches), performing credit authorization, performing check validation, and performing frequent shopper validation and specials.

POS checkout software has traditionally included client and server software that have been developed together and sold as a single proprietary product. However, this solution may not be an optimal one for a retailer. Retailers may find that combining server software from one developer with client software from another developer gives their POS systems the features that they want. This may be especially true for retailers that want the best solutions for both the server and client software in a market where no one developer of proprietary POS software exceeds at both.

Therefore, it would be desirable to provide a POS system including an isolation layer between the POS server software and the POS client application software to enable server and client software from different developers to be combined.

SUMMARY OF THE INVENTION

In accordance with the teachings of the present invention, a POS system including an isolation layer between POS server software and a client POS application program is provided.

A system and method of transferring information between a first software application and a second software application which employ an isolation layer. The system includes a client computer system provided by a first seller of computer systems, including a client software application, and a server computer system provided by a second seller of computer systems different from the first seller of computer systems, including a server software application which provides information from the server computer system to the client computer system. The system additionally includes isolation layer software, either at the client computer system or at the server computer system, which facilitates communication between the client software application and the server software application to transfer the information.

The method includes the steps of providing the first software application by a first computer, providing the second software application by a second company different from the first company, executing the first software application by a first computer, executing the second software application by a second computer different from the first computer, providing an isolation layer having hooks into the second software application, executing the isolation layer, and establishing communication between the first software application and the second software application by the isolation layer to transfer the information.

It is accordingly an object of the present invention to provide a POS system including as isolation layer between POS server software and a client POS application program.

It is another object of the present invention to allow server and client software from different developers to be combined using an isolation layer.

It is another object of the present invention to provide an isolation layer for server software that provides read and write services for client POS software in a computer network that includes client computers running different client POS software.

BRIEF DESCRIPTION OF THE DRAWINGS

Additional benefits and advantages of the present invention will become apparent to those skilled in the art to which this invention relates from the subsequent description of the preferred embodiments and the appended claims, taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a block diagram of a transaction management system;

FIG. 2 is a block diagram illustrating the client POS software, server POS software, and the isolation layer between them;

FIG. 3 is a block diagram of a system for producing the isolation layer;

FIG. 4 is a flow diagram illustrating how the isolation layer is created; and

FIG. 5 is a flow diagram illustrating operation of a system specific application and, in particular, a method of transferring information from the system specific application to the client POS software through the isolation layer.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to FIG. 1, transaction system 10 preferably includes host computer system 12 and point-of-service (POS) terminal 22A and 22B. Host computer system 12 and point-of-service (POS) terminals 22A and 22B are coupled together to form a network.

POS terminals 22A and 22B execute independent applications 23A and 23B, including client POS software 24A and 24B for completing transactions. POS software 24A and 24B may be identical (e.g. the same application from the same developer) or may be different transaction processing applications.

As illustrated, independent applications 23A were developed by a different developer than the developer of server POS software 16. Thus, independent applications 23A require isolation layer 14 to communication with POS server software 16. Independent applications 23B were developed by the same developer as the developer of POS server software 16. Thus, independent applications 23B do not require isolation layer 14 to communication with server POS software 16. Advantageously, the present invention is capable of connecting a plurality of independent applications 23A running on a plurality of different client terminals from different developers to server POS software 16.

Client POS software 24A and 24B display transaction information on displays 27A, 27B. Client POS software 24A and 24B receive article identification information from bar code readers 26A, 26B and keyboards 28A, 28B. Client POS software 24A and 24B send the article identification information to host computer system 12. Host computer system 12 reads price look-up (PLU) file 20 to obtain price information and sends the price information to POS terminals 26A and 26B.

Other examples of independent applications 17 include price checking software for consumer price checking computers, weighing software for electronic scales, price checking software and item description label printing software for hand-held terminals, and EPL auditing software.

Host computer system 12 executes POS server software 16 and isolation layer 14. POS server software 16 processes requests from independent applications 23A and 23B. POS server software 16 includes system specific applications 17, such as price look-up (PLU) file software 40, transaction totals software 42, cashier authentication software 44, and credit checking software 46. These are but examples of system specific software in use today. The present invention anticipates other types of system specific software 17 as well.

Isolation layer 14 provides translation services between independent applications 23A and server POS software 16. Thus, isolation layer 14 allows client POS software 24A from one developer to function with system specific applications 17 from a different developer.

Isolation layer 14 may reside in host computer system 12 or client terminal 22A. Typically, a provider of client terminals 22A also provides independent applications 23A, and a provider of host computer system 12 also provides server POS software 16.

If the provider of client terminals 22A is adding client terminals 22A to an existing network including a server from a different provider, the provider of client terminals 22A may wish to write and store isolation layer 14 in client terminals 22A.

On the other hand, if a provider of servers and server POS software 16 is adding host computer system 12 to an existing network including client terminals 22A from a different provider, the provider of servers may wish to write and store isolation layer 14 in host computer system 12.

Isolation layer 14 preferably includes one library file for all system specific applications 17 or individual library files for system specific applications 17. Use of multiple libraries adds network design flexibility but penalizes operation by loading each library into memory, even if only part of isolation layer 14 is used. Isolation layer 14 may take other forms including a single application, a single driver, or multiple drivers that perform read operations into server POS software 16 in order to obtain and map information to be used by client POS software 24A. Theses drivers also perform writes into server POS software 16 may information created by client POS software 24A.

Storage medium 18 stores PLU file 20 and other information files and is preferably a fixed disk drive.

Turning now to FIG. 2, the software architecture within system 10 is described in more detail. Discussion references client POS software 24A, but other independent applications 23A operate in a similar fashion.

Client POS software 24A includes POS checkout application software 30 and interprocess communications (IPC) software 32. POS checkout software 30 records items by scanning them, prints them on a receipt, and adds their prices to produce a total transaction amount. POS checkout software 30 also performs specific transaction-related functions, such as processing food stamps and other forms of payment under government entitlement programs, calculating service charges, performing price change functions, performing out of transaction functions (loans, pickups), etc. An example of POS checkout software 30 is the UNITY® checkout application developed and sod by the Assignee of the present invention.

IPC software 32 is software that is added to POS checkout software 30 to facilitate interprocess communications (IPC) between POS checkout software 30 and isolation layer 14. IPC software 32 will vary with operating system, from threads, queues, named pipes, shared files, sockets, etc.

Isolation layer 14 includes read/write engine and translation layer 34 and read/write layer 36. Read/write engine and translation layer 34 translates one request into one or more read/write requests as needed for host computer system 12 based on standard server inputs and custom outputs. Read/write layer 36 performs the actual reads and writes to host computer system 12 based on the requests issued in read/write engine and translation layer 34.

An example of read/write layer 36 is the UNITY® file service layer.

Server POS software 16 may include both the UNITY® file service layer and the UNIX® file system.

In a traditional POS system, client POS software communicates directly with POS server software through a communication methodology, such as named pipes. Under Applicant's invention, client POS software 24A is modified to include IPC software 32, and an isolation layer 14 is added. Communication between client POS software 24A and POS server software 16 occurs between IPC software and isolation layer 14.

Turning now to FIG. 3, the components that are used to construct isolation layer 14 include templates 60, object code 62, example mappings and translations 64, target routines 66, and make files 68 for each of system-specific applications 17. Templates 60 are a super set of example mappings and translations 64 and target routines 66. Isolation layer 14 includes templates 60 for each of system specific application 17. Example mappings and translations 64 and target routines 66 are edited and customized by developers to produce customized mappings and translations 65 and customized target routines 67 (customized templates 61). Customized mappings and translations 65 and customized target routines 67 along with object code 62 are fed into make files 68 in order to produce executable code for isolation layer 14.

Object code 62 consists of libraries 41 for each of system specific applications 17. As mentioned above, isolation layer 14 may include one library for establishing communication for all system specific applications 17 or a plurality of separate libraries.

Example mappings and translations 64 provide non-displayable information (in code and/or in documentation) and may be edited to customize isolation layer 14.

Target routines 66 are system specific application routines that may be edited and customized to suit the needs of the target transaction establishment.

Make files 68 are files that pass source code (templates 60) through compiler 72 and then pass object code 62 through linker 74 to produce the target executable.

Turning now to FIG. 4, the method of creating isolation layer 14 begins with START 80.

In step 82, independent applications 23A are isolated from system specific applications 17 through a non-displayable mapping determination and translation process. Example mappings and translations 64 result.

In step 84, a template 60 for one of system specific applications 17 is provided. Template 60 is packaged in an installable format that can then be distributed and installed on the target system.

In step 86, customized mappings and translations 65 and customized target routines 67 are determined.

In steps 88-92, customized template 61 is produced by changing template 60 to reflect customized mappings and translations 65.

In step 88, functions to be implemented are edited. For example, for PLU file reader software 40, the “read first”, “read next”, and “read specific” sections are edited. The “read first” section is a routine that must be completed/customized to read the first PLU in PLU file 20. The “read next” section is a routine that must be completed/customized to read the next PLU in PLU file 20 sequentially. The “read specific” section is a routine that must be completed/customized to read a specific PLU file record.

In step 90, customized mapping and translations 65 and customized target routines 67 derived from step 86 are applied to template 60.

In step 92, operation returns to step 84 if library functionality for an additional specific application 17 must be added. Otherwise, operation continues to step 94.

In step 94, a new executable (isolation layer 14) is complied and linked from object code 62 and templates 61 for each of system specific applications 17 using make files 68, compiler 72, and linker 74.

In step 96, the method ends.

Referring now to FIG. 5, operation of a system specific application 17 is illustrated in detail, beginning with START 100. In particular, operation illustrates a method of transferring information between a terminal 22A and host computer system 12 through isolation layer 14.

In step 102, a system specific application 17 starts up and configures itself.

In step 104, system specific application 17 waits for an interprocess communications message from isolation layer 14. Interprocess communication services (e.g., “queues” for UNIX, threads or pipes for OS/2) are provided by the operating system executed by host computer system 12.

Isolation layer 14 calls on the operating system to send a request from client POS software 24A to system specific application 17. Client POS software 24A issues a call to isolation layer 14, instructing isolation layer 14 to perform a routine provided by isolation layer 14 and related to the purpose of system specific application 17.

For example, when system specific application 17 is PLU file reader software 40, the routine would be a “read direct” routine within isolation layer 14. Isolation layer 14 calls on the operating system to send the interprocess communications message to system specific application 17.

If such a message is received, system specific application 17 determines whether the interprocess communications message contains an “exit” command in step 105. If it does, system specific application 17 terminates in step 116.

If the interprocess communications message does not contain an “exit” command, system specific application 17 obtains the information from its source in step 106. For example, if system specific application 17 is PLU file reader software 40, system specific application 17 uses operating system 52 to obtain the information from PLU file 20.

In step 114, system specific application 17 calls on the operating system to return the information via interprocess communications to the client POS software 24A via isolation layer 14. System specific application 17 returns to a waiting state in step 104.

After system specific application 17 sends the information to isolation layer 14, isolation layer 14 passes the information to client POS software 24A. Client POS software application 24A can then display the information, compare the information, or otherwise examine the information in accordance with the functions of client POS software 24A.

Although the present invention has been described with particular reference to certain preferred embodiments thereof, variations and modifications of the present invention can be effected within the spirit and scope of the following claims.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US3182357Oct 18, 1961May 11, 1965Tuttle Robert GCheck-out regulator system for stores
US3263774Jun 22, 1964Aug 2, 1966John H HowardControl apparatus
US3436968Feb 11, 1965Apr 8, 1969Fairbanks Morse IncProcessing control system
US3681570Mar 27, 1970Aug 1, 1972Zellweger Uster AgMethod and apparatus for identifying articles
US3681571Apr 17, 1970Aug 1, 1972Zellweger Uster AgSystem for identifying articles
US3688873Dec 28, 1970Sep 5, 1972Potrafke WernerDevice for self-service stores
US3696586Mar 31, 1971Oct 10, 1972Sparks Fred LBagging and checkout counter system
US3725895Jul 13, 1972Apr 3, 1973Haynes LStolen article detection
US3735350Jul 6, 1971May 22, 1973J LemelsonCode scanning system
US3819012Mar 20, 1970Jun 25, 1974Rca CorpMerchandise handling and identifying system
US3836755Feb 12, 1973Sep 17, 1974Gretag AgSelf-service shop
US3869575Jan 30, 1974Mar 4, 1975Thomson CsfSpeech-synthesis system
US3878365Oct 26, 1973Apr 15, 1975Schwartz HermannMethod and apparatus for spot checking a checkout cashier operation in a store
US3947817Apr 22, 1974Mar 30, 1976Recognition Equipment IncorporatedHand operated optical character recognition wand
US3949194Mar 20, 1974Apr 6, 1976Plessey Handel Und Investments A.G.Check-out terminal
US3962569Apr 30, 1975Jun 8, 1976Reliance Electric CompanyValue computing scale
US3962570Apr 30, 1975Jun 8, 1976Reliance Electric CompanyScale with manual tare entry
US3984667Apr 30, 1975Oct 5, 1976Reliance Electric CompanyMotion detecting scale
US3986012Apr 30, 1975Oct 12, 1976Reliance Electric CompanyDigital weight measuring and computing apparatus with automatic zero correction
US4004139Apr 30, 1975Jan 18, 1977Reliance Electric CompanyDigital scale with means to shift displayed weight to show fraction of least normally displayed graduation
US4028537Mar 31, 1976Jun 7, 1977Champion International CorporationProduct processing system with price printer
US4069970Jun 24, 1976Jan 24, 1978Bell Telephone Laboratories, IncorporatedData access circuit for a memory array
US4071740May 26, 1976Jan 31, 1978Paul GogulskiMobile automated shopping system
US4084742Aug 2, 1976Apr 18, 1978Silverman Richard HPrice marking system for automated check-out of merchandize
US4114721Feb 28, 1977Sep 19, 1978Mobil Oil CorporationMethod and system for acoustic noise logging
US4138000Jul 8, 1977Feb 6, 1979Bel Air MartCheckout counter
US4177880Aug 7, 1978Dec 11, 1979Stanley JoseloffCombination supermarket counter and cart therefor
US4180204Nov 8, 1978Dec 25, 1979The J. C. Penney Corporation, Inc.Automatic inventorying system
US4236604Mar 30, 1979Dec 2, 1980Tri-Tronics Company, Inc.Start/stop control of conveying means
US4237483Mar 19, 1979Dec 2, 1980Electronic Management Support, Inc.Surveillance system
US4327819Aug 1, 1980May 4, 1982Coutta John MObject detection system for a shopping cart
US4347903Jul 5, 1979Sep 7, 1982Shimadzu CorporationElectronic reading balance
US4353564Jun 15, 1978Oct 12, 1982Stanley JoseloffSupermarket counter construction and method of using same
US4369334Mar 14, 1980Jan 18, 1983Sharp Kabushiki KaishaAudible announcement in an electronic cash register
US4369361Mar 25, 1980Jan 18, 1983Symbol Technologies, Inc.Portable, stand-alone, desk-top laser scanning workstation for intelligent data acquisition terminal and method of scanning
US4373133Dec 30, 1980Feb 8, 1983Nicholas ClyneMethod for producing a bill, apparatus for collecting items, and a self-service shop
US4377741Jun 26, 1980Mar 22, 1983The Brekka CorporationApparatus for producing updated information on a tangible medium
US4392535Mar 8, 1982Jul 12, 1983Tokyo Electric Co., Ltd.Zero-point adjusting method for automatic weighing apparatus
US4412298Sep 20, 1979Oct 25, 1983Pitney Bowes Inc.Method for tracking creep and drift in a digital scale under full load
US4500880Jul 6, 1981Feb 19, 1985Motorola, Inc.Real time, computer-driven retail pricing display system
US4509129Jun 26, 1984Apr 2, 1985Sharp Kabushiki KaishaElectronic calculating machine with facilities of announcing data introduced
US4529871Sep 29, 1982Jul 16, 1985Loblaw Companies LimitedPrice marking system
US4549867May 25, 1982Oct 29, 1985Texas Instruments IncorporatedElectronic learning aid with random number modes
US4574317Dec 12, 1983Mar 4, 1986Wayne ScheibleHand scannable portable copier and method
US4583083Jun 28, 1984Apr 15, 1986Bogasky John JCheckout station to reduce retail theft
US4583619Aug 19, 1983Apr 22, 1986Fry Raymond AAutomatic gate for checkout lane
US4602152May 24, 1983Jul 22, 1986Texas Instruments IncorporatedBar code information source and method for decoding same
US4605080Mar 25, 1985Aug 12, 1986Lemelson Jerome HWeighing apparatus
US4660160Apr 18, 1985Apr 21, 1987Tokyo Electric Co., Ltd.Electronic weighing device having label printer with data stability check
US4661908Jun 10, 1985Apr 28, 1987Tokyo Electric Co., Ltd.Sales data processing system
US4676343Jul 9, 1984Jun 30, 1987Checkrobot Inc.Self-service distribution system
US4679154Jul 9, 1985Jul 7, 1987Ncr CorporationScanning control system for merchandise checkout
US4688105May 10, 1985Aug 18, 1987Bloch Arthur RVideo recording system
US4709770Dec 2, 1986Dec 1, 1987Yamato Scale Company, LimitedDevice for correcting dynamic weight signal from conveyer weigher
US4715457May 27, 1986Dec 29, 1987Ncr CorporationMethod for fast weighing
US4723118Sep 15, 1986Feb 2, 1988Retail Security SystemsMagnetic detection system for items on the lower tray of a shopping cart
US4725822Aug 28, 1984Feb 16, 1988Hooley Charles MShopping cart with lower tray signalling device
US4729097May 3, 1985Mar 1, 1988Tokyo Electric Co., Ltd.Sales registration apparatus with means to transfer control program and sales registration data between individual units
US4734713Apr 18, 1986Mar 29, 1988Kabushiki Kaisha SatoThermal printer
US4736098Feb 10, 1986Apr 5, 1988Rehrig InternationalSignalling method and apparatus for a conventional shopping cart
US4766296Apr 29, 1987Aug 23, 1988Checkrobot, Inc.Article checkout counter and system
US4766299Mar 28, 1986Aug 23, 1988Spectra-Physics, Inc.Hand-mounted bar code reader
US4775782Sep 30, 1987Oct 4, 1988Ncr CorporationCheckout counter with remote keyboard writing pad and display
US4779706Dec 17, 1986Oct 25, 1988Ncr CorporationSelf-service system
US4787467Jul 31, 1987Nov 29, 1988Johnson Neldon PAutomated self-service checkout system
US4789048Sep 28, 1987Dec 6, 1988Ncr CorporationCheckout counter
US4792018Jun 12, 1985Dec 20, 1988Checkrobot Inc.System for security processing of retailed articles
US4800493Aug 8, 1985Jan 24, 1989Omron Tateisi Electronics Co.Electronic cash register
US4838383Mar 15, 1988Jun 13, 1989Tokyo Electrical Co., Ltd.Apparatus for checking out purchases
US4855908 *Dec 27, 1985Aug 8, 1989Fujitsu LimitedPOS system
US4866661Mar 26, 1986Sep 12, 1989Prins Maurits L DeComputer controlled rental and sale system and method for a supermarket and the like
US4881606Jan 25, 1989Nov 21, 1989Shekel Electronics-Scales Beit Keshet Electronics (Registered Partnership)Point-of-sale apparatus
US4909356Jan 31, 1989Mar 20, 1990A.W.A.X. Progettazione E Ricerca S.R.L.Fully self-service check-out counter incorporating an integral apparatus for on demand manufacturing of custom-sized bags conforming to the volume of articles received therein
US4914280Oct 19, 1988Apr 3, 1990Spectra-Physics, Inc.Optical wand interface to fixed scanner
US4929819Dec 12, 1988May 29, 1990Ncr CorporationMethod and apparatus for customer performed article scanning in self-service shopping
US4940116Mar 7, 1989Jul 10, 1990Checkrobot Inc.Unattended checkout system and method
US4947028Jul 19, 1988Aug 7, 1990Arbor International, Inc.Automated order and payment system
US4959530Mar 7, 1989Sep 25, 1990Checkrobot Inc.Article price indicator
US4964053Oct 11, 1989Oct 16, 1990Checkrobot, Inc.Self-checkout of produce items
US4964167Jul 6, 1988Oct 16, 1990Matsushita Electric Works, Ltd.Apparatus for generating synthesized voice from text
US4971177Mar 24, 1989Nov 20, 1990Spectra-Physics, Inc.Data gathering system housing/mounting
US4975948Oct 13, 1989Dec 4, 1990Andresen Dennis RRapid dialing method for telecommunications
US5004916Jul 28, 1989Apr 2, 1991Ncr CorporationWrist support
US5040636Nov 16, 1989Aug 20, 1991Ncr CorporationMerchandise checkout work station
US5053636May 18, 1988Oct 1, 1991American Sterilizer CompanyOverride circuit for medical table
US5058691Apr 2, 1990Oct 22, 1991W. G. AssociatesInfrared detector for ensuring correct weighing
US5079412Apr 17, 1989Jan 7, 1992Tokyo Electric Co., Ltd.Point of sale data processing apparatus for handy type bar code reader which can be flush mounted
US5083638Sep 18, 1990Jan 28, 1992Howard SchneiderAutomated point-of-sale machine
US5115888Feb 4, 1991May 26, 1992Howard SchneiderSelf-serve checkout system
US5121103Jul 29, 1988Jun 9, 1992Knogo CorporationLoad isolated article surveillance system and antenna assembly
US5123494Feb 4, 1991Jun 23, 1992Howard SchneiderAnti-theft weighing system
US5125465Feb 4, 1991Jun 30, 1992Howard SchneiderFast retail security weighing system
US5139100Feb 4, 1991Aug 18, 1992Point Of Sale Data Products, Inc.Point-of-sale scanner/scale system with scale activation of scanner
US5140145Aug 28, 1990Aug 18, 1992Bianco James SBar code reader test and tampering indication system
US5142161Apr 26, 1990Aug 25, 1992Brackmann Rogers FHand-held optical scanner and highlighter
US5149211Oct 9, 1990Sep 22, 1992Pettigrew Robert MLabel printer
US5168961Feb 4, 1991Dec 8, 1992Howard SchneiderSupermarket with self-service checkout
US5174399Jan 30, 1992Dec 29, 1992Point Of Sale Data Products, Inc.Point-of-sale scanner/scale system with scale activation of scanner
US5174413Oct 25, 1991Dec 29, 1992A.W.A.X. Progettazione E Ricerca S.R.L.Plastic bag dispensing apparatus for supermarkets incorporating devices for the registering of the purchased items
US5541925 *Mar 27, 1995Jul 30, 1996Compuserve IncorporatedPoint of sale system that bypasses the public telephone network
US5710887 *Aug 29, 1995Jan 20, 1998BroadvisionComputer system and method for electronic commerce
US5734823 *Jul 25, 1996Mar 31, 1998Microtome, Inc.Systems and apparatus for electronic communication and storage of information
US5745705 *Dec 13, 1995Apr 28, 1998Matsushita Electric Industrial Co., Ltd.POS system
US5839116 *Oct 5, 1995Nov 17, 1998Ncr CorporationSystem and method of obtaining information from a price look-up file
US6163797 *Jul 22, 1998Dec 19, 2000Hewlett-Packard CompanyApplication dispatcher for seamless, server application support for network terminals and non-network terminals
US6269342 *Mar 20, 1998Jul 31, 2001Telxon CorporationProgrammable shelf tag system
USD296788Oct 14, 1986Jul 19, 1988Mars, Inc.Combined portable data scanner and printer
Non-Patent Citations
Reference
1"Burger King Tests Credit-Card Payments", The Miami Herald Knight-Rider/Tribune Business News, Jul. 9, 1993.
2Gamburer, A.T., et al., "Analogue-code Converter Used with Strain Gauge Hopper Weighters", Instrumental and Control, Mar. 3, 1969.
3Lang Jones, Jeanne, "Robots Will Do Checkout at Grocery", Houston Post, (Final, Business, p. C1, Feb. 22, 1995.
4Optimal Robotics 8870 System. TM., Optimal Robotics Corporation, 1995.
5POS System for Massmerchant Store: System 87 Plus, Victor Landa et al., pp. 319-327, Fujitsu Scientific & Technical Journal, No. 4, Winter 1987.
6U-Scan Express.TM., The U-Scan Express.TM. Self-Checkout System, Spectra-Physics Scanning Systems, Inc., Feb. 1996.
7Wisemberg-Brin, Dinah, Associated Press, "You-buy, you-scan bag", Dayton Daily News, Aug. 11, 1996.
8Zimmerman, Denise, "Kroger Self-Scan Lane to Test Debit Credit" Supermarket News, vol. 45, No. 14, p. 13+, Apr. 3, 1995.
9Zimmerman, Denise, "Kroger Unit to Expand Customer Self-Scanning", Supermarket News, Aug. 14, 1995, p. 15.
Classifications
U.S. Classification709/232, 705/16, 705/17, 705/21, 709/203
International ClassificationG06Q50/00, G06F15/16, G06F15/00, G07C1/14, G07G1/14
Cooperative ClassificationG07G1/145, G06Q20/204, G06Q20/202, G06Q20/20
European ClassificationG06Q20/202, G06Q20/204, G06Q20/20, G07G1/14B
Legal Events
DateCodeEventDescription
Jan 15, 2014ASAssignment
Effective date: 20140106
Free format text: SECURITY AGREEMENT;ASSIGNORS:NCR CORPORATION;NCR INTERNATIONAL, INC.;REEL/FRAME:032034/0010
Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Jan 20, 2011FPAYFee payment
Year of fee payment: 12