Symbol Technologies CST3040K088R1 Handheld Portable Shopping System Transmitter User Manual Revision History
Symbol Technologies Inc Handheld Portable Shopping System Transmitter Revision History
Contents
- 1. regulatory addemdum
- 2. user manual request
- 3. WaveWorks PSS Integration Guide V110
WaveWorks PSS Integration Guide V110
WaveWorks Portable Shopping System Integration Guide February 1, 2000 Version 1.10 Integration Services Group Pittsburgh, Pennsylvania USA Revision History Revision Date 1.00 December 31, 1999 1.10 February, 1, 2000 Author Mary Wroniak Garry Simmons Brian Reed Tom Pike Mike Tierney Luke Petrozza Luke Petrozza Comments Initial version Added PST 008 and PST 038 transactions Copyright 1999, 2000 by Symbol Technologies, Inc. All rights reserved. No part of this document may be reproduced or used in any form, or by any electrical or mechanical means, without permission in writing from Symbol. This includes electronic or mechanical means, such as photocopying, recording, or information storage and retrieval systems The material in this document is subject to change with notice. Symbol does not assume any product liability arising out of, or in connection with, the application or use of any product, circuit, or application described herein. No license is granted, either expressly or by implication, estoppel, or otherwise under any Symbol Technologies, Inc., intellectual property rights. An implied license only exists for equipment, circuits, and subsystems contained in Symbol products. Symbol, Spectrum24, WaveWorks, and WaveWorks NT are registered trademarks of Symbol Technologies, Inc. Other product names mentioned in this document may be trademarks or registered trademarks of their respective companies and are hereby acknowledged. Decembe Table of Contents 1. Introduction ............................................................................................................1 1.1 1.2 1.3 2. PURPOSE OF DOCUMENT ................................................................................................................................. 1 ASSUMPTIONS ................................................................................................................................................. 1 REFERENCE DOCUMENTS ................................................................................................................................ 1 Architecture Overview ...........................................................................................2 2.1 INTRODUCTION TO WAVEWORKS.................................................................................................................... 2 2.1.1 WaveWorks Design Objectives.............................................................................................................. 3 2.1.2 WaveWorks Components....................................................................................................................... 4 2.2 PSS SOFTWARE OVERVIEW............................................................................................................................. 6 2.3 MAJOR SUBSYSTEMS ....................................................................................................................................... 6 2.3.1 Unit Management Subsystem ................................................................................................................ 6 2.3.2 Shopping Trip Subsystem ..................................................................................................................... 6 2.3.3 Quick Order Subsystem......................................................................................................................... 7 2.3.4 Queue Busting Subsystem...................................................................................................................... 7 2.3.5 Express Shopper Subsystem .................................................................................................................. 7 2.3.6 Electronic Marketing Subsystem ........................................................................................................... 7 2.3.7 User Messaging..................................................................................................................................... 8 2.3.8 Transaction Ticket Printing .................................................................................................................. 8 2.3.9 POS Interface........................................................................................................................................ 8 2.3.10 System Administration........................................................................................................................... 8 2.4 PSS OVERVIEW DIAGRAM .............................................................................................................................. 8 2.5 PSS COMPONENT DIAGRAM.......................................................................................................................... 10 3. Hardware Requirements ......................................................................................11 3.1 3.2 3.3 3.4 4. WINDOWS NT COMPUTER ............................................................................................................................. 11 HAND HELD TERMINALS ............................................................................................................................... 11 TERMINAL DISPENSER/ENTRANCE UNIT ....................................................................................................... 12 SPECTRUM 24 RADIO NETWORK ................................................................................................................ 12 PSS Software Installation ....................................................................................13 4.1 INSTALL NT 4.0 SERVER ............................................................................................................................... 14 4.2 INSTALL THE NT 4 SERVICE PACK ................................................................................................................ 19 4.3 INSTALL INTERNET EXPLORER 4.01 SERVICE PACK 2 ................................................................................... 20 4.4 NT OPTION PACK INSTALL............................................................................................................................ 22 4.5 INSTALL THE VIDEO DRIVER ......................................................................................................................... 23 4.6 CREATE AND FORMAT THE DATABASE PARTITION ........................................................................................ 25 4.7 DESKTOP CLEANUP (OPTIONAL) .................................................................................................................... 26 4.8 INSTALL MICROSOFT SQL SERVER 7 ............................................................................................................ 27 4.9 CREATE AND CONFIGURE THE PSS DATABASE ............................................................................................. 28 4.9.1 Create the (blank) PSS Database........................................................................................................ 28 4.9.2 Configure SQL Server ......................................................................................................................... 29 4.9.3 Configure the Clear Transaction Log job ........................................................................................... 30 4.9.4 Configure the Extensive Database Check and Backup job ................................................................. 31 4.9.5 Configure the Nightly Database Check and Backup job..................................................................... 33 4.10 INSTALL MICROSOFT ACCESS ................................................................................................................... 35 4.11 INTERNET EXPLORER 5.0 WITH TASK SCHEDULER INSTALL ..................................................................... 35 4.12 INSTALL WAVEWORKS............................................................................................................................. 36 4.13 INSTALL PSS RUNTIME SYSTEM............................................................................................................... 37 4.14 INSTALL WAVEWORKS DEVELOPMENT STUDIO........................................................................................ 38 4.15 INSTALL PSS DEVELOPMENT SYSTEM...................................................................................................... 38 4.16 TFTP CONFIGURATION ............................................................................................................................ 39 4.16.1 Create STEP hex images for the terminals to download..................................................................... 40 4.17 DHCP CONFIGURATION ........................................................................................................................... 41 4.18 CREATE AN ODBC DATA SOURCE ........................................................................................................... 42 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page ii February 1, 2000 4.19 4.20 4.21 4.22 4.23 4.24 4.25 4.26 5. Configuration of the PSS System .......................................................................53 5.1 5.2 6. LOAD INITIAL DATA ................................................................................................................................. 43 MS IIS CONFIGURATION .......................................................................................................................... 45 OBTAINING ACCESS TO PSS SYSTEM ADMINISTRATION SCREENS ........................................................... 46 CONFIGURE TASK SCHEDULER ................................................................................................................. 47 CONFIGURE UNIT MANAGEMENT ............................................................................................................. 48 CONFIGURE LICENSING............................................................................................................................. 50 CONFIGURE THE NBQMAIN SERVICE (IBM 4690 POS ONLY)............................................................... 51 SETUP NT SYSTEM LOG ........................................................................................................................... 52 SET UP SYSTEM SETTING CONSTANTS .......................................................................................................... 53 PERFORM INITIAL LOADING OF CUSTOMER AND ITEM DATA ........................................................................ 56 Validation of System Operation ..........................................................................57 6.1 TESTING AN INSTALLATION ........................................................................................................................... 57 6.2 OBTAINING SYSTEM STATUS INFORMATION.................................................................................................. 58 6.2.1 Viewing The System Log ..................................................................................................................... 58 6.2.2 Viewing POS Status............................................................................................................................. 59 7. Directory Listing of PSS Folders/Files ...............................................................60 D:\ (database repository) ............................................................................................................................... 66 7.1 SCHEDULED TASKS ....................................................................................................................................... 67 8. Software Description ...........................................................................................68 8.1 PSS TRANSACTION IDS / COM OBJECT METHOD LISTING ........................................................................... 68 8.2 UNIT MANAGEMENT SUBSYSTEM.................................................................................................................. 76 8.2.1 Hardware Overview ............................................................................................................................ 76 8.2.2 Software Components.......................................................................................................................... 77 8.2.3 Database Access.................................................................................................................................. 78 8.3 SHOPPING TRIP SUBSYSTEM .......................................................................................................................... 79 8.3.1 Start of Shopping Trip Processing ...................................................................................................... 79 8.3.2 Shopping Trip Processing ................................................................................................................... 79 8.3.3 End of Shopping Trip Processing........................................................................................................ 82 8.3.4 Shopping Trip Message Log Entries ................................................................................................... 83 8.3.5 Fatal Messages: .................................................................................................................................. 84 8.3.6 Error Messages:.................................................................................................................................. 84 8.3.7 Informational Messages ...................................................................................................................... 86 8.3.8 Debug Messages: ................................................................................................................................ 87 8.3.9 Rescan Messages................................................................................................................................. 87 8.4 QUICK ORDER SUBSYSTEM ........................................................................................................................... 89 8.5 QUEUE BUSTING SUBSYSTEM ........................................................................................................................ 89 8.6 ELECTRONIC MARKETING SUBSYSTEM ......................................................................................................... 90 8.7 USER MESSAGING SUBSYSTEM ..................................................................................................................... 90 8.8 POS INTERFACE SUBSYSTEM ........................................................................................................................ 91 8.8.1 POS Interface Files ............................................................................................................................. 92 8.8.2 POS Interface Software Entities.......................................................................................................... 92 8.8.3 POS Interface Configuration .............................................................................................................. 94 8.8.4 PSSTransactionFile Processing .......................................................................................................... 99 8.8.5 POS Transaction File Processing ..................................................................................................... 100 8.8.6 Item Record File Processing ............................................................................................................. 101 8.8.7 Customer Update File Processing ................................................................................................... 102 8.9 PSS SERVICES ............................................................................................................................................. 102 9. Customizing the PSS System Software............................................................104 9.1 CUSTOM DISPLAYSERVER SCRIPTS ............................................................................................................. 104 9.2 CUSTOM SERVICES ...................................................................................................................................... 104 9.3 CUSTOM BUSINESS OBJECTS ....................................................................................................................... 104 9.4 USER EXIT DLL .......................................................................................................................................... 105 9.4.1 Common Information ........................................................................................................................ 105 9.4.2 Return and Message Codes ............................................................................................................... 106 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page iii February 1, 2000 9.4.3 Using the CPssMsgLog Class ........................................................................................................... 106 9.5 AVAILABLE USER EXIT FUNCTIONS ............................................................................................................ 108 9.5.1 UE_PreProcessItemFile.................................................................................................................... 108 9.5.2 UE_PreProcessItemRecord .............................................................................................................. 108 9.5.3 UE_PostProcessItemRecord ............................................................................................................. 109 9.5.4 UE_PostProcessItemFile .................................................................................................................. 109 9.5.5 UE_PreProcessTaxFile..................................................................................................................... 109 9.5.6 UE_PostProcessTaxFile ................................................................................................................... 110 9.5.7 UE_PreProcessPOSTransFile .......................................................................................................... 110 9.5.8 UE_PreProcessPOSTransRecord ..................................................................................................... 110 9.5.9 UE_PostProcessPOSTransRecord.................................................................................................... 111 9.5.10 UE_ProcessEODRecord ................................................................................................................... 111 9.5.11 UE_PostProcessPOSTransFile......................................................................................................... 111 9.5.12 UE_PreProcessPSSTransFile ........................................................................................................... 111 9.5.13 UE_PreProcessPSSTransRecord...................................................................................................... 112 9.5.14 UE_PostProcessPSSTransFile.......................................................................................................... 112 9.5.15 UE_CalculateItemPrice_Method10to20 ........................................................................................... 112 9.5.16 UE_RescanLevelCalculation ............................................................................................................ 112 9.5.17 UE_Pre-RescanDetermination.......................................................................................................... 112 9.5.18 UE_PostRescanDetermination.......................................................................................................... 113 9.5.19 UE_PreProcessMarketingMessage................................................................................................... 113 9.5.20 UE_LoginAuthorization .................................................................................................................... 113 10. System Administration Interface ......................................................................114 10.1 CONFIGURING THE BROWSER SOFTWARE ............................................................................................... 114 10.2 ESTABLISH USER ACCOUNTS ON THE SERVICE TERMINAL ..................................................................... 114 10.3 UNDERSTANDING USER ACCESS TO ADMINISTRATIVE PAGES AND ACTIONS ......................................... 115 10.4 CHANGING SCREEN TEXT ON THE SERVICE TERMINAL........................................................................... 116 10.4.1 Service Terminal System Settings...................................................................................................... 117 11. Specific Features................................................................................................120 11.1 11.2 11.3 11.4 MULTIPLE LANGUAGE SUPPORT ............................................................................................................. 120 PRICING METHODS ................................................................................................................................. 120 CURRENCY CONVERSIONS ...................................................................................................................... 120 CONTROL TICKET PRINTING ................................................................................................................... 120 Appendix A Database Layout Diagram...................................................................121 Appendix B Database Tables / Physical Properties ..............................................125 B.1 B.2 B.3 B.4 B.5 B.6 B.7 B.8 B.9 B.10 B.11 B.12 B.13 B.14 B.15 B.16 B.17 B.18 B.19 B.20 TABLE NAME: PSS_ADMIN_ACTION .......................................................................................................... 125 TABLE NAME: PSS_ADMIN_MENU............................................................................................................. 125 TABLE NAME: PSS_ADMIN_PAGE .............................................................................................................. 126 TABLE NAME: PSS_ADMIN_USER .............................................................................................................. 126 TABLE NAME: PSS_BARCODE_VARIABLE_WEIGHT .................................................................................. 127 TABLE NAME: PSS_CURRENCY .................................................................................................................. 128 TABLE NAME: PSS_CUSTOMER .................................................................................................................. 128 TABLE NAME: PSS_CUSTOMER_MESSAGE................................................................................................. 130 TABLE NAME: PSS_CUSTOMER_SUSPEND_REASON .................................................................................. 130 TABLE NAME: PSS_DEPARTMENT ......................................................................................................... 131 TABLE NAME: PSS_EOD ....................................................................................................................... 131 TABLE NAME: PSS_ITEM ....................................................................................................................... 132 TABLE NAME: PSS_LANGUAGE ............................................................................................................. 133 TABLE NAME: PSS_MANUFACTURER .................................................................................................... 133 TABLE NAME: PSS_MARKETING_DEPARTMENT.................................................................................... 133 TABLE NAME: PSS_MARKETING_ITEM ................................................................................................. 134 TABLE NAME: PSS_MARKETING_MFG .................................................................................................. 134 TABLE NAME: PSS_MARKETING_SENT ................................................................................................. 135 TABLE NAME: PSS_MESSAGE_LOG ....................................................................................................... 135 TABLE NAME: PSS_OPENING_MESSAGE ............................................................................................... 136 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page iv February 1, 2000 B.21 B.22 B.23 B.24 B.25 B.26 B.27 B.28 B.29 B.30 B.31 B.32 B.33 B.34 B.35 B.36 B.37 B.38 B.39 B.40 B.41 B.42 B.43 B.44 B.45 B.46 B.47 B.48 B.49 B.50 B.51 B.52 B.53 TABLE NAME: PSS_ORDER_LIST ........................................................................................................... 136 TABLE NAME: PSS_ORDER_LIST_ITEM ................................................................................................. 136 TABLE NAME: PSS_ORDER_STATUS ..................................................................................................... 137 TABLE NAME: PSS_POS_STATUS.......................................................................................................... 137 TABLE NAME: PSS_RESCAN_DIFFERENCE ............................................................................................ 138 TABLE NAME: PSS_RESCAN_LEVEL...................................................................................................... 138 TABLE NAME: PSS_SESSION .................................................................................................................. 139 TABLE NAME: PSS_SHOPPING_ACTIVITY .............................................................................................. 139 TABLE NAME: PSS_SHOPPING_HISTORY_ACTIVITY ............................................................................. 140 TABLE NAME: PSS_SHOPPING_HISTORY_ITEM ..................................................................................... 141 TABLE NAME: PSS_SHOPPING_HISTORY_LIST ...................................................................................... 142 TABLE NAME: PSS_SHOPPING_HISTORY_RESCAN ................................................................................ 143 TABLE NAME: PSS_SHOPPING_INCOMPLETE_LIST ................................................................................ 143 TABLE NAME: PSS_SHOPPING_ITEM ..................................................................................................... 145 TABLE NAME: PSS_SHOPPING_LIST ...................................................................................................... 146 TABLE NAME: PSS_SHOPPING_LIST_STATUS ........................................................................................ 146 TABLE NAME: PSS_SHOPPING_TAX ...................................................................................................... 147 TABLE NAME: PSS_SPECIAL_BARCODE ................................................................................................ 147 TABLE NAME: PSS_SYSTEM_MESSAGE ................................................................................................. 148 TABLE NAME: PSS_SYSTEM_SETTING................................................................................................... 149 TABLE NAME: PSS_TAX_TABLE ........................................................................................................... 149 TABLE NAME: PSS_TAX_TABLE_ENTRY .............................................................................................. 150 TABLE NAME: PSS_TEXT....................................................................................................................... 150 TABLE NAME: PSS_UNKNOWN_ITEM .................................................................................................... 150 TABLE NAME: UMS_CARD_READER_TYPE .......................................................................................... 151 TABLE NAME: UMS_CRADLE ................................................................................................................ 152 TABLE NAME: UMS_DISPENSER ............................................................................................................ 152 TABLE NAME: UMS_ENTRANCE ............................................................................................................ 153 TABLE NAME: UMS_POWER.................................................................................................................. 154 TABLE NAME: UMS_PRINTER................................................................................................................ 155 TABLE NAME: UMS_STATUS_CODES .................................................................................................... 156 TABLE NAME: UMS_TERMINAL ............................................................................................................ 156 TABLE NAME: UMS_TERMINAL_TYPES ................................................................................................ 157 Appendix C Price Calculation Algorithms..............................................................158 C.1 PRICING METHODS ...................................................................................................................................... 158 C.2 SPLIT PACKAGE PRICING ............................................................................................................................. 159 C.3 UNIT PRICING .............................................................................................................................................. 159 Unit Pricing Example ........................................................................................................................... 161 C.4 BASE PLUS ONE PRICING............................................................................................................................. 161 C.5 GROUP THRESHOLD PRICING....................................................................................................................... 162 Group Threshold Pricing Example ................................................................................................ 164 C.6 GROUP ADJUSTED PRICING ......................................................................................................................... 166 C.7 UNIT ADJUSTED PRICING............................................................................................................................. 167 Unit Adjusted Threshold Pricing Example 2 ............................................................................ 169 C.8 MIX AND MATCH GROUPINGS ..................................................................................................................... 169 C.9 PRICING METHOD APPLICATION RULES ...................................................................................................... 169 C.10 ROUNDING METHODS ............................................................................................................................. 170 Appendix D POS Interface File Descriptions .........................................................171 D.1 D.2 D.3 D.4 D.5 PSS TRANSACTION FILE .............................................................................................................................. 172 POS TRANSACTION FILE ............................................................................................................................. 174 ITEM RECORD FILE ...................................................................................................................................... 176 TAX TABLE FILE.......................................................................................................................................... 177 CUSTOMER INFORMATION FILE ................................................................................................................... 178 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page v February 1, 2000 Introduction ______________________________________________________________________________ 1. Introduction 1.1 Purpose of Document This document is an aid to be used in the configuration, customization and installation of the WaveWorks Portable Shopping System (PSS). 1.2 Assumptions This document assumes that the reader is familiar with the functionality of Symbol’s WaveWorks architecture, the WaveWorks Client, and the Server Enabler. In addition, the reader should be familiar with the Windows NT Operating System, and third-party “browser” software. 1.3 Reference Documents • Portable Shopping System Functional Specification • Portable Shopping System Design Document • Portable Shopping System Users Reference Guide • ScreenMaker Users Reference Guide WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 1 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2. Architecture Overview The Portable Shopping System utilizes Symbol Technologies’ proprietary WaveWorks threetiered architecture, which provides clear separation of the user interface, business logic and database portions of the system. For the PSS, WaveWorks provides application messaging functions and manages distributed objects on the Microsoft Windows NT platform. 2.1 Introduction to WaveWorks WaveWorks is a light weight, high performance, three-tiered, application messaging and distributed object management architecture which is designed to run on the Windows NT system platform. As a horizontal system component, WaveWorks can serve as the backbone architecture for a wide variety of multitiered client/server applications. The WaveWorks system provides the following application services: • Thin client radio terminal environment (reduces system administration costs) • Radio Terminal display and client state management • Client-to-Server and Client-to-Client messaging service • Business Service object broker • Configurable Business Servers • Distributed business service objects • Load-based object instancing • Load balancing • Service based instancing • DBMS connection sharing • Client specific object instancing • Web-based system administration. • Application user password validation and security service WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 2 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.1.1 WaveWorks Design Objectives Three-tiered ArchitectureWaveWorks provides a platform for implementing applications that maintain a clear separation between the user interface, business logic, and database layers. Light WeightWaveWorks is designed to run on P200 systems or better. AdaptableCOM object-based design allows easy addition of new business service objects to support new applications. The encapsulation of data access inside business objects makes it easy to change data sources in the future, without rewriting the entire application. Business Object ReuseCOM object-based design allows easy reuse of existing business service objects to support new applications. ScaleableA distributed-object architecture makes it easy to add additional business service capacity, based on changing business demands. DistributedWaveWorks system components are designed so they can be deployed across LAN or WAN networks. Network utilization can be optimized by placing the WaveWorks Business Server components near or on the DBMS server, while running the Display Server / Message Server components near or on the client connection point server. High PerformanceMultithreaded business service execution, avoidance of persistent message queues, event driven implementation (no polling), and automatic load balancing permit message rates of up to 500 per second (on a single system configuration). ReliableWaveWorks supports the ability to configure multiply redundant parallel Business Server components. In addition to load sharing, the redundant servers will automatically hotswap / load-shift to the remaining servers if one or more server systems suffer a complete or partial failure. Platform IndependenceDependency on NT specific features are minimal and are internally well isolated. Minimum Dependency on Third-party ComponentsTo improve platform portability and reduce licensing costs, WaveWorks depends on only generally available add-on components, such as: an ODBC compliant DBMS, Winsock 1.1, an http server, and a third-generation (or better) Web browser. A suitable version of all of these components is included with NT 4.0 server. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 3 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.1.2 WaveWorks Components The WaveWorks components are shown in the following diagram and described below. User Interface Tier Desktop GUI Clients Thin Radio Clients Web Clients (CGI) Thin Radio Clients Thin Radio Clients Desktop GUI Clients Thin Radio Clients Web Clients (CGI) Spectrum 24 Network Business Logic Tier Business Logic Tier Business Logic Tier Symbol Enabler WaveWorks Radio Display Servers WaveWorks Business Object Servers WaveWorks Config WaveWorks Message Server WaveWorks Business Object Servers Business Service Objects Business Service Objects WaveWorks Business Object Servers Business Service Objects Data Access Tier DBMS Device Drivers POS API ODBC (or other) Application Data Sources WaveWorks Message (TCP) COM API / Other Display ServerManages the user interface and screen flow for radio-based, thin client applications. Maintains client data variables to record the state of the client application. Invokes business services via WaveWorks messages. Message ServerProvides light weight message routing and load balancing services between the various WaveWorks system components. Supports Command / Response style communication for the execution of business services, and unsolicited client-to-client messaging. Business Server (Object Broker)Manages the creation, destruction, and invocation of COMbased business service objects. Automatically creates and destroys object instances based on system demand. Permits sharing of database connections by multiple clients. The WaveWorks architecture supports multiple Business Servers, running on either local or remote systems. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 4 February 1, 2000 Architecture Overview ______________________________________________________________________________ WaveWorks MessagesThe WaveWorks messaging service uses a common message format for all WaveWorks messages. This format contains a fixed header, followed by zero or more application dependent data fields. TCP is used as the transport protocol for all WaveWorks messages. This permits the business logic tier to reside on a remote system, if desired. The messages form the "glue" that cements the client interface tier of the application to the business logic tier. The messaging service can also be used to implement direct "client-to-client" messaging. Business Service ObjectsContain the vertical business application logic, implemented as Microsoft COM automation server objects. The term "Service Object" is used to describe the COM interface subset to which all WaveWorks-managed objects must adhere. Transaction ModelWaveWorks uses a transaction Id scheme to provide namespace services for purposes of automatically routing request messages to a capable Business Server for execution. Development Tools (Optional Component)An application interface development tool (Screen Maker) supports rapid development of thin client radio applications. A radio terminal simulation tool (Screen Runner) permits testing of Screen Maker applications without the need for an actual radio network. A WaveWorks C++ foundation class library is also available, which includes classes that support ODBC data access, WaveWorks messaging, INI file access, Date / Time manipulation,and more. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 5 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.2 PSS Software Overview Built upon the WaveWorks core software, the PSS software consists of • COM Objects • NT Services • Display Server Scripts • Database The COM Objects and NT Services perform the business logic. That is, they are responsible for the data manipulation and system sequencing that makes the system a portable shopping system. The methods contained in the COM Objects and the NT Services are invoked via WaveWorks transactions. The COM Objects are dynamically created and deleted by the Business Server. The NT Services are started at system startup and remain resident in the system. The Display Server scripts provide the user interface mechanism for the hand held terminals and entrance units. The scripts define the screen layout and provide the handling of user actions for those devices. When necessary, the scripts invoke business methods via WaveWorks transactions. The database contains all of the persistent data of the system. The database is used to store all information about the devices, shoppers, items, and system configuration as required. 2.3 Major Subsystems 2.3.1 Unit Management Subsystem The Unit Management Subsystem (UMS) manages the Symbol hardware devices that comprise the PSS system. Those devices include hand held terminals, cradles, entrance unit devices, ticket printers, and power supplies. UMS ensures that the devices work in concert with one another to provide a seamless integrated system. 2.3.2 Shopping Trip Subsystem Once the shopper retrieves the proper hand held terminal from the dispenser, the Shopping Trip application allows the shopper to add and delete items from their basket and view the “totals” information for their current shopping trip. Shopping trips can be ended by returning the hand held terminal to an empty dispenser slot or by scanning an “End of Trip” barcode. Each activity during the shopping trip is logged and available for review from the Service Terminal. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 6 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.3.3 Quick Order Subsystem While shopping, a user may choose to place a quick order through the optional Quick Order subsystem provided. The shopper identifies, through the quick order mechanism, the products and the quantities/weights of those products they wish to order. The quick order can then be sent to the appropriate department, where a web screen displays to store personnel the orders placed by shoppers. After they have finished processing the order, store personnel can send a message to the shopper that their order is ready to be picked up. 2.3.4 Queue Busting Subsystem The Queue Busting subsystem allows the PSS System to be used in a slightly different manner than normal, but also helps retailers and shoppers reduce the amount of checkout time. Any hand held terminal which has been released can be used for queue busting. This is normally done by store personnel to alleviate long checkout lines which may have formed. Transactions in this mode are initiated by scanning a special (configurable) barcode. More than one barcode can be configured for use in this manner. This barcode is expected to be on a plastic token. Once the special barcode has been scanned, the items in the customer basket are scanned. A PSS transaction is created in the same manner as a normal PSS transaction. After all items in the basket have been scanned, the special barcode, which began this mode, is scanned again. This transaction is sent to the POS System. The plastic token containing the barcode is then handed to the customer with instructions to give it to the cashier at the checkout register. When the customer reaches the register, they present the token and their loyalty card (if used) to the cashier who then performs a standard non-audit self scan checkout. After the customer checks out, the token can be re-used for other customers. 2.3.5 Express Shopper Subsystem The Express Shopper subsystem also allows the PSS System to be used in a slightly different manner than normal, and also helps retailers and shoppers reduce the amount of checkout time. A self-scanning kiosk is installed near the express checkout lanes in the store. A customer picks up a terminal, scans their items, and replaces the terminal into the dispenser slot. The customer then proceeds to the PSS checkout lanes and presents their ticket or loyalty card to the cashier who then performs a standard non-audit self scan checkout. 2.3.6 Electronic Marketing Subsystem The PSS system also allows for a basic electronic marketing facility through the Electronic Marketing subsystem. This application allows a retailer to send messages to a shopper’s hand held terminal anytime that a given item is scanned. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 7 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.3.7 User Messaging Also, through the User Messaging application, the store has the option to send messages to shopper’s hand held terminals. The messages can be any text, and can be made to be repeated, to be displayed at fixed times during the day, and/or to be directed to any set of shoppers currently in the store. In addition, messages can be "pre-loaded" such that they are displayed to the user the next time they enter the store and use the PSS system. 2.3.8 Transaction Ticket Printing The Transaction Ticket Printing application prints a transaction ticket for the shopper at the conclusion of their self-scan shopping trip. The ticket is used to direct the shopper to the selfscan or quick pay lanes. The ticket also provides a mechanism, when scanned, for notifying the POS System that this is a PSS transaction. Using a transaction ticket is optional. 2.3.9 POS Interface The POS Interface application provides the mechanism by which the PSS System can be fully integrated into a store’s environment. It handles price file updates and Scan-In/ Scan-Out file mechanisms. 2.3.10 System Administration Further, a system administration application is provided which allows store personnel to adjust and monitor the PSS system and data. 2.4 PSS Overview Diagram The following diagram depicts the PSS Software in the context of a WaveWorks system. The system hardware interfaces occur via the Spectrum 24 network. The hand-held terminal user interfaces are managed as shown in the Application User Interfaces. The Web screens used at the Service Desk Terminal interface via the Web Server. The Message Server routes messages through the Business Server to COM objects that perform the PSS business logic and provide any necessary database manipulations. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 8 February 1, 2000 Architecture Overview ______________________________________________________________________________ Entrance Station Ticket Printer Asterix Terminals Native POS System Controller Service Desk Checkouts PSS Web Server Spectrum 24 Network Ethernet Web API Customer Management System Configuration System Management Sockets Hand held terminal management PSS Web Server Applets Data Management (Reports and Queries) ObjectWave/OpenView Wireless Network Management Comm Manager System Status Comm Interface Transaction Maintenance Display Server Sockets Sockets Shopping Trip Module Unit Managem ent Module Application User Application User Interfaces Interfaces Message Server Sockets Configuration Files Business Server Business Server UMS COM Object Shopping Trip COM Object Threads Other COM Objects Future COM Objects ODBC - Database Interface & System Interface Drivers Configuration Files WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Data Base Page 9 February 1, 2000 Architecture Overview ______________________________________________________________________________ 2.5 PSS Component Diagram The following diagram gives a more complete listing of the software components included in the WaveWorks PSS system. Further details of these components are provided in subsequent chapters. Hand-Held Terminals HARDWARE Card Reader Entrance Display Store POS Ticket Printer Service Terminal HARDWARE INTERFACE SOFTWARE Hardware Interface Layer STEP/ Enabler Hardware Interface Layer Hardware Interface Layer POS Interface Service Browser Local POS Files CLIENT SOFTWARE Display Server Entrance Service Entrance Service IIS File Monitor Service Printer Service ComClientTx Message Server MESSAGING Business Server Unit Management COM BUSINESS OBJECTS POS Interface COM PSS Activity COM PSS DB Cleanup COM PSS Customer Rank COM POS File Transfer COM PSS Quick Order Barcode COM PSS Item Maint COM PSS Transactio n Files COM PSS Shopping Trip COM PSS Special Barcode COM PSS Customer Maint COM PSS System Messages COM PSS Web Utility COM PSS Transaction Ticket COM PSS Utilities COM PSS File Maintenan ce COM BUSINESS SERVICES PSS PSS PSS POS PSS Marketing NLS Lib Transaction Ascii Message Message (Language Ticket File Log Lib Support) Lib Lib PSS History PSS PSS PSS PSS PSS PSS Item PSS Shopping Special Customer Quick Order Customer POS Status Activity Lib Session Trip Barcode Rank Lib Lib Lib Lib Lib Lib PSS PSS System PSS PSS PSS PSS POS Variable PSS Utility PSS Db PSS File Messaging Shopping Import Barcode ConfiguraConfiguratio Weight Lib Cleanup Lib Utils Lib Lib Trip Lib Lib Lib tion Lib n Lib Barcode Unit Managemen Lib POS Events PSS Rescan Lib DATA STORAGE WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. PSS Activity Log Lib PSS Pricing Lib ODBC Database Page 10 February 1, 2000 Hardware Requirements ______________________________________________________________________________ 3. Hardware Requirements 3.1 Windows NT Computer A Windows NT Machine is required with approximately the following configuration: • Intel-based PC (minimum 233 MHz Pentium) • Windows NT Server version 4.0 (NT Server needed to perform DHCP functionality; if some other host in store is a DHCP server where PSS files can be written, NT Workstation is sufficient.) • VGA monitor • Mouse • xx Mb of free space on the hard diskdisk sizing is dependent on length of time historical data is to be stored in database • minimum 128 Mb RAM • CD drive • Ethernet adapter card • Token ring adapter card (optional) The build environment expected is: 3.2 • IBM RCO Version 2.3 NT Client Support • ODBC-compliant database (SQL Server is recommended) Hand Held Terminals • Symbol Technologies’ CST 2040 • Asterix 2 RF; 5-key model • Asterix 3, RF Note: See Symbol product literature for available terminal types and options. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 11 February 1, 2000 Hardware Requirements ______________________________________________________________________________ 3.3 Terminal Dispenser/Entrance Unit • Symbol Technologies’ CPD 20XX Dispenser - 96, 64, or 32 slot (for Asterix 2 terminals) • Symbol Technologies' Asterix 3 Standard Charging Cradle • Entry Station barcode reader or magnetic stripe reader • Standard furniture • Optional ticket printer Note: See Symbol product literature for available dispenser types and options. 3.4 Spectrum 24 Radio Network The hand held terminals communicate to the Windows NT computer via Symbol’s wireless radio system. The terminals send and receive radio messages via multiple “access points” located throughout the store. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 12 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4. PSS Software Installation This installation guide is intended to provide a roadmap for installing and configuring the PSS system and all supporting software. The reader should be familiar with the Windows interface and installing software. This guide assumes the software is being installed on a new machine. It is strongly recommended that the target computer be dedicated to running PSS and that you install the software onto a freshly formatted disk. Before Starting The following media will be needed during the installation process: Bootable Microsoft NT Server Version 4.0 Installation CD NT “Getting Started” book (with the Certificate of Authenticity on the front) NT 4.0 Service Pack 5 CD NT 4.0 Option Pack CD Video and Network Card drivers Microsoft SQL Server 7.0 (Standard) CD Microsoft Access CD or Microsoft Office 97 Professional Edition CD Symbol PSS Setup CD (includes WaveWorks, PSS, and customer changes) The following information will be needed during the install: - Administrative account and password for the computer The IP address and hostname of the target computer. (It is suggested that the target computer use a private IP subnet. The 172.16.N.N addresses are typically used with a subnet mask of 255.255.255.0; this allows for 256 hosts on the subnet). The range of IP addresses to allocate for DHCP use. If you need to have the target computer on the office/store network, make sure that there are no other DHCP servers on the same subnet. If that is not possible, then install a second network adapter and use it to connect to the outside world, leaving the private IP subnet for PSS use. Access Point ESS ID (aka Net ID) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 13 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.1 Install NT 4.0 Server The first step in the installation process is to install the NT 4.0 Server operating system. It is strongly recommended that you do a clean installation of the entire system. Many of the more expensive server PCs come with customized installation programs that walk the user thru the NT installation process. If your PC comes with a special installation CD, you should use it, but read this section first to identify the places where you will have to change settings from the default values. This section describes the NT installation process using the standard Microsoft NT Server installation CD. Below are the specific steps to follow: Turn the computer on. During the boot-up process, enter the CMOS setuphowever that process occurs on your machine. Look for a message that says which key to press to enter Setup (Delete and F2 are popular choices). Set the CMOS to boot from the CD-ROM drive. Insert the NT Server CD Installation in the CD-ROM drive, then exit from the CMOS settings. The system should now boot from the CD. The blue “Windows NT Setup” screen is displayed. Wait while various system files and drivers are loaded. The blue NT boot screen is displayed, then it goes back to the “Windows NT Server Setup” screen. Press Enter to install Windows NT now. The Mass Storage screen is now displayed. This section of the setup process is hardware specific. Most corporate PCs do not have SCSI interfaces installed in them. Many server PCs do come with SCSI interfaces, so you’ll need to know what kind of hard disks your system has before continuing. Press Enter to skip searching for SCSI devices. Press “S” to check for them. The Licensing Agreement is displayed. Read the Agreement (press the Page Down key to advance to the next page) until end of End User License Agreement (EULA) verbiage is reached. Press F8 to accept the Licensing Agreement. The Server Setup screen is displayed which lists any previous installations of NT. Select “N” to install a fresh copy of NT Server. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 14 February 1, 2000 PSS Software Installation ______________________________________________________________________________ The Components list is displayed. hardware/software components. The Partition options screen is displayed. It is very important to pay attention to what you are doing here. This section is also hardware specific. Start off by deleting all existing disk partitions. Select each existing partition (use the arrow key to move the highlighted partition) and following the on-screen instructions. The screen should now only show “Unpartitioned space” since you just deleted all existing partitions. The next step is to create a partition that NT will be installed onto. Depending on the size of your hard drive, you’ll want to select a value between 2GB (2047 MB) and 4GB (4095 MB). You will now create a system (C:) partition. Move the highlight to “Unpartitioned Space” with the arrow keys. Press “C” to create a new partition and then enter the partition size (a number between 2047 and 4095, consult your system administrator if you need help). If your disk is 8GB or smaller, you can create a D: partition here. If your disk is greater than 8GB in size, the NT setup program can’t access all of it, so it’s best to wait until later to create the D: partition. To create a D: partition, follow the same steps as for the C: partition, with the exception that the size will be all the remaining space on the drive (the number is already filled in for you by default). Typical installations might evenly divide a 6 or 8 GB disk between the C and D partitions. If you expect the database to be quite large, then give the D: parition more space than the C partition (but give C at least 2GB!). Put the highlight on the C: partition and press Enter to install NT on the C: drive The File System selection screen is displayed. The FAT file system is the default, but FAT partitions are limited to a maximum size of 2GB and are not as efficient as the NT File System (NTFS). Select the NTFS file system and press Enter. Wait while the system formats the C: drive. Note that the D: partition (if you created one) does NOT get formatted at this step. Formatting a 4GB partition can take a while (10 minutes perhaps). The File location screen displays. Press Enter to accept installing NT in the \WINNT folder. The Hard disk examination screen displays. Press ESC to skip the exhaustive hard disk check. The exhaustive check physically checks the entire hard disk surface and can take a very long time, so we skip it. Wait while setup does a quick disk check. Wait while setup copies files to the disk. The Setup Successful screen is displayed. Remove the CD from CD-ROM drive. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Press Enter to accept the list of standard Page 15 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Press Enter to restart the computer. Wait while the system reboots and prepares to continue the installation. You will be prompted to insert the NT server CD when it is ready to continue. Note that the PC is now using the mouse and is displaying graphical screens. Wait while more files are copied. The Windows NT Setup Wizard is displayed. Click the Next button to gather information about your computer. The Name screen displays. Enter a name and organization in the fields provided, then click on the Next button. Enter the Product ID (use the tab key to jump between fields) then click on the Next button. The Product ID code is found on the cover of the NT Server “Getting Started” book with the “Certificate of Authenticity” on it. The Licensing Modes screen is displayed. Select “Per Seat”, then click on Next. The Computer Name screen is displayed. Enter the name of the computer. Note the name must be unique to avoid confusion within your network domain. Then click on Next. Contact your network administrator if you need help selecting a Name. The Server Type screen is displayed. Select the “Stand Alone Server” option, then click on Next. The Administrator Account screen is displayed. Enter the Administrator Account password (and the confirmation to ensure you typed it correctly), then click on Next. The Emergency Repair Disk screen is displayed. Select “No”, since one will be created later (once the the system is completely configured). Click on Next to continue. The Select Components screen is displayed. In general, we try not load any “fluff” on the server, so we will limit the amount of extra software we install. De-select all the options (no check mark) except for the “Accessories” and “Communications” options. Highlight the Accessories option and click the Details button. Select all the components listed. Select the OK button. Highlight the Communications option. Click on the Details button. Deselect the Chat and PhoneDialer options. Hyperterminal should be the only component selected. Click on the OK button. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 16 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Click on the Next button on the Select Components screen to continue. The Windows NT Setup screen displays again, click Next to Install Networking. The Networking screen is displayed. The “will participate” and “wired to the network” options should be checked by default, click Next to continue. The Microsoft Internet Info Server (IIS) screen is displayed. The “Install” MS IIS box is checked by default. Uncheck the box since we will be installing a newer version of IIS later in the procedure. Click Next to continue. The Network Adapter screen is displayed. Click on the “Start Search” to look for network cards. Depending on the type of PC you have, the search may or may not find the network interface in your computer. The procedure assumes the search does NOT find the network card in the PC or built into the motherboard. Click on the “Select from list“ button, then Click on the “Have disk…” button. Insert the floppy disk containing the NT drivers for your network card then click on OK to search the disk. Select the proper driver from the list, then click OK to copy the driver files to the hard disk. The network card you just installed the drivers for should now be listed. Click Next to continue. The Network Protocols screen is now displayed. Deselect the “NWLINK IPX/SPX” protocol. Select the NETBui protocol. TCP/IP is required by the PSS system. NETBUI is used by NT to access disk drives on other computers. Click Next to continue. The Network Services screen displays. Click on the “Select from list..“ button. Select the “Microsoft DHCP Server” service from the list, then click OK. The DHCP service is a central resource that gives out IP addresses to other computers on the same network. The terminals do not store IP addresses, so they ask DHCP for an IP address when they first connect to the system. Note that DHCP Server is now added to the list of Network Services to install. Click Next. Click Next again to install the networking components. Wait while files are copied. Click OK on any status boxes that display. The TCP/IP Setup dialog box displays and asks “Do you wish to use DHCP?” Click the “No” button. Just to clarify, this dialog box is asking if we want to assign a hard-coded IP WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 17 February 1, 2000 PSS Software Installation ______________________________________________________________________________ address to the computer or to let the computer use DHCP (running on some other computer) to supply us with an IP address. We do NOT want to use DHCP to get an IP address. The TCP/IP Properties dialog is now displayed. Enter the following information in the fields provided, then click OK: - IP address - Subnet mask - Gateway The following entry may or may not display: “At least one of the adapter cards has an empty primary WINS address. Do you want to continue?” Answer “Yes.” The Bindings screen is displayed. Click Next to skip past Bindings screen. The Network Start screen is displayed. Click Next to start the network. The Computer Name screen is displayed. Click Next to accept the computer name and workgroup selection. Click Finish to complete the network setup. The Time screen displays. Select the appropriate time zone and system date and time, and then click on Close. A Message box is displayed concerning the video adapter. Click OK. Then click OK on the Display Properties dialog box. These selections just confirm that you are using the default 640x480 VGA video driver. We will update the video driver later in this procedure. Wait while Setup copies files. The Windows NT Successfully Installed message is displayed. then click “Restart Computer” button. Remove CD and floppy, Congratulations! Windows NT Server is now installed. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 18 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.2 Install the NT 4 Service Pack NT has bugs, just like any other software. Microsoft releases “service packs” to add new features and fix bugs on your NT installation. This section of the installation guide documents how to install Service Pack 5. Log in as Administrator (using the password you defined in section 1). Close the “Welcome to Windows NT” window. Insert the NT Service Pack 5 CD. Service Pack 5 will autostart in a few seconds. Click on the “Install Service Pack 5” link (on the left). The screen jumps to the Service Pack 5 options. Click on the “Install Service Pack 5 for Intel-based processors” link. A message box asks how to open the file. Click on “Open” to run the setup program. The License window displays. Select the “Accept License “ option, deselect the “Backup files” option, then click on “Install” to continue. Wait while files are copied. Click on the “Restart” button to reboot the PC. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 19 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.3 Install Internet Explorer 4.01 Service Pack 2 The PSS system uses the Internet Explorer web browser by default. Installing IE4 also provides some useful desktop updates. We will upgrade our IE4 installation to IE5 later in the procedure (primarily to install the Task Scheduler that comes with IE5), but we install IE4 here to get the desktop update and other Windows enhancements. Log in as Administrator. The “Welcome to Window NT” Screen is displayed. Uncheck the “Show Welcome Screen Next Time“ option, then click “Close.” Open, then close, the CD drive to restart the Service Pack 5 installation program. Click on the “Internet Explorer 4.01 Service Pack 2” link on the left (scroll down if necessary). Click on the “Install IE4.01 SP2 for Intel-based Systems” link. Click Open on the security message. The Internet Explorer 4.01 Service Pack 2 screen is displayed. Click Next. The License screen is displayed. Select the “I accept” option, then click Next. The Installation Option screen is displayed. Click Next to accept a “Standard Installation”. The Windows Desktop Update screen is displayed. Click Next to install the desktop update. The Active Channel Selection screen displays. Click “Next”. The Destination folder screen displays. Click “Next” to accept the default destination folder. Wait while files are copied. Click OK to complete the install. Wait while the system is configured. Click OK to restart the PC. Wait while the PC reboots. Log in as Administrator again. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 20 February 1, 2000 PSS Software Installation ______________________________________________________________________________ The IE4.01 setup program automatically starts when you log in and finishes configuring the system. Wait for the desktop to appear. Close the Active Desktop Window (click the “x”) Click on Start button, then Settings, then Active Desktop and uncheck the “View as Web Page” option. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 21 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.4 NT Option Pack Install The NT Option Pack installs software that is not part of the standard NT installation. Our purpose for installing the Option Pack is to install the Microsoft Internet Information Server (IIS). IIS is the web server used by PSS for the Service Terminal screens. Insert the Option Pack CD, click Install Click on Step 5, Install the Windows NT Option Pack. Select the “Run this program from current location” option, then click the OK button. Click “Yes” on the security warning screen. The message “Not tested with Service Pack 4 or greater. Do you wish to proceed?” message displays. Click Yes. The NT Option Pack Setup screen is displayed. Click Next to continue. The License Agreement displays. Click on the “Accept” button. The Options screen is displayed. Click on the “Typical” button. Click on the Next button to confirm the default file locations. Click on the Next button to confirm the default “mailroot” location. Wait while files are installed. Click “Finish” to complete the setup. Click “Yes” to restart the computer. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 22 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.5 Install the Video Driver The normal NT installation uses a generic video driver. This section leads you through the steps to installing a video driver for the specific video card in your computer. Installing the correct video driver for your hardware allows the system to run at higher resolutions, refresh rates and numbers of colors. You will need the floppy disk containing the video drivers in this section. Right Click on the desktop and select the Properties option from the menu. The Display Properties window is displayed. Select the Settings tab. Click on the “Display Type” button. Click the “Change…” button. Click on the “Have Disk…” button. Insert the floppy disk containing the NT video drivers. Click OK. Select the appropriate driver from the list, then click OK. A third party driver message is displayed. Select the “Yes” button. Wait while files are copied from the floppy disk to the hard drive. The “Successful Installation” message is displayed. Click OK. Select the Close button on Display Type window. Select the Close button on Display Properties window. Remove the floppy disk from the drive. Click “Yes” to reboot the computer. Wait while the computer reboots. Log in as Administrator. A message about a new graphics driver is displayed. Click OK. Set the Desktop Area to 1024 x 768 (suggested value) Set Color Palette to 65536 colors (suggested value) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 23 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Set Refresh Frequency to 85Hz (or the highest refresh rate offered) Click the “Test” button, then the OK button to view the test pattern. The test ends after 15 seconds. Click “Yes” if you saw the test patten properly. Click OK to exit the Display Properties window. Click on the Start button, then Control Panel, then System, then Performance tab. Set the Virtual Memory min and max sizes to twice the RAM installed in the computer, then click the “Set” button. Click OK. Select Start Up/Shutdown tab. Change time in “Show list for…” option to 3 seconds. Click OK. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 24 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.6 Create and Format the Database partition You may remember the discussion about the creation of a D: partition on the hard drive from the early steps of this procedure. If you created a D: partition then, you may skip to the Format steps. If you did not create a D: partition earlier, we will create (and then format) one here. The D: partition is where we store all the database data files. Run the Disk Administrator utility to create and format the D: partition: • Click on the Start button, then Programs, then Admin Tools, then Disk Administrator • Click OK to update the configuration Creating the D: partition << TO DO: add steps on creating a Logical drive in an Extended partition. Include info about possibly needing to move the CD-ROM drive letter to E first, so that you can make the new partition the D: drive>> Formatting the D: partition Click on the D: drive to select it (make it the active partition) Right click on then D: drive, then select “Format” Change the file system to NTFS (NTFS is more efficient than FAT) Change the Volume label to “Database” Select the “Quick Format” option Click on the “Start” button A warning message about losing data displays. Click OK. A “Format complete” message displays. Click OK. Click on “Close” to exit the Format window. Close “Disk Admin” window (click on the “X” in the upper right corner of the screen). WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 25 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.7 Desktop Cleanup (optional) This section includes OPTIONAL changes to the desktop environment. We’ve found that these changes make life a little easier. The intent is clean up the desktop and to set up the Explorer window to show the data we want to see. Delete the Outlook Express, My Briefcase, Internet Explorer, and Inbox Shortcuts by rightclicking on the desktop icon and then selecting the Delete option. Right click on the “Recycle Bin” icon. Select Properties. Select the “Do not move files… “ option. Click OK. This step basically turns off the Recycle Bin and causes all files to be deleted immediately. We find ourselves creating (and later deleting) large log files. If the Recycle Bin is active, you won’t actually delete the file (and free up the disk space) until you empty the Recycle Bin. So we turn it Off. Right click on the Recycle Bin icon. Select the “Empty Recycle Bin” option, then click “Yes”. This step cleans out any files that were previously deleted and moved to the Recycle Bin. Right click on the desktop and select the Arrange Icons submenu. Select the Auto Arrange option. This step makes the icons arrange themselves automatically (top to bottom, left to right). You may want to skip this step if you prefer to group desktop shortcuts all over the place. Click the Start button. Select Settings, then Taskbar, then Small Icons, then OK. This step keeps the Start menu smaller. Click the Start button, then Programs, then Windows NT Explorer. Select View Menu, Folder Options, View Tab. These changes maximize the amount of information displayed in the Explorer window. - Select Display full path in the title bar. - Select “Show Attributes” in Detail View. - Select “Show Map Network Drive” button in toolbar. - Uncheck Hide file extensions for known file types. - Click on “Show All Files” WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 26 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.8 Install Microsoft SQL Server 7 This section installs Microsoft SQL Server 7, the database application used to store PSS data. This section only installs the software, it does not configure SS7, or create the PSS database. Those steps are in the next section. Insert the MS SQL Server 7 (Standard Edition, not Enterprise) CD. The setup program will autostart. Click on the Install SQL Server 7.0 Components link. Click on the “Database Server- Standard Edition” link. Click on Next to accept “Local Install” The Welcome screen is displayed. Click on Next to continue. The License screen displays. Click on Yes to accept. Click on Next to accept the default Name and Company. Enter CD key at window The Setup Type screen is displayed. Select “Typical” install (default). Click “Browse” button for Data files. We want to put the SS7 data files on a different disk than the application itself. Change C:\ to D:\, then click OK. Click on Next to continue. The Services Accounts window displays. Select “Use the Local System Account,” then click on Next. Select Next (again) to continue. The Choose Licensing Mode screen displays. Select “Per Seat” then “Continue” The Licensing screen displays. Check the “I agree that..” box, then OK. Click on “Continue” again (screen change might be sluggish) Wait while files are installed (several minutes) The Setup complete screen is displayed. Click Finish. Click “Exit” to exit SQL Server 7 install program. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 27 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Reboot the PC manually. (Start | Shutdown | Restart) 4.9 Create and Configure the PSS Database The PSS database is stored in a few large files. This section creates the (empty) PSS data files. We will still have to create database tables and populate them (later in the procedure). After creating the PSS database, we will configure SQL Server and set up the automated database maintenance tasks. 4.9.1 Create the (blank) PSS Database This step will create the initial storage for the PSS database. Select Start button, then Programs, then Microsoft SQL Server 7.0 Enterprise Manager. Expand the “MS SQL Server” branch. Expand the “SQL Server Group” branch. Expand thebranch. Under the branch, right click on “Databases.” Select “New Database.” Enter “Name” as “PSS”. WARNING: If you enter a different name, various PSS database scripts will no longer work. It is strongly recommended that you use the default database name of “PSS”. Use something else at your own risk! Set the initial database size to 512MB. Click on the Transaction Log tab. Set the initial size transaction log to 512MB. Click OK to create and prepare the database Wait while the database is created (about 5 minutes) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 28 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.9.2 Configure SQL Server This step will configure SQL Server to function properly, and allow sufficient security access to the database. Expand the “MS SQL Server” branch. Expand the “SQL Server Group” branch. Expand the branch. Right-click on the local machine name. Select “Properties” In the General tab, at the bottom, make sure that in the AutoStart policies, both ‘Autostart SQL Server’ and ‘Autostart SQL Server Agent’ are checked. Press OK. Expand the security branch Right click on “Logins” and select “New Login” Select SQL Server authentication In the “Name” field, type: IUSR_ Click on Database Access tab Click on Pss database “Permit” column Select db_datareader and db_datawriter Click on OK Under the local machine name icon, drop down and expand ‘Management’ and then expand ‘SQL Server Agent’. On the SQL Server Agent icon, if a green arrow does not appear, right-click on the SQL Server Agent icon, and select Start. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 29 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.9.3 Configure the Clear Transaction Log job This step will schedule a clearing of the SQL Server Transaction Log, which provides temporary space for all data modification activities in the database. The Transaction Log must be cleared occasionally to remove old inactive database transaction entries. Under SQL Server Agent, click on ‘Jobs’. In the right pane, right-click, and select ‘New Job...’ General tab: In Name, enter 'Clear Transaction Log'. Under Category, select 'Database Maintenance'. Steps tab: Click New... In Step name, enter 'Clear Transaction Log'. Under Database, select the name of the PSS database. In Command, enter 'BACKUP TRANSACTION WITH TRUNCATE_ONLY, where is the name selected under the Database field. Press OK. Schedules tab: Press New Schedule... In Name, enter 'Every 2 hours' (or if you decide to use a different recurrence, a similarly descriptive name) Make sure Recurring is selected, and press Change... In Occurs, press Daily. In Daily Frequency, select Occurs Every, and change the value to the right to 2. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 30 February 1, 2000 PSS Software Installation ______________________________________________________________________________ In Starting At, change the time to 1:55am (or 5 minutes before backups will be scheduled to start below). Press OK. Press OK. Press OK. 4.9.4 Configure the Extensive Database Check and Backup job This step will configure a database backup, and an extensive check of the integrity of all of the structures in the database, including tables and table indexes, which will run once a week. The integrity check takes a relatively long time because the structure of all of the table indexes must be verified, and because of this, this activity must be scheduled for the time of the week with the least shopping activity. Under ‘Management’, click on ‘Database Maintenance Plans’. In the right pane, right-click, and select ‘New Maintenance Plan...’, and the Database Maintenance Plan Wizard should appear. Click “Next.” This maintenance plan will include an exhaustive optimization and validation of the database, as well as a backup. It should run once a week when the system is unused, or lightly used. The default schedule for these activities is Sunday in the early morning hours. You should change this schedule only if necessary. On the Select Databases page, make sure ‘These databases’ is selected, and check the box next to the PSS database name. Click ‘Next’. On the ‘Update Data Optimization Information’ page, click on ‘Reorganize data and index pages’, and click on ‘Remove unused space from database files’. This operation may take some time, and slow down the system, so if you have a reason to use a different schedule, then next to ‘Schedule’ press the ‘Change’ button, and make the appropriate changes. Click ‘Next’. On the ‘Database Integrity Check’ page, click on ‘Check database integrity’. Click on ‘Perform these tests before doing backups’. If you have a reason to use a different schedule, you can change it by pressing the ‘Change’ button next to ‘Schedule’. Make any changes, and press ‘OK”. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 31 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Click ‘Next’. On the ‘Specify the Database Backup Plan’ page, make sure the ‘Back up the database’ and ‘Verify the integrity’ options are selected, and under the ‘Location to store’, that ‘Disk’ is selected. If you have a reason to use a different schedule, you can change it by pressing the ‘Change’ button next to ‘Schedule’. Make any changes, and press ‘OK”. Click ‘Next’. On the ‘Specify Backup Disk Directory’ page, make sure ‘Use this directory’ is selected, and enter the location where your backups should go (usually a different physical drive than the drive on which the database resides). The default directory is the ‘Backup’ directory under your SQL Server 7 installation directory, such as C:\MSSQL7\BACKUP. In any case, you should make sure that the specified directory exists in Windows Explorer, and create it if it does not (using File, New, Folder). Through normal operation, the database, and therefore the backups, can eventually grow to be very large, so make sure the space available will be sufficient. Click on ‘Remove files older than’, and change the data to the right to ‘2’ ‘Days’. This value can be varied based on the amount of space available, and the number of days of backups you wish to keep. Click ‘Next’. When the ‘Specify the Transaction Log Backup Plan’ page appears, click ‘Next’. When the ‘Reports to Generate’ page appears, click ‘Next’. When the ‘Maintenance History’ page appears, click ‘Next’. When the ‘Completing the Database Maintenance Plan Wizard’ page appears, select the entire contents of the ‘Plan Name’ field, and type over it: ‘DB Extensive Check and Backup’. This may not paint correctly, but your changes should appear in the list once you are finished with this step. Click ‘Finish’. Click OK. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 32 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.9.5 Configure the Nightly Database Check and Backup job This step will configure a database backup and a brief check of the integrity of all of the tables in the database, which will run every day of the week, except for the night on which the extensive check and backup is run. This activity should be scheduled for the time of the day with the least shopping activity. Once again, in the right pane, right-click, and select ‘New Maintenance Plan...’, and the Database Maintenance Plan Wizard should appear. Click ‘Next’. This maintenance plan will include a quick validation of the database, and a backup. It should run once a night (except for the night on which the exhaustive checks are scheduled) when the system is unused, or lightly used. The default schedule for these activities is each day in the early morning hours. You should change this schedule only if necessary. On the Select Databases page, make sure ‘These databases’ is selected, and check the box next to the PSS database name. Click ‘Next’. When the ‘Update Data Optimization Information’ page appears, click ‘Next’. On the ‘Database Integrity Check’ page, click on ‘Check database integrity’, and then click on ‘Exclude indexes’. Click on ‘Perform these tests before doing backups’. Next to ‘Schedule’ press the ‘Change’ button. Unless you have a reason to use a different schedule, make sure ‘Weekly’ is selected, and to the right, check every day except for the day on which the exhaustive backup is scheduled. If the default, Sunday, is used for exhaustive backups, only every other day from Monday to Saturday should be checked. Press “OK”. Click ‘Next’. On the ‘Specify the Database Backup Plan’ page, make sure the ‘Back up the database’ and ‘Verify the integrity’ options are selected, and under the ‘Location to store’, that ‘Disk’ is selected. Next to ‘Schedule’ press the ‘Change’ button. Unless you have a reason to use a different schedule, make sure ‘Weekly’ is selected, and to the right, check every day except for the day on which the exhaustive backup is scheduled. If the default, Sunday, is used for exhaustive backups, only every other day from Monday to Saturday should be checked. Press ‘OK”. Click ‘Next’. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 33 February 1, 2000 PSS Software Installation ______________________________________________________________________________ On the ‘Specify Backup Disk Directory’ page, make sure ‘Use this directory’ is selected, and enter the location where your backups should go (usually a different physical drive than the drive on which the database resides). The default directory is the ‘Backup’ directory under your SQL Server 7 installation directory, such as C:\MSSQL7\BACKUP. In any case, you should make sure that the specified directory exists in Windows Explorer, and create it if it does not (using File, New, Folder). Through normal operation, the database, and therefore the backups, can eventually grow to be very large, so make sure the space available will be sufficient. Click on ‘Remove files older than’, and change the data to the right to ‘2’ ‘Days’. This value can be varied based on the amount of space available, and the number of days of backups you wish to keep. Click ‘Next’. When the ‘Specify the Transaction Log Backup Plan’ page appears, click ‘Next’. When the ‘Reports to Generate’ page appears, click ‘Next’. When the ‘Maintenance History’ page appears, click ‘Next’. When the ‘Completing the Database Maintenance Plan Wizard’ page appears, select the entire contents of the ‘Plan Name’ field, and type over it: ‘DB Backup’. This may not paint correctly, but your changes should appear in the list once you are finished with this step. Click ‘Finish’. Click OK. Exit Enterprise Manager. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 34 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.10 Install Microsoft Access There are times that you may want direct access to the WaveWorks database. You do not need to install the whole MS Office Suite or even any of the Access extras, just Access. This procedure assumes you are using the Office 97 Professional CD. Insert the Microsoft Office Professional CD. Click on Install MS Office. The Welcome screen is displayed. Click on the Continue button. Enter Name and Organization. Click OK. The default install folder is displayed. Click OK to accept the default location. The installation type window is displayed. Select “Custom”. Deselect everything except Microsoft Access, the click Continue to install A success message is displayed. Click OK to complete the setup. Click on the “X” to exit setup. 4.11 Internet Explorer 5.0 with Task Scheduler install This section installs the latest version of the Internet Explorer browser. The main reason we install IE5 is to also install the new Task Schedule program. PSS uses the Task Scheduler to periodically trigger transactions. We will configure the periodic tasks later in this procedure. Insert the PSS CD. Open an NT Explorer window. Double click on the “symie5.exe” icon in the root folder of the CD. Wait while lots of files are copied to the disk (takes a while). The PC will automatically reboot when done. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 35 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Log on as Administrator. The final setup of IE5 will continue. The normal desktop will be displayed when setup is complete. 4.12 Install WaveWorks ObjectWave has been renamed “WaveWorks.” The name change is only partially complete, so you may still see references to “Objectwave” on the system. WaveWorks is the foundation that the PSS system is built on. Insert the PSS CD (if it’s not still in the CD-ROM drive from the previous step) Run the WaveWorksSetup.exe file via Explorer to install WaveWorks. The Welcome Screen is displayed. Click on the “Install” button. The Components Screen is displayed. Click on the “Next” button. The Destination Directory is displayed. Click Next to accept the default location. NOTE: You will break several PSS scripts and will have to perform extra configuration steps to correct these problems, if you install to a non-default location. Click Next to accept the default network parameters. Uncheck the “Autostart Services” option. You will need to make the WaveWorks services autostart before placing the system into production, but it MUST be unchecked until you have completed the entire PSS installation and verified that things are working properly. Click Next to continue. You may accept the default value of 35 days to retain logs, but if you are installing on a test/lab system, then perhaps you’ll want to change this value to 7 days to avoid using large amounts of disk space. Click Next to continue. Enter Domain (If part of a larger network). Select Next. The Install screen is displayed. Click Install, then OK. Wait while files are copied. The install is completed. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 36 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Click Finish Reboot the PC to make new environment variables and registry changes take effect 4.13 Install PSS Runtime System This section installs the PSS software. It is strongly recommended that you use the default folder for the files. This section installs the generic/base system. Run the PssWaveworksSetup.exe file to install the PSS system. PSS requires several Microsoft and WaveWorks components. If you have skipped any steps in this installation guide, then you will be notified by a dialog box of any missing components which may be required. The installation process may stop if a missing component is required. Please note the missing component name and follow the instructions in this document for installing that component. The Welcome screen displays. Click Next The PSS Components dialog displays. Choose the appropriate type of handheld terminal, entrance unit, printer and POS (Point of Sale) system interface which you will be using. Click Next. Select Destination Directory dialog displays. Click Install. Do NOT change the default installation directory for PSS. The current installation script will not be able to successfully complete the installation if this directory is changed. Wait while files install. Several DOS windows will be displayed as various batch file scripts are run. Most of these scripts are updating various WaveWorks and PSS database tables. Be sure to read the messages in the windows. If you see any error messages, write them down. After each script completes, the message “Press any key to continue” displays. Press a key to allow the install procedure to continue. The supplied PSS COM objects are registered at the end of the installation process. For a first time installation, you may get errors indicating that some Microsoft dll files are missing. These files have been delivered, but are not yet active, so the system reports errors. In subsequent installations, these messages should not appear. The Limited License Notice screen displays. Read its instructions and then press OK. The Installation Completed screen displays. Press the Finish button. The installation process is now completed WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 37 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Reboot the PC to make PSS environment variables and registry changes take effect. 4.14 Install Waveworks Development Studio This section installs the Waveworks Development Studio system used for modifying the scripts that drive the handheld terminal applications and that link terminal actions to WaveWorks transactions. It is strongly recommended that you use the default folder for the files. Run the ScreenMakerSetup.exe file on the root directory of the CD.. The Welcome screen displays. Click Next if you have installed the base WaveWorks system, or click Cancel and install that component first. The Select Components dialog displays. It defaults selection to the most likely components to be used. If you will be modifying handheld terminal displays, the ScreenMaker and Hardlock components must be checked. If you will be modifying Pss User Exit routines, the C++ Development Toolkit must be selected. The Select Destination directory dialog displays. Click Next. The Ready to Install dialog displays. If you are sure of your selections, click Next. The installation progress bar now displays showing the progress of the installation. If all goes well, the Installation Completed dialog box displays. Click Finish. This installation delivers the ScreenMaker application which is used for development of applications that run on Step compliant terminal devices. It also delivers WaveWorks libraries and header files and sets up environment variables needed to compile and link C or C++ WaveWorks transaction components. 4.15 Install PSS Development System This section installs the PSS Development system software required for modifying handheld terminal displays and providing other client-specific customizations. It is strongly recommended that you use the default folder for the files. Run the PssDeveloperSetup.exe file. The “PSS Development System Installation” screen displays identifying the prerequisite WaveWorks and PSS components. Click Next if you have installed these components, or click Cancel and install those components first. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 38 February 1, 2000 PSS Software Installation ______________________________________________________________________________ The PSS Development System requires several Microsoft and WaveWorks components. If you have skipped any steps in this integration guide, then you will be notified by a dialog box of any missing components which may be required. The installation process may stop if a missing component is required. Please note the missing component name and follow the instructions in this document for installing that component. The “Install New User Exit Sources” dialog displays. It defaults to installing the sources. If this is a first time installation you should just click the Next button. If this is not the first time installation and you have modified the User Exit sources, you may choose to skip this step. Before choosing, please read the release notes to see if any existing User Exit call formats have changed or if any new User Exits are supplied in this release before you decide on whether or not to install the User Exit sources. If you choose to install the User Exits, the files in the User Exit directory will be moved to a backup directory before the new files are installed. After making your selection, click Next. “Select Destination Directory” dialog displays. Click Install. Wait while files install. The “Installation Completed” dialog displays. The installation process has finished. Click Finish. This installation delivers PSS libraries and header files and sets up environment variables needed to compile and link the User Exit sources into a dll. It also contains a project file for version 6 of Microsoft Developer Studio. If you are using that development platform, you may use that file to build the dll. If you are using another development platform, you will need to develop your own make file or equivalent project file. Once you have built a new dll file, copy it to the Pss\Bin directory to make it part of the PSS runtime system. 4.16 TFTP Configuration TFTP (Trivial File Transfer Protocol) is the mechanism that is used to transfer files between the host and the terminal when the terminal boots up and connects to the host. This section explains how to install the Symbol TFTP service. Click on Start button, then Programs, then Command Prompt to open a command window. Type cd c:\tftpserver to change to the "TftpServer" folder. Type tftpsvr install c:\tftpserver\tftp.ini to install the TFTP server as a service. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 39 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Type Exit to close command window. 4.16.1 Create STEP hex images for the terminals to download This section explains how to create the hex image files that are transferred to the terminal. Asterix2 terminals have a somewhat different procedure than Asterix3 terminals, so follow the steps for the type of terminals you have. The net result of these steps is that new hex image and configuration files will be created and copied under the C:\TftpBoot folder for use by the terminals. Asterix2 Terminals Go to Start | Programs | Command Prompt to open a command prompt window. Change to the C:\Asterix2Step\Control folder Edit the “hosts.x” file. The file should have a single line with the IP address and hostname and port id of the DHCP server (typically the target computer). Save the file and exit. Change to the Asterix2Step\Hex1 folder Edit the “Net.cfg” file. Change the "net_id" to match the net ID of the access point(s) the PSS system is using. Close and save the file. Change to the Asterix2 folder. Run MakeStep.bat to create/copy terminal files to the TftpBoot folder Exit the command window. Asterix3 Terminals Go to Start | Programs | Command Prompt to open a command prompt window. Change to the C:\Asterix3Step\Control folder Edit the “hosts.x” file. The file should have a single line with the IP address and hostname and port id of the DHCP server (typically the target computer). Save the file and exit. Change to the Asterix3 folder. Run SetupStp.bat to create/copy terminal files to the TftpBoot folder Exit the command window. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 40 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.17 DHCP Configuration DHCP is the service that gives out IP addresses to Asterix terminals when they boot up. The DHCP service is allocated a range of IP addresses that it can give out. This section describes how to set up that range of addresses and make them active. Run the "DHCP Manager" program by selecting Start button, then Programs, then Administrative Tools. Select "Local Machine" (double click) Run Scope | Create... to create the range of IP addresses to manage. Enter the start and end addresses, and subnet mask. Change Lease Duration to Unlimited. In Name field at bottom of screen, enter description of terminals. Select "Yes" when asked to activate the addresses. Acknowledge status message. Close DHCP window (x at top). WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 41 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.18 Create an ODBC Data Source This section creates the ODBC data source that is used by the PSS software to access the database. It is strongly recommended that you use the default name “PSS” for the data source. Using a different name will require you to manually edit the PSS.INI file. The PSS software uses the data source name in the PSS.INI file and if a matching data source is not found, then nothing will work. Run the ODBC32 control panel applet (Select Start button, then Settings, then Control Panel, then ODBC) Click on the "System DSN" tab Click on the "Add..." button Select the SQL Server driver, then click the Finish button. Enter the following DSN information, then click on the Next button: Name: PSS Description: PSS Data Server: (local) Enter the following information on user IDs, then click the Next button: Select the "With SQL Server authentication..." radio button Change the Login ID: to "sa". Leave the Password blank. Click on Next. The Create New Data Source window is displayed. Change the default database to “PSS”, then click the Next button. Select the "Use regional settings" checkbox. Click the Finish button Click on the "Test Data Source..." button to verify everything is OK. Click on the OK button to return to the System DSN tab. Click OK to close ODBC Data Source Administration. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 42 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.19 Load Initial Data This step will populate the PSS database with the initial data needed for the system to run. The PSS system is very much a data-driven system. It is CRITICAL that these scripts be run correctly if you want the system to run properly. You can run a batch file that will run all the scripts for you (the “Automatic” method), but it requires that the database is named “PSS”. If you chose to use a different name for the database, you will have to run each script manually using the Query Analyzer program or edit the BAT file to use the database name you used. The Automatic method is the preferred method. Automatic Method Open a command window (Start | Programs | Command Prompt) Change to the Pss\Database folder Run the Pss_Create_And_Init.bat file to create the PSS tables and fill them with data. Exit the command window Manual Method Run the Query Analyzer program (Start | Programs | Microsoft SQL Server 7.0|Query Analyzer) Connect to SQLServer (click on the “…” button). Select the “Start SQLServer if stopped” button, then click OK. Select the PSS database from the dropdown list. Run the following SQL files, IN ORDER, by opening them (File | Open), then executing them by clicking on the green triangle. Pay attention to the status messages at the bottom of the window. The message should read “Query completed without errors” if the script was successfully executed. The following SQL files are found in the C:\Pss\Database folder (by default): Pss_Drop_Db.sql (deletes all existing PSS tables, so backup any existing data first) Pss_Create_Db.sql (creates empty database tables) Pss_Init_Data.sql (loads default data) PosInterface_Dbinit.sql (loads POS interface settings) PosInterface_Text_Engus.sql (loads POS text strings in US English, the default language) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 43 February 1, 2000 PSS Software Installation ______________________________________________________________________________ Ums_System_Settings.sql (loads Unit Management settings) Ums_Text.sql (loads Unit Management settings in US English) Exit WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Query Analyzer. Page 44 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.20 MS IIS Configuration This step will configure the web server to recognize the PSS Service Terminal as a valid Active Server Page application, and will allow access to the system from a web browser. Select Start button, then Programs, then Win NT Option Pack, then Microsoft Internet Information Server, then Internet Service Manager. Expand Internet Information Server. Expand Expand default Web Site Right click on PSS Interface - Properties. In the Virtual Directory tab, click on Create button. Click OK. Exit Save console setting message displays. Click No. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 45 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.21 Obtaining Access to PSS System Administration Screens This step will configure Internet Explorer for easy access to the Portable Shopping System Service Terminal. Open Internet Explorer (double-click on the icon on the desktop) If the Internet Explorer connection Wizard displays, select the “connect through Local Area Network” option. When the browser window displays, select Tools, Internet Options. In the ‘General’ tab, in the ‘Home page’ box, next to ‘Address:’ type in the address: http://localhost/pssinterface/index.asp, and press OK. Press the ‘Home’ button, which has an icon that looks like a house. The System Administration Main Menu screen displays. Login with the default username ADMIN, password ADMIN. You can then access the System User account screen and setup user accounts specific to your store, as described in the PSS User Reference Guide. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 46 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.22 Configure Task Scheduler This step creates processes that must run automatically at various intervals for the proper function of the Portable Shopping System. If these tasks are not configured correctly, certain features of the system, such as timed messaging, will not work, and the system will eventually cease functioning. Double-click "My Computer" on the Windows Desktop. Once the "My Computer" window appears, locate and double-click "Scheduled Tasks". There should be several tasks listed in the window ("Add Scheduled Task" is not a task, but will allow you to add tasks to the scheduler, if desired). For each task: Double-click the task, and the task dialog should appear. Make sure the Task tab is selected. In the "Run:" and "Start in:" fields, scroll across and make sure that all of the path names that appear point to the correct PSS installation directory (C:\Pss). In the "Run as:" field, enter the local Administrator account (e.g. MyMachineName\Administrator). Click the Set Password button, enter the Administrator password in each of the two fields, and press OK. Press OK on the task dialog. To verify that the scheduled task can run correctly, right-click on the task, and select Run. Scroll to the right in the Scheduled Tasks window, and make sure that under the Last Run Time column, the current time appears, and that under the Status column, no error messages appear. The task can then run successfully as scheduled. Once the procedure above has been run on all scheduled tasks, close the window. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 47 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.23 Configure Unit Management This step establishes the configuration of the hardware needed for PSS. The exact number of entries is specific for each installation, so you’ll need to know what your hardware set up is. Use the Service Terminal screens to add entries or just directly type them into the database using the SQL Server Enterprise Manager. If the hardware configuration is a “standard” setup, then perhaps it would be wise to have an SQL file that can be run from the Query Profiler instead of manually entering the data at each store. Follow the order of data entry as shown. There are relationships between the tables that require this order of creation: Create Power Supplies Create Entrances Create a row in the UMS_Entrance table for each entry station. The Entrance ID is just a sequential number that is used to identify the Entry Station once it has logged in. The Entry Station logs in using its MAC address (RF Entry stations) or its service name (Ex. PssEntrance01) for serial entry stations. The MAC address (or service name) needs to be entered in the Hardware ID field. If you have multiple entrances you can set the backup entrance. The system will automatically failover to the backup entrance when the entrance is set to Out of Service. Create Printers Each power supply can handle about a dozen devices. The Unit Management logic uses the relationship between cradles and power supplies to prevent unlocking more than one cradle per power supply. Enter one row for each power supply in the PSS system. Create a row in the UMS_Printer table for each printer in the system. The Printer ID is just a sequential number that is used to identify the Printer once it has logged in. The Printer logs in using its MAC address (RF printers) or its service name (ex. PssPrinter01) for serial printers. The MAC address (or service name) needs to be entered in the Hardware ID field. The system will automatically failover to the backup printer when the printer is set to Out of Service. Create Dispensers Create a row in the UMS_Dispenser table for each dispenser in the system. Dispensers are simply a logical group of cradles that are (usually) physically close to each other. A dispenser is NOT a piece of hardware, although all the cradles mounted on a particular piece of furniture may be called a dispenser. It is up to the discretion of the integrator on how to best group cradles into dispensers. You WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 48 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ want at least one dispenser per entry station, but you may have multiple dispensers per entry station. Customers are directed to a dispenser, so keep this in mind when deciding how to group cradles into dispensers. Each dispenser is controlled by a single entrance. - Create Cradles Finally, create a row in the UMS_Cradle table for each cradle in the system. This can be a time consuming process if you have 100 or more terminals and is a fine reason to have a standard SQL script for configuring the UMS tables. Each cradle has a location barcode sticker. Make sure that the cradle ID's you enter match the barcodes exactly (i.e. if the barcode is a "0100", the cradle ID entered must be 0100). The stickers MUST be unique, but they do not need to be sequential. Be careful to assign the correct power supply to each cradle. Note: you do not need to create rows in the UMS_Terminal table for the hand-held terminals. As terminals login to the system, rows are automatically created. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 49 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.24 Configure Licensing This step makes the number of licenses bought for specific Microsoft products known to the system, to avoid warnings in the NT Event Log about violations of software licenses. To do this, perform the following: Select Start, Programs, Administrative Tools, License Manager. The License Manager window should appear. From the License Manager menu, select License, New License. Next to Product, select “Microsoft SQL Server 7.0”. Next to Quantity, enter the number of licenses you have purchased. Press OK. Read the license agreement, and click on 'I agree that'. Press OK. From the menu, select License, New License. Next to Product, select “Windows NT Server”. Next to Quantity, enter the number of licenses you have purchased. Press OK. Read the license agreement, and click on 'I agree that'. Press OK. Close the License Manager. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 50 February 1, 2000 PSS Software Installation ________________________________________________________________________ ______ 4.25 Configure the NBQMAIN Service (IBM 4690 POS Only) If you chose the IBM4690 POS as your Point of Sale system, NBQMAIN service, which is part of IBM’s Retail Connectivity Option(RCO), is a critical link between the PSS system and the POS. The NBQMAIN service should be configured to startup automatically when WindowsNT starts up. It is NOT controlled by the WaveWorks System Controller. This section explains how to set up the service to automatically start and how to configure the service. You will need to make the NBQMAIN service auto-start at bootup. Go to StartSettingsControl PanelServices and click on the “nbqmain” entry in the list. Now click on the “Startup…” button (NOT the “Start” button). Select the Automatic startup option and click on the OK button. Close the Services window. The startup parameters, such as the POS controller name, LANA number and heartbeat interval are contained in the NBQMAIN.CFG file in the PSS\Bin folder. You will need to edit the NBQMAIN.CFG file to set these parameters to match your specific installation. Default values are provided in the file. The most likely parameter to be modified is the LANA number, which is specified with the –a switch in the NBQMAIN parameters list. This number identifies which netbios port to use for communication to the IBM4690 POS. The correct value for this parameter is determined as follows: From the Windows NT Start StartSettingsControlPanelNetwork. button follow the path Select the Services tab, then double-click the NetBIOS Interface Note the lana number for the “Nbf” entry for the network card connected to the POS network. For more information on configuring parameters for the NBQMAIN service, start a DOS command prompt session, set your path to C:\Pss\Bin and type the command: nbqmain -? Additional information is also available in the document Retail Connectivity Option Version 2.2 , IBM product reference 5764-054. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 51 February 1, 2000 PSS Software Installation ______________________________________________________________________________ 4.26 Setup NT System Log Select Start, Program, Administrative Tools, Event Viewer. Click on "Log" tab. Select "Log Settings" from pulldown Chnage settings for "System" In the "Event Log Settings" Window, in the event Log Wrapping Area, select "Overwrite events as needed" Click OK Click on Log Tab Select Exit WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 52 February 1, 2000 Configuration of the PSS System ______________________________________________________________________________ 5. Configuration of the PSS System 5.1 Set Up System Setting Constants All system configuration data is stored in the database. A System Administration screen is included to provide you with the ability to adjust the configuration data for the system. You can navigate to this screen by selecting System Settings under the System Management heading on the main System Administration screen. The Name of each configuration item relates this particular configuration item to a subsystem of the PSS System. The Subname provides a descriptive name for this particular item. The Value field displays the current setting for this field. The Description provides all the pertinent information explaining the use and/or settings for this item. The Unit gives the allowable range of values. The Default Value is the value used if no changes have been made to this item. And the Actions field limits the allowable actions for this particular item. Name – Subname 4POSSinterface – CopyTaxTables 4POSSInterface – NumberPriceBytes 4POSSInterface – POSTransFileVersion Activity – InactiveTime DisplaySize – ItemPrice Display Size – Total Price ImportItemData – CheckDigitExists Import Item Data – ValidateCheckDigit POSInterface – ExcludedDepartments POSInterface – LanAdapterNumber POSInterface – Local_TransferArea. POSInterface – POSControllerName POSInterface – POSControllerType POSInterface – ProcessedFileArea POSInterface – PSSItemBarcodeLength POSInterface – PSSTransactionType POSInterface –Remote_TransferArea POSInterface – Trace_Level POSInterface – UsePSSPrice POSItemFile – AddItemChkDigit POSItemFile – FileFormatVersion POSItemFile – FileName POSItemFile – FullItemFileName POSItemFile – MonitorInterval WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 53 February 1, 2000 Configuration of the PSS System ______________________________________________________________________________ Name – Subname POSItemFile – ProcessTX POSItemFile – PSSExpansionLength POSItemFile – RemoveItemChkDigit POSItemFile – TransferEnabled POSItemFile – TransferTime POSItemFile – TransferTX POSItemFile – TransferType POSItemFile – UserExpansionLength POSItemUpdate – MonitorInterval POSTaxFile – FileFormatVersion POSTaxFile – FileName POSTaxFile – MonitorInterval POSTaxFile – ProcessTX POSTaxFile – TransferEnabled POSTaxFile – TransferTime POSTaxFile – TransferTX POSTaxFile – TransferType POSTransFile – AddCustChkdig POSTransFile – AddItemChkdigit POSTransFile – FileFormatVersion POSTransFile – FileName POSTransFile – MonitorInterva POSTransFile – ProcessTX POSTransFile – PSSExpansionLength POSTransFile – RemoveCustChkdigit POSTransFile – RemoveItemChkdigit POSTransFile – TransferEnabled POSTransFile – TransferTime POSTransFile – TransferTX POSTransFile – TransferType POSTransFile – UserExpansionLength PSS_Global – Barcode_Type PSS Globar – Default Currency PSS_Global – Default_Language PSS_Global – LoyaltyCardLength PSS Global – PssVersion PSS_Global – PSS_Name PSS Global – Store Name PSS Global – Store Number PSS Global – Trace Level PSS Global – Transaction ID PSS File Monitor – Report Startup Configuration PSS File Monitor – Trace Level PSS TransFile – AddCustCheckDigit PSSTransFile – AddItemCheckDigit WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 54 February 1, 2000 Configuration of the PSS System ______________________________________________________________________________ Name – Subname PSSTransFile – FileFormatVersion PSSTransFile - File Name PSSTransFile – Monitor Interval PSSTransFile – ProcessEvent PSSTransFile – PSSExpansionLength PSSTransFile – Transfer Enabled PSSTransFile – TransferTime PSSTransFile – TransferTX PSSTransFile – TransferType PSSTransfile – UserExpansionLength RESCAN – ConsecNExcptBelowLvl RESCAN – DefaultDiffUnit RESCAN – DefaultInitLvl RESCAN – GlobalAllTimeoutl RESCAN – GlobalNoneTimeout RESCAN – GlobalRescan RESCAN – IgnoreScanTooMuch RESCAN – MaxTripAmt RESCAN – MaxWeeksWithout RESCAN – MinItemCnt RESCAN – MinTripAmt RESCAN – MinItemCntNoRescan RESCAN – NewUserNeverNumTrips RESCAN – NewUserNeverSecond RESCAN – NewUserRescan RESCAN – OptionsChangeData RESCAN – UseConsecNever RESCAN – UseConsecNeverExcept RESCAN – UseGlobalAllTimeout RESCAN – UseGlobalNoneTimeout RESCAN – Use GlobalRescanOpts RESCAN – UseMaxTripAmt RESCAN – UseMaxWeeksWithout RESCAN – UseMinItemCnt RESCAN – UseMinItemCntNoRescan RESCAN – UseMinTripAmt RESCAN – UseNewUserOpts SHOPPING TRIP – CreateScanIn SHOPPING TRIP – FS SUPPORT SHOPPING TRIP – FX TAXED SHOPPING TRIP – LOYALTY SHOPPING TRIP – MAXIMUM ITEMS SHOPPING TRIP – MAXIMUM VALUE SHOPPING TRIP – PRINT TICKET SHOPPING TRIP – ROUNDING METHOD SHOPPING TRIP – SYSTEM CURRENCY SHOPPING TRIP – SYSTEM LANGUAGE SHOPPING TRIP - Trace Level. SHOPPING TRIP – TRANSACTION BARCODE WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 55 February 1, 2000 Configuration of the PSS System ______________________________________________________________________________ Name – Subname SHOPPING TRIP – TRANSACTION TYPE SPECIAL BARCODE – CUSTOMERENDOFTRIP SVCTERMINAl – Card Prefix SVCTERMINAL – CustomStatusString SVCTERMINAL – UsePrinters SVCTERMINAL – UseQuickOrder TRANSTICKET – DefaultDir TRANSTICKET –DefaultPrinter TRANSTICKET – PrinterColumnWidth TRANSTICKET - Ticket Cut Type UMS – BadScanFactor UMS – BaseFactor UMS – ChargingFactor UMS – GoodScanFactor UMS – LaserOnFactor UMS – MaxBatteryLevel UMS – MinBatteryLevel UMS – PopupTimeout UMS – QueryTimeout UMS – RadioXmtFactor 5.2 Perform Initial Loading of Customer and Item Data Both the IBM 4690 POS and the FileBased POS interfaces require the creation of flat ASCII files of information for PSS to process. The formats and default filenames for the Item and Customer files are documented in Appendix D of this document. Ultimately the POS should create both of these file types for PSS to process. An Example Customer file and Item file are provided in the PSS\PosTools directory for reference. See the readme.txt file in the directory for more information on the files provided in that directory. After other configuration steps have been completed and the PSS System has been started, a set of test Customers and test items can be loaded into the system by placing the example Customer and Item files into the configured Transfer directory(C:\Pss\Transfer). The PssFileMonitor service will detect them and trigger the WaveWorks transaction to process them and load the information into the PSS database. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 56 February 1, 2000 Validation of System Operation ______________________________________________________________________________ 6. Validation of System Operation 6.1 Testing an Installation Tests On Windows NT Controller: Start ObjectWave System Controller Services or check that they are running. Selecting /opening browser software displays PSS Main menu. Valid username / password allows login and PSS Main Menu is displayed. System Summary screen shows system available and correct hardware status. Physically check that terminals are in “ready to shop” state. Physically check that Entrance Station displays “Welcome to PSS / insert card.” Valid shopper card can check out terminal (note location terminal taken from). System Admin / Terminals screen shows that location as “empty.” System Admin / View Current Shoppers screen displays that shopper name / card number. Begin Shopping Trip: Scanner Welcome screen displayed for n seconds. Opening messages display if defined. Press “+” button and scan a normal item that exists in Item File. Item should be successfully added and the Item Entry Screen displayed. Displays correct item description / quantity / price. Increments total quantity and dollar amount of all items. View Shopping List Screen. Add normal item that exists in Item File (Scan barcode while pressing “+” key). Add price-embedded item that exists in Item File. Add normal item that exists in Item File. View Shopping List Screen. On Shopping List Screen, scroll up and down through list. Delete normal item just added. Add Item not in Item File (Exception Item). (Scan barcode while pressing “+” key) Displays “Exception Item” screen for n seconds, then Item Entry screen is redisplayed. Add “restricted” item that exists in Item File. View Shopping List Screen. Add multiple quantities of the same normal item that exists in Item File. End Shopping Trip; verify on scanner. total value of all items total number of items Return scanner to cradle. Verify that scanner reads barcode location and that System Admin / Terminal screen updates that terminal status / location. If using tickets, verify ticket total matches display on scanner. Check System Administration Screens for shopper’s Item List and Activity List; verify that lists are correct. Check customer trip through POS register. Check System Administration Screens that shopper’s trip moves from Current to Historical Status. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Notes UPC #1 UPC #2 UPC #3 UPC #4 UPC #4 UPC #5 UPC #7 UPC #8 Page 57 February 1, 2000 Validation of System Operation ______________________________________________________________________________ 6.2 Obtaining System Status Information 6.2.1 Viewing The System Log The System Log screen allows you to view detailed information on events that have occurred in the system; for example, to determine the cause when the system is down. From the Main Menu, select System / Settings / Status / System Log. This screen displays the following information: • The dates and times that events occurred. The pages are ordered from the most current event to the least current. • The facility (part of the software) that performs a function. Management, Transaction Ticket, PSS File Processor, etc. • Actions performed that are specifically related to the facility, such as Terminal Returned, Print Receipt / Stub, POS transFile, etc. • Severity code from 1-4 and 10, in ascending order of severity. • Messages. Examples are Unit This System Log screen has several filter options for limiting the data display as follows: • Display all events in a particular date / time range. • Display all events associated with a particular facility within a date / time range. • Display all events associated with a particular action and date / time range. • Display all events with a particular severity code and date / time range. • Display all events with messages containing typed-in words or phrases. • You can also display data with all of the above filter options or select a date / range and any other one or more of these options. Note: The data in the log can be limited or expanded by setting the “trace level” of a particular system facility (function) to a particular level. Trace levels are set in the PSS Settings screen. If the trace level for the Quick Order function is set to 2, for example, the system will save information at level 2 and above, but will not save errors to the log that are beneath that level. The lower the trace level, the more details on the function are saved in the log. Trace levels are displayed on the log under the title Severity Level. If problems occur with a facility of the system, you can view the severity level for that facility and decide to lower the trace level so that future events relating to that facility will be saved in the log. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 58 February 1, 2000 Validation of System Operation ______________________________________________________________________________ 6.2.2 Viewing POS Status The POS Interface screen displays POS status messages and activities. These can be sorted by item name or start date. To access the POS Status screen, from the Main Menu, select Hardware / POS Interface. The following information is displayed: • Item name (i. e., customer file, item file, etc.) • Instance name • Detection time • Start and end time • Instance value(online, restarting, open, etc.) • Instance description(errors while processing, successfully processed, etc.) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 59 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ 7. Directory Listing of PSS Folders/Files This section provides a detailed listing and description of the Folders and Files that are created as a result of the PSS installation process. C:\ Folders SubFolder Files Asterix2Step Bios236.hex Makebios.bat Makectrl.bat Makehex1.bat Makehex2.bat Makestep.bat Romdisk1.hex Romdisk2.hex Sendbios.bat Sendhex1.bat Sendhex2.bat Description This folder contains the software that is loaded on the Asterix 2 hand held scanners and the batch files which place those files into the tftpBoot directory for retrieval by the scanners during initial introduction to the system or during reboot of the terminal. Bios hex file used for manual download. Used by makestep.bat to create .bin version of bios. Used by makestep.bat to copy files to tftpboot directory. Used by makestep.bat to create hex1 hex and .bin files. Creates hex2 .hex and .bin files. Transfers A2 files to the tftpBoot directory. Hex1 .hex file used for manual download. Hex2 .hex file used for manual download. Manual download batch file for bios. Manual download batch file for hex1. Manual download batch file for hex2. Astdiag Contains diagnostic files for A2. Bldtools Contains .exes used by batch files. Control Host.x file Hex1 Hex2 Defines which host the terminal connects to. Contains all files associated .hex1 files. Net.cfg Asterix3Step MakeRFLD.bat RFburn.hex SendRF.bat Setupstp.bat Bldtools WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Contains access point id number and other files part of .hex2 files. This folder contains the software that is loaded on the Asterix 3 hand held scanners and the batch files which place those files into the tftpBoot directory for retrieval by the scanners during initial introduction to the system or during reboot of the terminal. Batch file to create .LD file from .hex. hex file for RF loader (Ver 1.4) (obsolete) Manual download of RF loader. Transfers A3 files to the tftpBoot folder. Executables used by batch files. Page 60 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ Folders SubFolder Control Files Host.x ObjectWave Description Defines which host the terminal connects to. Location of all ObjectWave-related architecture files (Refer to WaveWorks product documentation.) PSS Install.log Prs_tags.000 Prs_tags.001 Pss.ini Backup The Master directory for the PSS software. Created by installation program to document the placement of files. When tickets are printed to serial printers, these files convert the software commands into printer commands. Initialization file which defines the path the database, as well as the login authorization. varies Directory used by the installation process to keep previous versions of files (in the event that regression is needed). EhtService.exe EntryStationService.exe nbq.bat nbqmain.cfg nbqmain.exe nxg.cfg Nxgco.dll Nxghil.dll Nxgue.dll posapi.dll POSInterFaceCOM.exe STEP translator for RF entrance units. Controls serial entrance units. 4690 POS install script. 4690 POS configuration file. 4690 POS NT service. Library used by IBM 4690 POSService. Library used by IBM 4690 POSService. Library used by IBM 4690 POSService. Library used by IBM 4690 POSService. Library used by IBM 4690 POSService. COM object – processes POS item, transaction files. 4690 POS – NT service that transfers information between POS and PSS. Controls serial ticket printers. Adds shopping trip activities to activity table. COM object – processes POS customer file. COM object – performs customer ranking based on amount spent over a specified number of shopping trips. COM object – performs database data maintenance functions, such as removing old shopping trips, or message log data. COM object – performs file housekeeping functions. File monitor service. Processes quick order barcodes. Performs shopping trip functions. Performs special barcode lookups. COM object – provides PSS System Messaging functionality for sending messages at specified times. Bin PosService.exe PrinterService.exe PssActivityCom.exe PssCustomerMaintCom.exe PSSCustomerRankCom.exe PssDBCleanupCom.exe PssFileMaintCom.exe PSSFileMonitorSvc.exe PssQOBarCodeCom.exe PssShoppingTripCom.exe PssSpecialBarCodeCom.exe PSSSystemMessage Com.exe WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 61 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ PssTransactionTicket Com.exe PSSUserExits.dll PssUtilsCom.exe PssWebUtilityCom.dll Qexec.exe UnitMgmtCom.exe COM object – provides PSS transaction ticket printing services, in conjunction with the PrinterService. Stub user exit routines. COM object – contains PSS utility functions. COM object – provides WaveWorks / PSS utility services for the Service Terminal. “Quietly” executes a command (no command window). Provides unit management business services. Database InsertA2EntranceServices.sql InsertA2PrinterServices.sql InsertA3EntranceServices.sql InsertAdmProcesses.sql InsertPssServices.sql InsertServiceTerminalPrinter Service.sql POSINTERFACE_DBINIT.SQL POSINTERFACE_TEXT_ENGU K.SQL POSINTERFACE_TEXT_ENGU SA.SQL pss_count.sql PSS_Create_And_Init.bat pss_create_db.sql pss_delete.sql PSS_Delete_And_Init.bat pss_drop_db.sql pss_init_data.sql pss_init_text_2.sql pss_init_text_3.sql pss_init_text_4.sql PSS_SYMBOL.ER1 UMS_System_Settings.sql UMS_Text.sql WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Adds serial entrance services to the WW daemon table. Adds serial printer services to the WW daemon table. Adds RF entrance service to the WW daemon table. Adds startup / shutdown entries to the WW process table. Adds standard PSS services to the WW daemon table. Adds the service terminal printer service to the WW daemon table. Initializes POS interface system settings. UK English version of messages written by the POS interface to the system log (loads tables PSS Text). USA English version of messages written to system log by POS interface. SQL script that lists a count of records for each table in the PSS database. Batch file that runs all of the scripts necessary to create and initialize the database for a generic PSS system. SQL script to create the PSS database tables. SQL script to delete all of the data from the PSS database tables. Batch file that runs all of the scripts necessary to delete the existing data and reinitialize the database for a generic PSS system. SQL script to delete all of the PSS database tables. SQL script to initialize most of the necessary settings and text for the generic PSS system. SQL script containing text for the English – UK language. SQL script containing text for the French language. SQL script containing text for the Dutch language. ERwin database model of the PSS database. Adds UMS constants to system settings. Adds UMS text strings to text table in US English. Page 62 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ Folders SubFolder Files UmsCleanup.sql UpdateOwave.bat Description Sets all UMS devices to “logged out” at startup / shut down. Generic update batch file that runs an SQL script on WaveWorks database. Logs Ess01.tr1 Prs01.tr2 Trace file for entrance units which use serial communications. Trace file for printers which use serial communications. Print Temporary holding location for transaction ticket print files. Processed Holding directory for files received from POS after processing by PSS. (Note: this directory name and the filenames identified below are configurable to accommodate POS systems; the names listed are the default entries.) Shopping transaction files: cardnumber_yyyymmddtttt_PSS completed where yyyy = year, mm = month, dd = day and tttt = time; this is the PSS shopping transaction as scanned by the customer. cardnumber_yyyymmddtttt_POS. completed where yyyy = year, mm = month, dd = day and tttt = time; this is the POS shopping transaction as completed at the register. Item files: PLUNW.PSS - a full item (price look up) file transfer. PLUMTnn.PSS – a partial (maintenance) item file update, where nn is a sequential number reset each day. Customer files: CUSTMTnn.DAT – a maintenance update to the customer data file. StepDev DiManager.swv EHT.swv ExpressShopper.swv WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Files with an .sws extension are links between COM Objects and transaction Ids. Files with an .swv extension are ScreenMaker interface files. Display interface manager interface. RF entrance interface. Interface for express shopper. Page 63 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ install.bat MainMenu.swv PosInterface.sws Pss.swp PssActivityCom.sws PssCustomerMaintCom.sws PssCustomerRank.sws PSSDbCleanup.sws PssFileMaintCom.sws PssQOBarcodeCom.sws PssShoppingTripCom.sws PssSpecialBarcodeCom.sws PssSystemMessage.sws PssTimerCom.sws PssTransactionTicket.sws PssUtilsCom.sws QuickOrder.swv release.ini ShoppingTrip.swv sminstall.exe UMS.sws UMS.swv update.bat (customer specific data) update.ini (customer specific data) Transfer Batch file run to install scripts to (base) WaveWorks database. Initial interface that launches either UMS or shopping trip. Associates WaveWork transactions with COM methods that perform POS interface functions. Used by ScreenMaker. Trans IDshopping activity log functions. Trans IDcustomer download function. Trans IDcustomer ranking function. Trans IDdatabase cleanup function. Trans IDCOM methods that perform file housekeeping. Trans IDquick order barcode functions. Trans IDshopping trip functions. Trans IDspecial barcode functions. Trans IDprocess system messages function. Debug tool for shopping trip. Trans IDtransaction ticket printing function. Trans IDutility function. Quick order interface. List of multiple .sws and .swv files to install. Shopping trip interface. Installs .sws and .swv files. Trans IDUMS COM methods. UMS interface. Batch file used to change base script or add new ones. List of files to update for a customer. The holding location used by the PSS and POS for exchanging files (i.e. both systems read from and write to this directory). Under normal conditions, files reside here only temporarily. Web admincradles.asp admindispensers.asp admineditterminal.asp adminentrances.asp administer.asp adminpageactions.asp adminpages.asp adminpos.asp adminpowersupplies.asp adminprinters.asp adminservices.asp adminterminals.asp adminusers.asp WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. All *.asp files are Active Server Pages. Administer cradle hardware. Administer dispenser hardware. Edit terminal settings / status. Administer entrance unit hardware. Presents the service terminal menuing system. Administers authenticated service terminal page actions. Administers authenticated service terminal pages. View and administer point-of-sale system status. Administer power supply hardware. Administer printer hardware. Administer PSS NT service components. Administer terminal hardware. Administer service terminal users. Page 64 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ Folders SubFolder Files fielddate.inc fieldtime.inc global.asa index.asp index.html issueterminal.asp keyboard.asp login.asp lookupuser.asp pss.css pssdatatableend.inc pssdatatablestart.inc pssfunctions.inc psstatus.inc. quickorder.asp quickorderframes.asp quickorderheader.asp registeruser.asp sendmessage.asp systemproblems.asp systemsummary.asp unabletoissue.asp viewdepartments.asp viewitemdetails.asp viewitems.asp viewmarketing.asp WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Description Script file to present a standard date input field. Script file to present a standard time input field. Active Server Page application file that sets up database connections for the PSS service terminal. Redirects the service terminal to the appropriate first page. Redirects the service terminal to the appropriate first page. Issues a hand-held terminal to a customer and displays the location of the terminal. Displays an on-screen keyboard for use with terminals without keyboards (currently unused). Presents a user login prompt and performs user authentication. Looks up a customer by account details. Cascading Style Sheet file to create consistent positioning and font formatting throughout the PSS service terminal. Active Server Pages script file to manage the portion of a data table after the data is displayed. Active Server Pages script file to manage the header and retrieval of data for a data table. Active Server Pages script file containing numerous functions for use throughout the service terminal. Active Server Pages script file to calculate the current status of the Portable Shopping System. Displays an individual quick order in the quick order frames page. Displays multiple quick orders. Manages display of multiple orders on the quick order frames page. Creates or administers PSS customers. Sends ad hoc messages to PSS customers, or defines and schedules system messages. Views any current problems with PSS. View an operational summary of PSS. Displays errors in issuing a terminal to a customer. View the configured item departments. View the details of a particular item. View the currently configured items. View and administer the currently configured marketing messages. Page 65 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ viewmessagelist.asp viewmessagelog.asp viewnlstext.asp viewopeningmessages.asp vieworderitems.asp vieworders.asp viewreportrescan.asp viewreportsales.asp viewreportshoppersummary.asp viewreportterminals.asp viewreportunknownitems.asp viewrescanresults.asp viewrescansettings.asp viewshoppers.asp viewshoppingactivities.asp viewshoppingitems.asp viewshoppinglists.asp viewsystemsettings.asp viewtaxtableentries.asp viewtaxtables.asp viewterminallist.asp viewusersummary.asp Web – Images various Working View the currently configured system messages. View the PSS system log. View the currently configured languagedependent text. View the currently configured opening messages. View the items selected for a particular quick order. View the currently entered quick orders. View the Shopper Rescan Report. View the Sales Report. View the Shopper Summary Report. View the Hand-Held Terminal Report. View the Unknown Item Report. View the results of rescans in a particular customer’s historical shopping trips. Administer the PSS Rescan system configuration. View and administer the customers currently using PSS. View the activities that occurred during a particular customer’s current or historical shopping trip. View the items selected for purchase during a particular customer’s current or historical shopping trip. View the list of a particular customer’s current, historical, and incomplete shopping trips. View and administer PSS system settings. View the entries for a particular PSS tax table. View the list of PSS tax tables. View a terminal issue list of terminals available by dispenser. View a particular customer account summary. Contains graphics files that are used throughout the Service Terminal application (e.g., the red, yellow and green traffic light on the Main Menu.) Where files reside while the PSS software is processing them. TftpBoot Location of software files which are downloaded to hand held terminals when they boot. TftpServer Service that provides for file transfers. D:\ (database repository) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 66 February 1, 2000 Directory Listing of PSS Folders/Files ______________________________________________________________________________ Folders Mssql7 7.1 SubFolder Files varies Description Location of all database tables, in Microsoft SQL Server format. Scheduled Tasks Folders SubFolder C:\Winnt\Tasks WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Files Description Repository for time-based tasks to be defined and scheduled. Page 67 February 1, 2000 Software Description ______________________________________________________________________________ 8. Software Description The subsystems included in the WaveWorks PSS system may consist of any combination of the following: COM Objects NT Services StepServer Scripts 8.1 Contain methods invoked via WaveWorks transactions. Managed by the Message Server. Contain methods invoked via WaveWorks transactions. Usually started at system startup. Manage the user interface and screen flow for the hand held terminals. Maintain client data variables. Invoke business services (COM object methods) via WaveWorks transactions. PSS Transaction IDs / COM Object Method Listing The following tables list the transactions used to perform business logic, the methods which are invoked, and the input and output parameters. POSInterface Transaction ID Method Name Input Parameters P2P002 P2P003 P2P005 POS100 P2P103 P2P199 P2P304 P2P404 POS300 LoadPOSTransaction LoadPOSItemFile LoadTaxTable POSstartup POSSItemFileTransfer FileTransferNoOP EnableItemUpdates DisableItemUpdates POSLogin FilePath FilePath FilePath POS301 SetCommLinkStatus LinkStatus WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Return Parameters Result Result Result Result Result Result PosVersion TransactionCheckInterval ItemUpdatesCheckInterval CopyTaxTablesWithItems PSSTransactionType NumberPriceBytes LoyaltyCardnumLength LANAdapterNumber TransferAreaPath POSControllerName Result Result Page 68 February 1, 2000 Software Description ______________________________________________________________________________ PSSActivity Transaction ID PSA010 Method Name PssActivityAdd Input Parameters CustomerId ShoppingListId ActivityId DetailText Return Parameters RetValue PSSSpecialBarcode Transaction ID PSP001 PSP010 Method Name Refresh PssGetBarCodeType Input Parameters InputBarcode TerminalId Return Parameters RetValue ItemId Action BarcodeType RetValue PSSQOBarcode Transaction ID Method Name PSQ010 GetMaxQONumber PSQ020 PssQOBarCode PSQ030 PssQOSend PSQ031 PssQOQuit PSQ040 PssQOGetTotalQty PSQ050 PssQOListItems WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Input Parameters Return Parameters CustomerId ShoppingListId CustomerId ShoppingListId PreviousQONumber PreviousItemId CurrentBarcode Action PreviousDepartmentId QONumber RetValue ThisItemId This ItemName ThisItemUnit ThisItemDepartmentId ThisItemQty ThisQONumber RetValue CustomerId ShoppingListId QONumber CustomerId ShoppingListId QONumber CustomerId ShoppingListId QONumber CustomerId ShoppingListId QONumber RetValue RetValue TotalQuantity RetValue ItemNames ItemUnits ItemQty RetValue Page 69 February 1, 2000 Software Description ______________________________________________________________________________ PSSShoppingTrip Transaction ID Method Name PST001 CreateShoppingList PST003 SwapTerminal PST004 ValidateCustomer PST005 PssSessionSwitch PST007 GetSessionData PST008 GetShoppingTripType PST010 StartShoppingTrip PST020 AdjustShoppingItemData PST025 SetShoppingListStatus PST030 GetShoppingList WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Input Parameters TerminalId CustomerId TerminalId CustomerId CardNumber TerminalId InputBarcode Customer Id ShoppingListId TerminalId CustomerId ShoppingListId TerminalId TripType TerminalId InputBarcode CustomerId ShoppingListId ItemQuantity ListValue Action CustomerCurrencyId TerminalId CMSName CMSApplication TerminalGroup CustomerId ShoppingListId ShoppingListStatus CustomerId ShoppingListId CustomerCurrencyId Return Parameters RetValue RetValue Output CustomerName LanguageId Greeting CustomerId Result NewCustomerId NewShoppingListId SessionStatus RetValue Result RetValue CustomerId ShoppingListId CustomerName CustomerLanguageId CustomerCurrencyId RescanLevel StoreNumber RetValue ItemDescription ItemPrice ItemCount TotalValue TotalCount Msg EmbeddedPriceItem RetValue RetValue ItemPrice ItemQuantity ItemDescription ItemId EmbeddedPrice TotalValueString TotalValueInt ItemCount RetValue Page 70 February 1, 2000 Software Description ______________________________________________________________________________ PST035 GetDisplayTotalByCurrency PST038 AdjustShoppingList PST040 PST041 GetStoreInformational Message GetCustomerMessage PST042 GetElectronicMarketingMes PST043 GetCustomerCardNumber PST100 EndShoppingTrip PST102 PST104 DeleteShoppingList DetermineEndShoppingTrip PST200 GetExpressCustomer PST999 Refresh CustomerId ShoppingListId CustomerCurrencyId CurrencyIndex ItemId CsutomerId ShoppingListId ItemQty Action TerminalId CmsApplication StartIndex NumberOfItems CustomerId ShoppingListId CustomerId ShoppingListId CustomerId ShoppingListId ItemId TerminalId CMSName CMSApplication TerminalGroup CustomerID CustomerId ShoppingListId TerminalId TerminalLocation RescanLevel TerminalId CustomerId ShoppingListId TerminalId TerminalLocation RescanLevel CurrencyIndex DisplayTotal Result ItemDescription ItemPrice ItemCount TotalValue TotalCount Msg EmbeddedPriceItem ItemId MsgFlags RetValue Text Message RetValue Text Message RetVal TextMessage Result CardNumber Result Rescan RetValue RetValue Rescan Result CustomerId Result TransactionTicket Transaction ID PST101 Method Name PrintTicket Input Parameters CustomerID ShoppingTripID TransactionType PrinterService Return Parameters RetValue PSSSystemMessage WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 71 February 1, 2000 Software Description ______________________________________________________________________________ Transaction ID PST103 Method Name ProcessMessages WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Input Parameters Return Parameters RetValue Page 72 February 1, 2000 Software Description ______________________________________________________________________________ PSSUtils Transaction ID Method Name PSU001 GetText PSU002 GetTextWithParms PSU003 GetInActivityTimeoutString Input Parameters TextId CustomerLanguageId TextId CustomerLanguageId TextParameters InactivityIndex Return Parameters TextMsg RetValue Text Result InactivityString Result UnitMgmt Transaction ID Method Name Input Parameters UMS001 ReserveBestTerminal EntranceId UMS002 UMS003 TerminalIssued TerminalReturned UMS004 UMS005 TerminalTimeout TerminalLogin UMS006 UMS007 TerminalLogout GetTerminalStatus TerminalId TerminalId Location IssueTime ReturnTime PlusScans MinusScans FailedScans TerminalId TerminalId Location TerminalType TerminalId TerminalId UMS008 SetTerminalStatus UMS009 UMS010 ResetTerminalStatistics GetTerminalTypeInfo TerminalId StatusCode Reason TerminalId TerminalType UMS011 GetCurrentInterface TerminalId UMS012 SetCurrentInterface TerminalId InterfaceName UMS013 UpdateBatteryLevels WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Return Parameters TerminalId DispenserId CradleId DispenserName Result Result Result Result Result Result StatusCode StatusText StatusTimestamp Result Result Result TerminalClass DefaultInterface DisplayRows DisplayColumns KeypadType Result InterfaceName Result Result Result Page 73 February 1, 2000 Software Description ______________________________________________________________________________ UMS014 SetBatteryStatus TerminalId BatteryStatus TerminalId TerminalId BootType TerminalId TerminalId UMS020 UMS021 ReleaseTerminal RebootTerminal UMS022 UMS023 UnlockTerminal QueryTerminal UMS024 UMS025 ResetTerminalSession SetTerminalUnlockMode UMS026 TestCardReader UMS027 ReportBatteryCondition UMS028 UpdateTerminalLocation UMS100 EntranceLogin UMS101 UMS103 EntranceLogout SetEntranceStatus UMS104 GetEntranceMode EntranceId EntranceId StatusCode EntranceId UMS105 UMS106 UpdateEntranceModes GetEntranceConfig EntranceId UMS107 ProcessCardData EntranceId RawData UMS108 GetDispenserCounts DispenserId UMS200 PrinterLogin UMS201 SetPrinterStatus UMS202 GetPrinterConfig HardwareId PrinterStatus PrinterId PrinterStatus Reason HardwareId UMS999 Refresh N/A TerminalId TerminalId UnlockMode EntranceId TerminalId BatteryCondition TerminalId Location HardwareId StatusCode Result Result Result Result Location Result Result Result CardData Result Result Result EntranceId Mode Result Result Result Mode Return Return ReaderType ReaderPort DisplayType DisplayPort PopupTimeout CardLength Return CardNumber CardStatus Return TotalCount IssueCount ChargingCount UnavailCount OtherCount Return PrinterId Result Result PrinterType PrinterPort Return Return PSSCustomerMaint WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 74 February 1, 2000 Software Description ______________________________________________________________________________ Transaction ID P2P006 Method Name Input Parameters Return Parameters Input Parameters Return Parameters Input Parameters Return Parameters Input Parameters Return Parameters LoadFromFile PSSFileMaintenance Transaction ID P2P201 P2P298 P2P299 Method Name CleanupPssTransFile CleanupArchiveArea ConvertSltoSO PSSDbCleanup Transaction ID PST105 Method Name PerformDBCleanup PSSCustomerRank Transaction ID PST106 Method Name RankCustomers WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 75 February 1, 2000 Software Description ______________________________________________________________________________ 8.2 Unit Management Subsystem The Unit Management Subsystem (UMS) manages the Symbol hardware devices that comprise the PSS system. Those devices include hand held terminals, cradles, entrance unit devices, ticket printers, and power supplies. Since UMS manages hardware, it is important to understand each of the devices being managed in both the Asterix2 and Asterix3 versions of PSS. 8.2.1 Hardware Overview Terminals The PSS system only uses RF terminals. PSS can use either Asterix2 or Asterix3 terminals. The Asterix2 terminal has five buttons and a 4 x 20 display. The Asterix3 terminal has four buttons and a trigger (in lieu of the “+” key on the Asterix2), and an 8 x 20 display. Both terminal types charge their batteries while in the cradle, but since the Asterix3 uses a newer lithium battery, the battery-related constants are different for the two terminals. Cradles The cradles are completely different between the Asterix2 and Asterix3 systems. The Asterix2 terminals are placed into an integrated eight-slot rack, and as a result, the entire system is comprised of terminals in multiples of eight. When the Asterix2 is unlocked, a small light on the face of the terminal is lit. The Asterix3 cradles are individual units, and the entire system can include any desired number of terminals. When the Asterix3 is unlocked, the cradle housing lights up. The Asterix2 cradle locks the terminal tightly against the contacts. The Asterix3 cradle does not--which causes a number of issues, since the terminal can be lifted off the contacts before the latch stops it. Dispensers In a typical Asterix2 system a module was a large plastic device that had eight integrated cradles. Four modules were a unit. A dispenser in the Asterix2 world consisted of one or more modules. The Asterix3 system uses individual cradles that can be physically arranged however the customer wishes. An Asterix3 dispenser is simply a logical group of cradles (that are usually physically adjacent to each other). The concept of a dispenser being a logical group of cradles also works for Asterix2 systems as long as the cradles in the same module are part of the same dispenser (to avoid confusing the customer). So, in this document, a dispenser is really a collection of cradles, not a physical device. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 76 February 1, 2000 Software Description ______________________________________________________________________________ Entrances There are two types of entrance stations: serial and RF. Either type can be used with either terminal type, but the older serial entrance units are typically used on Asterix2 systems and the newer RF entrances are used with the Asterix3 terminals. The primary difference between them is how they are controlled from the host. The serial entrance units are controlled by NT Services (one service per entrance unit). These services are named “PssEntrance01,” “PssEntrance02,”, etc. These services are WaveWorks clients and directly control the entrance display and process input. The RF entrance units communicate with a single instance of an NT service (EhtService) that translates STEP commands into low-level commands the hardware can understand. DisplayServer scripts handle the screen display and input processing. Printers Transaction tickets are (optionally) printed at the conclusion of a self-scan shopping trip. The ticket is used to direct the shopper to a quick pay or rescan lane and also as a means of identifying the shopper to the POS system. Transaction tickets are an optional feature of the PSS system. PSS supports three types of ticket printers: RF rack, serial rack, and serial service terminal. For installations that do print tickets, a printer is needed at the return rack and at the service terminal. Power Supplies The PSS system also manages power supplies. There isn’t much to manage aside from ensuring that only one terminal per power supply is unlocked at a time. Unlocking more than one terminal at a time could cause the power supply to fail. Power supplies normally have a status of Ready (status code = 0). If a terminal that is powered by the power supply is being unlocked, the status is set to Reserved (status code = 1). If all the terminals attached to a power supply report that they are on battery power, then the power supply status is set to “Check Hardware” (status code = 6) to indicate that perhaps the power supply has failed or is unplugged. 8.2.2 Software Components The Unit Management subsystem consists of the following software: Unit Management COM objectprovides all the UMS business services. The services maintain data on hardware status, battery level, and terminal location. The services also send commands to the hand held terminals while they are in the dispenser. The UMS transaction model (description of all UMS transactions) is found in the Appendix. Entry Station Serviceuses PSA’s Hardware Isolation Library (HIL) to communicate with the Entrance Station hardware devices (serial entrance stations only). WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 77 February 1, 2000 Software Description ______________________________________________________________________________ Printer ServiceUses PSA’s Hardware Isolation Library (HIL) to communicate with serially connected printers. UMS DisplayServer Interfacecontrols the display on the hand held terminal and also provides procedures for handling input from the terminal and commands the UMS COM object. EHT DisplayServer Interfacecontrols the display on RF entrance units and provides procedures for handling input from the entrance. 8.2.3 Database Access The Unit Management COM object maintains the following database tables. Refer to the Data Dictionary in the Appendix for a description of the tables: UMS_Entrancemaintains state information on entrance unit devices UMS_Printermaintains information on printer devices UMS_Terminalmaintains information on hand held terminals UMS_Dispensermaintains information on dispensers (groups of cradles) UMS_Status_Codelist of valid status codes for UMS devices UMS_Terminal_Typeslist of valid terminal types UMS_Cradlemaintains information on terminal cradles UMS_Powermaintains information on power supplies UMS_Card_Reader_Typemaintains a list of supported card reader types and properties WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 78 February 1, 2000 Software Description ______________________________________________________________________________ 8.3 Shopping Trip Subsystem Once the shopper retrieves the proper hand held terminal from the dispenser, the Shopping Trip Subsystem allows the shopper to add and delete items from their basket and view the total amount and number of items scanned during their current shopping trip. Shopping trips can be ended by returning the hand held terminal to an empty dispenser slot or by scanning an “End of Trip” barcode. Each activity during the shopping trip is logged and available for review from the Service Terminal. 8.3.1 Start of Shopping Trip Processing When a customer “swipes” their card to reserve a scanner to go shopping, the system will perform the following: 1. ValidateCustomerverifies the following: • that the customer is in the Pss_Customer database table and is not suspended; • that the customer has no outstanding transactions (in the Pss_Shopping_List table), and • that the card has no current shopping trips (in the Pss_Session table). 2. CreatShoppingListinitializes Pss_Shopping_Activity. the tables Pss_Shopping_List, Pss_Session, and 3. StartShoppingTripoccurs at removal of the scanner from the dispenser. 4. GetTextretrieves all text necessary for display to the shopper (in the shopper's language). 8.3.2 Shopping Trip Processing For Asterix 2 terminals, the "+" key is a physical key on the scanner; for the Asterix 3 terminals, the "+" key is the trigger. The "-" key is a physical key on either terminal. After the shopper scans a barcode, the following steps are taken in the StepServer Script procedure ProcessInputData to process the barcode: 1. Parse the barcode • A call to PssSpecialBarcode to break up the scanned input field into its disparate parts • Modifications to the barcode from what was reported as scanned to what is needed to compare into the item table • Determination of whether a barcode is a “special” barcode that requires special handling (e.g. the End of Trip barcode) 2. If, in the output from the above method, a “special” barcode is encountered, it is specifically handled WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 79 February 1, 2000 Software Description ______________________________________________________________________________ 3. If, in the output from the above method, an item barcode is scanned, then the AdjustShoppingList method is called to add or delete the scanned barcode from the customer's shopping list. Any anomalous output from this method is handled via error screen displays (i.e., exception items, invalid barcodes). The following is the database activity for a "+" or "-" key event: 1. Retrieve customer data from Pss_Customer table. 2. Verify input barcode. 3. Determine if it is a variable weight barcode using the Pss_Barcode_Variable_Weight - if variable weight, get the price and item Id - else use the scanned barcode and data from the Pss_Item table to execute the pricing algorithm 4. Add the item to the shopping list ("+") or remove the last scanned match for this item id ("-") in the Pss_Shopping_Item. 5. Calculate the total tax from the Pss_Tax_Table and Pss_Tax_Table_Entry and write the value to Pss_Shopping_Tax. 6. Read for marketing messages from the Pss_Marketing_Item, Pss_Marketing_Department, and the Pss_Marketing_Mfg tables and write to the Pss_Marketing_Sent table any messages sent to the shopper. 7. Convert pricing values using the Pss_Currency table. 8. Write the total to the Pss_Shopping_List table. 9. Record the event into the Pss_Shopping_Activity table. Anomalous conditions encountered in this process will be logged to the Pss_Message_Log table. If the scanned item Id is not in the Pss_Item table, then record this in the Pss_Uknown_Item table. All text used throughout the shopping trip is stored in the Pss_Text table and is accessed through a language Id associated with the customer or store. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 80 February 1, 2000 Software Description ______________________________________________________________________________ Describe what happens when a customer presses the “=” key to view the summary. The shopper presses the "=" key, and in the StepServer script procedure ProcessInputData, a call to one of the ShoppingTripList functions is made. This will return character strings with item Ids, descriptions, and prices (see COM object definitions for full parameter list). These strings will contain all items currently in the customer's basket in a pipe-separated format. The lists are controlled through the pss_system_setting database table. Based on these settings, display field size, list order (ascending or descending), and contents of the list are established for consistent display to the shoppers. All database access is “read only,” with the exception of an insert into the Pss_Shopping_Activity table to record the event. The following libraries and COM Objects are available for the shopping trip subsystem to use: PssActivityCom PSS ActivityLib PssBarcodeLib PssConfigurationLib PssPricingLib PssShoppingTripLib PssShoppingTripCom PssSpecialBarcodeCom PssSpecialBarcodeLib COM object interface that allows activities to be added to the Pss_Shopping_Activity database table to record shopper key presses and any other event. This library handles the database insert, deletion, and retrieval of Pss_Shopping_Activity database table rows. Library that interprets the barcodes scanned by the shopper. Has methods to calculate and strip off check digits, determine barcode type (i.e., UPC, EAN13), etc. Library used to access the database table Pss_System_Settings that contains the client-selected configuration options. This library provides the core of the pricing method algorithms as defined in the appendices. Library that handles the database insert, deletion, and retrieval of Pss_Shopping_List and Pss_Shopping_Item database table rows. This is the COM object interface allowing • shopping trips to be started, • items to be added and removed from shopper’s lists, • lists to be formatted for shopper review, • shopping trips to be ended, • as well as a series of general support functions (such as validating the customer, retrieving shopper messages of various sorts, and maintaining the status of the current shopping trips). This is the COM object interface to allow access to the special barcode functions, determining if the scanned barcode requires modification or requires special handling methods. Library to access the Pss_special_Barcode table that contains definitions of all special barcodes, descriptions, and return types for StepServer script statement handling. In general, the COM Objects handle the interface to the StepServer Scripts and perform the business logic and the libraries provide access to the persistent data. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 81 February 1, 2000 Software Description ______________________________________________________________________________ The following user exits are called during shopping trips: UE_PreRescanDetermination UE_PostRescanDetermination UE_PreProcessMarketingMessage UE_PrintReceipt UE_PostProcessIsVariableWeight Allows modification of the rescan calculation data prior to the calculation, or allows wholesale replacement of standard rescan calculation with a customized algorithm Allows modification of the result of a standard rescan calculation Allows additional item marketing messages to be allowed / disallowed prior to the standard method’s retrieval On End of Trip, allows modification to the receipt file to be printed on the ticket After an item has been determined to be an embedded price / weight item (or not), custom code can be added here to modify the decision. If using the End of Trip barcode feature, configure any type of barcode with a check digit to be the End of Trip barcode. The Pss_Special_Barcode table should contain the End of Trip value. 8.3.3 End of Shopping Trip Processing This can happen in one of two ways depending upon the Pss_system_Settings database table values. Either the shopper scans a predetermined End of Trip barcode (as specified in the Pss_Special_Barcode table) or places the scanner back into the dispenser. If an End of Trip input is recognized (either an “E” from the dispenser, or and End of Trip barcode), the StepServer script procedure EndOfTrip is executed. This simply calls the PssShoppingTripCOM object method EndShoppingTrip and then handles the resetting of the shopping list status (if the scanner was in Queue Buster mode), then proceeds to the final Thank You screen. Within the EndShoppingtrip method, the following is done: 1. The customer data and shopping trip data are examined to determine if the trip is to be rescanned or not. 2. The transaction barcode is calculated. 3. If enabled, the PssTransferFile is written with the list of items scanned by the shopper. 4. If enabled, the printer is requested to print the transaction ticket. 5. Customer and Shopping Trip data and status are updated. 6. Session data is deleted or modified if in queue buster mode. 7. Data in the database tables related to the shopping trip are deleted, such as Pss_Order_List_Item, Pss_Order_List, Pss_Marketing_Sent and Pss_Shopping_Tax. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 82 February 1, 2000 Software Description ______________________________________________________________________________ Database tables associated with the shopping trip are: Pss_Currency Pss_Customer Pss_Language Pss_Text Pss_Shopping_List Pss_Session Pss_Shopping_Item Pss_Shopping_Activity Pss_Shopping_Tax Pss_Tax_Table Pss_Tax_Table_Entry Pss_Unknown_Item Pss_Item Pss_System_Setting Pss_Message_Log Other objects such as classes need to be defined: PssStoreInformation PssSpecialBarcode Session Language Text Activity Customer Customer Rescan Event Scheduler 8.3.4 Shopping Trip Message Log Entries This describes the log messages found in the Pss_Message_Log table that originated within the Shopping Trip. The text shown here is in English, since the inclusion of all language text for all messages would be excessive. This text is configurable in the database table Pss_Text, so if a message is not here or not exactly as stated here, then the database table probably has changed. All text is accessed through the GetText method, which accepts the Text_Id as an input parameter. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 83 February 1, 2000 Software Description ______________________________________________________________________________ 8.3.5 Fatal Messages: “No Session for this Terminal (%s)” ST_TEXT_NOSESSION “No Customer Data” ST_TEXT_NOCUSTOMER “Initialization FAILED(%s)” ST_TEXT_INITFAILED “No Express Customers Available” ST_TEXT_NO_XCUSTOMERS “Unable To Access Express Customers Data” ST_TEXT_NO_ACCESS_XCUSTOMERS - Attempted to start the Shopping trip without associating a customer with a terminal. Verify that CreateShoppingList completed successfully prior to calling StartShoppingTrip. - Customer's card does not exist in the database. - Could not initialize Pss_System_Setting configuration data from database – Methods may not be executing along desired paths. - No more Express Shopper customers available for express shopper to use. Add more to the database. - Database error accessing Express Shopper customers. 8.3.6 Error Messages: “Activity Add” ST_TEXT_ACTIVITY_ADD “Invalid Customer Data associated with terminal (%s)” ST_TEXT_INVALIDCUSTOMER “Invalid Get Rescan data for customer (%s)” ST_TEXT_INVALIDRESCANDATA “Invalid Sub Total for Customer (%s)” ST_TEXT_INVALIDSUBTOTAL “Invalid Customer (%s) Save Recalced Prices” ST_TEXT_BADSAVEPRICES "UE_PreRescanDetermination GENERATED TRAP!!!do NOT rescan” ST_TEXT_USEREXITERROR “Invalid Rescan Determination for Customer (%s)” ST_TEXT_RESCANDETERMINATION "UE_PostProcessRescanDetermination GENERATED TRAP!!! – do NOT rescan" ST_TEXT_USEREXITERROR “UE Post CalculateRescan” ST_TEXT_USEREXITERROR “UE Pre CalculateRescan” ST_TEXT_USEREXITERROR “Invalid Customer (%s) Rescan Update” ST_TEXT_UPDATERESCAN “Invalid Calculate Transaction Id for Customer (%s)” ST_TEXT_TRANSACTIONID “Invalid Saving End of Trip Data for Customer (%s)” ST_TEXT_SAVE_EOT WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. - Failure to add an activity to the Pss_Shopping_Activity table. Generally when the shopping trip does not start properly, there is an invalid key constraint problem. - Invalid Customer Id, not found in database. Verify customer exists in database. - Failure getting customer rescan data. Verify customer exists in the database and has valid rescan level and accurate trip counters and rescan counters in the Pss_Customer table. - Had an error calculating total for customer”s shopping trip. Verify values for this customer in the database. - Database error saving pricing data to the customer”s shopping list. - Error in the user exit for determination of rescan. Rewrite the user exit without the problem causing the abnormal execution. - Error in determining whether to rescan a customer. Verify customer rescan data in Pss_Customer and Pss_rescan tables are consistent. -Error in the user exit for determination of rescan. Rewrite the user exit without the problem causing the abnormal execution. - Error in the user exit for determination of rescan. Rewrite the user exit without the problem causing the abnormal execution. - Error in the user exit for determination of rescan. Rewrite the user exit without the problem causing the abnormal execution. - On end of trip, could not update customer”s rescan data in the Pss_Customer table with latest data. - Could not calculate correct transaction Id. Verify Pss_System_Settings (for Shopping_Trip Loyalty Card and Transaction barcode) are proper for this customer. - Error saving shopping trip and/or customer data for end of trip. Page 84 February 1, 2000 Software Description ______________________________________________________________________________ “Invalid Writing SCAN-IN %d” ST_TEXT_WRITESCANIN “Cannot unload list items for Customer (%s)” ST_TEXT_UNLOAD “Invalid Getting Printer CMSID ReturnCode, Customer %s” ST_TEXT_INVALIDPRINT “Could Not delete Shopping Tax Table %d” ST_TEXT_BADDELETETRIP “Could not format item list (%s)” ST_TEXT_INVALIDFORMAT “Customer (%s) Could not get Qty” ST_TEXT_GETQTY “Customer (%s) has less than zero items !!” ST_TEXT_LESSZEROITEMS “Customer (%s) BAD Saving Item To Shopping List” ST_TEXT_BADSAVEITEM “UE_PreProcessMarketingMessage” ST_TEXT_USEREXITERROR “Customer (%s) Could not set Total Value” ST_TEXT_TOTALVALUE “No Session for this Terminal (%s)” ST_TEXT_NOSESSIONCUSTOMER “No Customer Data” ST_TEXT_NOCUSTOMER “No New Shopping List for this card (%s)” ST_TEXT_NOSHOPPINGLIST “Could Not initialize For card number (%s)” ST_TEXT_SESSIONBAD “Could not Get Queue Buster session Data (%s)” ST_TEXT_QUEUEBUSTER “Could not Swapping queue buster session for card (%s)” ST_TEXT_SWAPQUEUEBUSTER “Could not delete shopping list just created for (%s)” ST_TEXT_BADDELETE “Error Retrieving Customer Message for (%s)” ST_TEXT_NOCUSTOMERMESSAGE. “Customer (%s) Could not create session” ST_TEXT_NOSESSIONSTART “Customer (%s) Could not delete shopping list” ST_TEXT_DELETESHOPPINGLIST “Customer (%s) could not Set Shopping Status” ST_TEXT_SETSHOPPINGSTATUS WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. - Error writing scanIn (PssTransferFile). Check for disk space availability, existance of proper directories and permissions to create files there. - Error-freeing memory used to store local copyof shopping list. - Error printing transaction ticket. Verify printer and connections. - Error as specified in text deleting shopping data on end of trip - Error formatting shopping trip data for list display. - Error retrieving shopping trip data for item barcode. - Deleting of an item from a customer”s list yielded a less-than-zero number of items in the list. Ooops. - Could not save a item to the Pss_Shopping_Item table for a customer”s shopping list. Verify that the Pss_Session and Pss_Shopping_list tables have rows for this customer. - Error value returned from user exit code. Fix the code. - Error saving total value to Pss_Shopping_List table. Verify that the customer is valid - Attempted to queue bust shopper without an associated exployee with a terminal. Verify that CreateShoppingList completed successfully prior to calling StartShoppingTrip. - The customer barcode scanned by the employee for queue busting does not exist in the Pss_Customer table. - Could not get Pss_session table data for the terminal trying to do the queue busting - Could not exchange from employee to shopper for the terminal trying to do the queue busting. - Could not find queue buster Pss_session table entry for the shopper. - Could not exchange from shopper to initiating employee for the terminal trying to do the queue busting - Error deleting shopping data Pss_Session table after an error. Attempting cleanup - Database error retrieving message for this customer. Verify existance of customer and message in PSS_Customer_Message table. - On starting a shopping trip, added a row to Pss_Shopping_List but could not add to the Pss_Session TABLE. Check for already existing row for this terminal in the Pss_Session table. - Database error trying to cleanup after some other error the Pss_Session, Pss_Shopping_List and Pss_Shopping_Activity tables. - Error setting the Pss_Shopping_List table status. Verify the customer has a valid row in this table. Page 85 February 1, 2000 Software Description ______________________________________________________________________________ “SwapTerminal Error for customer (%s)” ST_TEXT_SWAPTERMINALERROR “Customer, Card Number (%s) is suspended” ST_TEXT_CUSTOMERSUSPENDED “Customer for card is not found (%s)” ST_TEXT_NOCUSTOMERFORCARD “Error Validating Card; Customer (%s) has a Session” ST_TEXT_HASSESSION “Error Validating Customer (%s)” ST_TEXT_VALIDATECUSTOMERERROR - Error updating the Pss_Session and/or Pss_Shopping_List tables while attempting a swap terminal command. - Logging the fact that a suspended customer has tried to release a scanner. From ValidateCustomer on card swipe. - Logging the fact that a nonexistant customer (as per Pss_Customer database table) has tried to release a scanner. From ValidateCustomer on card swipe. - Logging the fact that this customer already has a scanner currently issued to them. From ValidateCustomer on card swipe. - There was a Bad database problem on a card swipe trying to validate a customer. 8.3.7 Informational Messages “No Session, or Swapped terminal (%s) - No trip to end” ST_TEXT_NOTRIP “Scanner Abandoned by Customer (%s)” ST_TEXT_SCANNERABANDONDED “Done with special Customer (%s)” ST_TEXT_SPECIALCUSTOMER “User Exit Returned Done %s” ST_TEXT_USEREXITDONE “For Customer, Error on Terminal Finding Item (%s)” ST_TEXT_NOITEM “For Customer, Error on Terminal Invalid Barcode %s” ST_TEXT_INVALIDBARCODE “No New Shopping List for this customer (%s)” ST_TEXT_NOCUSTOMERLIST “Could not Get trip data to delete for terminal (%s)” ST_TEXT_DELETECUSTOMERSESSION “Customer (%s) Could not delete session” ST_TEXT_DELETETERMINALSESSION “Customer (%s) has scanned an exception item” ST_TEXT_EXCEPTIONITEM WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. - EndOfTrip method was executed, but there is no customer or terminal data to end. Check the Pss_Session table or the Pss_Shopping_List table for an entry. - A scanner that was detected as abandoned is being run through EndOfTrip. This will delete all information about the trip, saving nothing to history, and not sending any data to the POS. - Logs that a store employee has completed a shopping trip and EndOfTrip has run, deleting all information about the trip and saving nothing to history and not sending any data to the POS. - After user exit calls, to specify NOT using the standard algorithms that follow the user exit calls. - An error trying to find the item scanned in the Pss_Item table. - Logs that an invalid barcode was scanned or that the shopping trip was incorrectly started. Verify that data for the customer exists in the Pss_Session and Pss_Shopping_List tables - No data in Pss_Shopping_Item table to list for this customer. Error trying to clean up Pss_session and Pss_shopping_List tables after unsuccessful release of scanner. - Error trying to clean up Pss_session and Pss_shopping_List tables after unsuccessful release of scanner. - Logs the scanning of an exception item by a customer. Page 86 February 1, 2000 Software Description ______________________________________________________________________________ 8.3.8 Debug Messages: The following are messages logged in the End Of Trip method to track progress through that method. "EOT Done totals" "EOT Done Rescan" "EOT Written to files" "EOT Done" - Completed calculation of trip totals - Completed Rescan calculation - Completed writing Pss Transfer File - End of trip completed successfully 8.3.9 Rescan Messages These Information messages are specific to determine if a shopper gets rescanned or not. "Into RescanLevel lOldLevel=%d, lPOSItemCount=%d, lPSAItemCount=%d, lBothItemCount=%d, lPOSItemValue=%d, IPSAItemValue=%d, 1BothItemValue=%d” “Rescan by Currency” “IgnoreScanTooMuch” “NOT IgnoreScanTooMuch” “Level diff RescanLevel Diff=%d, levelMod=%d” “Rescan by Percentage” “new Level (%d) old(%d) modifier(%d)” “Check new Level (%d) vs min(%d max(%d)” “Leave alone ret=%d” “Customer (%s) rescan is FALSE - Gold Customer” ST_TEXT_RESCAN_GOLD “Customer (%s) rescan is FALSE - Rescan Nobody, by date” ST_TEXT_RESCAN_NOBODYDATE “Customer (%s) rescan is FALSE - Rescan Nobody” ST_TEXT_RESCAN_NOBODY “Customer (%s) rescan is TRUE - Rescan Everybody, by date” ST_TEXT_RESCAN_EVERYBODYDATE “Customer (%s) rescan is TRUE - Rescan Everybody” ST_TEXT_RESCAN_EVERYBODY “Customer (%s) rescan is TRUE - Always First Trip” ST_TEXT_RESCAN_YESFIRSTTRIP “Customer (%s) rescan is FALSE - Never First Trip” ST_TEXT_RESCAN_NOFIRSTTRIP WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. - Displays inputs into rescan calculation. - Employs the rescan calculation by absolute value difference in prices. Ignore overscans by customer in rescan determination. - Do not ignore overscans by customer in rescan determination. - Displays the calculated difference and specified level change. Employs the rescan calculation by percentage difference. - Displays the shoppers new and previous rescan levels, and specified level change. - Displays new level and minimum and maximum allowed levels. - No change in shopper”s level. This customer will never be rescanned. - During the current time period, nobody should be rescanned. This is selected from the rescan screen on the administrative service terminal. - Nobody is to be rescanned. This is selected from the rescan screen on the administrative service terminal. - During the current time period, everybody should be rescanned. This is selected from the rescan screen on the administrative service terminal. - Everybody should be rescanned. This is e- Nobody is to be scanned. This is elected from the rescan screen on the administrative service terminal. - This is the shopper”s first trip, rescan them. - This is the shopper”s first trip, do NOT rescan them. Page 87 February 1, 2000 Software Description ______________________________________________________________________________ “Customer (%s) rescan is FALSE - Never Second” ST_TEXT_RESCAN_NOSECONDTRIP “Customer (%s) rescan is FALSE - Below Item Count” ST_TEXT_RESCAN_BELOWCOUNT “Customer (%s) rescan is FALSE - Below Value” ST_TEXT_RESCAN_BELOWVALUE “Customer (%s) rescan is FALSE - Above Amount” ST_TEXT_RESCAN_ABOVEVALUE “Customer (%s) rescan is FALSE - Above Item Count” ST_TEXT_RESCAN_ABOVECOUNT “Customer (%s) rescan is TRUE - Too long between trips” ST_TEXT_RESCAN_TOOLONG “Customer (%s) rescan is TRUE - Too long since last rescan” ST_TEXT_RESCAN_TOOLONGLASTRESCAN “Customer (%s) rescan is FALSE - Too soon since last rescan” ST_TEXT_RESCAN_TOOSOONLASTRESCAN “Customer (%s) rescan is FALSE - Never Consecutive” ST_TEXT_RESCAN_NO2INAROW “Time Window populations: QPCust = %d,%d,%d,%d; RSCust = %d,%d,%d,%d; QPItem = %d,%d,%d,%d; RSItem = %d,%d,%d,%d” “Item Count Load Balance Average process time / PSS Lane = %.2f” “HeadCount Load Balance #Rescan = %.1f, #QuickPay = %.1f” “Customer (%s) rescan is FALSE - Load Balance headcount too big” ST_TEXT_RESCAN_QUEUEHEADCOUNTTOOBIG “Customer (%) rescan checking REDUCED – Load balance reduced checking” ST_TEXT_RESCAN_REDUCEDCHECKING “Customer (%s) rescan is TRUE - Load balance cashier IS available” ST_TEXT_RESCAN_CASHIERAVAILABLE “Customer (%s) rescan is FALSE - Load balance cashier NOT available” ST_TEXT_RESCAN_CASHIERNOTAVAILABLE “TRUE - On max trip number since last rescan (%d)” “Customer <%s> rescan is TRUE - Level=%d Pct=%d value=%d” “Customer <%s> rescan is FALSE - Level=%d Pct=%d value=%d” “Customer (%s) rescan had Error retrieving Rescan Data” ST_TEXT_RESCAN_DATA WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. - This is the shopper”s second trip, do NOT rescan them. - This shopper”s trip is below the specified item count, do NOT rescan them. - This shopper”s trip is below the specified basket value, do NOT rescan them. - This shopper”s trip is above the specified basket value, do NOT rescan them. - This shopper”s trip is above the specified item count, do NOT rescan them. - This shopper”s last PSS trip was too long ago, rescan them. - This shopper”s last rescanned trip was too long ago, rescan them. - This shopper”s last rescanned trip was too short ago, do NOT rescan them. - Never rescan a shopper twice in a row, do NOT rescan. - Display data for load balance algorithm. - Display data for load balance algorithm. - Display data for load balance algorithm. - Do not rescan this customer, head count too large. - Entering reduced rescan level due to load balancing. - Rescan this customer since load balancing cashier is available. - Do NOT Rescan this customer since load balancing cashier is not available - Shopper is at maximum trip since last rescan for their rescan level, rescan them. - Randomly calculated result yields a rescan for this shopper. - Randomly calculated result yields a NO rescan for this shopper. - Error in reading this customer”s rescan data. Check the Pss_Customer table for valid data. Page 88 February 1, 2000 Software Description ______________________________________________________________________________ 8.4 Quick Order Subsystem While shopping, a user may choose to place a quick order through the Quick Order subsystem. The shopper identifies, through the quick order mechanism, the products and the quantities/weights of those products they wish to order. The quick order can then be sent to the appropriate department, where a web screen displays to store personnel the orders placed by shoppers. After they have finished processing the order, store personnel can send a message to the shopper that their order is ready. This is an optional feature. PssQuickOrderBarcodeCom – Com object associated with quick order PssQuickOrder – Class associated with quick order Database tables associated with quick order are: Pss_Order_List Pss_Order_Status Pss_Order_List_Item Pss_Department 8.5 Queue Busting Subsystem The Queue Busting application allows the PSS System to be used in a slightly different manner than normal, but also helps retailers and shoppers reduce the amount of check–out time. Any hand held terminal which has been released can be used for queue busting. This is normally done by store personnel to alleviate long check out lines which may have formed. Transactions in this mode are initiated by scanning a special (configurable) barcode. More than one barcode can be configured for use in this manner. This barcode is expected to be on a plastic token. Once the special barcode has been scanned, the items in the customer basket are scanned. A PSS transaction is created in the same manner as a normal PSS transaction. After all items in the basket have been scanned, the special barcode, which began this mode, is scanned again. This transaction is sent to the POS System. The plastic token containing the barcode is then handed to the customer with instructions to give it to the cashier at the check-out register. When the customer reaches the register, they present the token and their loyalty card (if used) to the cashier who then performs a standard non-audit self scan check out. After the customer checks out, the token can be reused for other customers. There are no methods written specifically for queue busting. The hand held application differentiates between a normal shopping trip and a queue busting session. PssSpecialBarcodeCom – Com object associated with queue busting PssSpecialBarcodeLib – Library associated with queue busting Associated database tables are: Pss_Session Pss_Special_Barcode WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 89 February 1, 2000 Software Description ______________________________________________________________________________ 8.6 Electronic Marketing Subsystem The PSS system also allows for a basic electronic marketing facility through the Electronic Marketing application. This application allows a retailer to send messages to a shopper’s hand held terminal anytime that a given item is scanned. This is an optional feature. PssEMarketingMessage - Class associated with electronic messages ElectronicMarketing – Library associated with marketing Database tables associated with marketing messages: PSS_Marketing_Item PSS_Marketing_Sent PSS_Marketing_Mfg PSS_Marketing_Department 8.7 User Messaging Subsystem Also, through the User Messaging application, the store has the option to send messages to shopper’s hand held terminals. The messages can be any text, and can be made to be repeated, be displayed at fixed times during the day, and/or can be directed to any set of shoppers currently in the store. In addition, messages for a particular customer can be preloaded and are delivered to them the next time they shop with the WaveWorks PSS system. PssSystemMessageCom - Com object associated with system messages Pss_System_Message – Database table associated with system messages WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 90 February 1, 2000 Software Description ______________________________________________________________________________ 8.8 POS Interface Subsystem The WaveWorks PSS POS Interface is a file-based mechanism that provides communication between the PSS system and the store POS system by the exchange of files. Transfer Area inbound Working Area inbound Processed Files Area outbound PSS software monitors and deposits files into a directory referenced as the Transfer Area. Inbound files (created by the POS) are detected in the Transfer Area and moved into the working area where a processing transaction processes the information in the file. When processing completes, the file is then moved into the Processed Files Area. Outbound files (created by PSS) are initially created in the working area and, when completed, are moved into the Transfer Area to be processed by the POS system. Under normal operating conditions, files should only exist in the Transfer and Working areas temporarily. If files begin to accumulate in either of those areas, it is a sign of a system malfunction. Files moved into the Processed Files Area remain there until a File Housekeeping job deletes them. Files which are processed correctly are renamed with filetype "COMPLETED" and files which could not be processed are renamed with filetype "ERR". The directory location of the Transfer Area and the Processed Files Area may be configured in the PSS System Settings, but they default to the "Transfer" and "Processed" subfolders of the folder where PSS was installed: (C:\Pss\Transfer and C:\Pss\Processed). This Transfer Area folder location is identified by System Setting value POSINTERFACE/Local_TransferArea. If the POS system supports network file paths and WindowsNT can be configured to map a directory on the POS, then PSS can be configured to retrieve and send files to a directory area on the POS system. The Processed Files Area is identified by a System Setting value POSINTERFACE/ ProcessedFileArea. Since this folder can accumulate large numbers of files depending on how frequently File Housekeeping is configured to run, this directory may be configured to be on a different disk device than the disk on which PSS is installed. This would be done to avoid filling up that disk and causing a Disk Full problem. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 91 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.1 POS Interface Files The files defined are: • PSS Transaction filesent from PSS to POS to identify a shopper and the items they have scanned. • POS Transaction filesent from POS to PSS to identify that a shopper has paid for their trip and allows for sending the items scanned by the POS system. • Item Record filesent from POS to PSS and contains all of the items in the POS database such that the PSS database can be updated to reflect the items contained in the POS database. • Price Changes filesubset of the Item Record file, processing is the same. • Tax Table filessent from the POS to PSS and contain tax information used by PSS to perform transaction tax calculations. • Customer Update Filesent from POS to PSS to update the PSS database with information about valid PSS shoppers. The following sections describe the file layout for each of the file types. (File layouts unchangedskipping to next section) 8.8.2 POS Interface Software Entities The following software components are included to process the files listed above. A service exists which monitors a specific folder for the arrival of these files. Files created by PSS are, when detected, transferred to the POS system using the configured “transfer” transaction. Files created by the POS system are, when detected, “processed” on the PSS system using the configured “processing” transaction. 8.8.2.1 PSSFileMonitorSvc PSSFileMonitorSvc is the service which monitors Transfer Area for the arrival of files from the POS system and for files generated by the PSS system. It moves inbound files into the Working Area and, when appropriate, initiates WaveWorks transactions for performing file-processing functions. It can also be configured to initiate transfer transactions when it detects outbound files. Release 1 of PSS provides no transfer transactions for sending files to a POS system. 8.8.2.2 PssPosService(IBM 4690 POS only) This is an NT Service specifically developed for information exchange with IBM 4680/90 POS systems running the Supermarket Application(SA). This service handles the transfer function for all of the file types listed above. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 92 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.2.3 IBM RCO for 4680/90 POS PssPosService makes use of the IBM RCO (Retail Connectivity Option) product for the 4680/90 POS. Release 1 of PSS WaveWorks used IBM RCO release 2.4.1. This product supplies a client access service that communicates with a Server application on the 4680/90 POS. For this mechanism to work, the IBM POS must be running the adxsrvnl.286 application as a background application. The client application nbqmain.exe that runs as a WindowsNT service is automatically installed by the PSS installation procedure, but it must be configured by placing configuration information into file nbqmain.cfg in the Pss\bin directory. This file is delivered with a set of preconfigured values that are typical of a PSS/4690 POS installation, but may need to be changed to allow PSS to communicate with the POS. See the IBM RCO User's Guide for parameter values which can be placed in this file. 8.8.2.4 POSInterfaceCOM This COM object contains the software methods used to perform the processing of transaction files, item files, and tax table files described earlier. In release 1 of PSS, it also contains the transactions which initialize the PssPosService. It contains the following functions to handle the associated transaction: Function Transaction LoadPOSItemFile LoadTaxTable LoadPOSTransaction EnableItemUpdates DisableItemUpdates POSSItemFileTransfer POSstartup SetCommLinkStatus POSLogin P2P003 P2P005 P2P002 P2P304 P2P404 P2P103 POS100 POS301 POS300 Activator PssFileMonitorSvc PssFileMonitorSvc PssFileMonitorSvc PosInterfaceCOM/LoadPOSItemFile PosInterfaceCOM/POSSItemFileTransfer PssFileMonitorSvc PssFileMonitorSvc PssPosService PssPosService 8.8.2.5 PssCustomerMaintCOM This COM object handles processing of the Customer Information File (CUSTMTxx.DAT) and updates the PSS database tables with information from that file. It contains the following functions: Function LoadFromFile WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Transaction P2P006 Activator PssFileMonitorSvc Page 93 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.2.6 PssFileMaintCOM This COM object handles general file housekeeping functions. It contains the transaction used by the POSInterface to purge files from the Processed File Area, the transaction to move the PssTransactionFile from the Transfer area after the POS has processed it, and the transaction that emulates the POS (Converts PSSTransactionFile to POSTransactionFile) It contains the following functions: Function Transaction CleanupPssTransFile CleanupArchiveArea P2P201 P2P298 ConvertSItoSO P2P299 Activator PssFileMonitorSvc WindowsNT Scheduler/WaveWorks SENDTX PssFileMonitorSvc 8.8.2.7 Windows NT Scheduler PSS uses the native scheduler inWindowNT to schedule a purge of files from the ProcessedFileArea area. During PSS installation, a scheduled task named PurgeFiles is placed in the Windows NT \Tasks folder which is scheduled to activate transaction P2P298 daily to purge the files. The FileHouseKeeping system settings are used to control the purge activity. 8.8.3 POS Interface Configuration Configuration of the POS Interface for a specific store environment is achieved by modification of PSS System Settings and by implementation of User Exit routines supported by the POS Interface Applications. Changes to configuration items are made using the System Settings page on the System Administration Terminal. That page contains a detailed description of each system setting item with information that identifies valid values for the item. The page also contains a default value for each item. The settings for the POS interface are divided into the following four areas • settings that apply subsystem-wide to the POS interface • settings that apply to the processing of specific file types • settings that affect the operation of the NT Services used by the POS Interface • settings that apply to a specific POS system (IBM 4680/90). After modifying a system setting value, the link at the bottom of the system-setting page, Re-Initialize PSS System, must be activated to cause the modified setting to be recognized by the PSS software. The PssPosService must be stopped and restarted after changing any 4POSSINTERFACE settings. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 94 February 1, 2000 Software Description ______________________________________________________________________________ The names of the items on the System Settings Page that are used to configure the POS interface portion of PSS are listed here for cross-reference to that page. Where the following pages mention a Configuration Group, that corresponds to the Name column on the System Setting page. Where they mention a Configuration Item, that corresponds to the Subname column on the System Setting page. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 95 February 1, 2000 Software Description ______________________________________________________________________________ Settings that Apply to the POS Interface Subsystem as a Whole Configuration Group (Name column on System Settings Page) POSInterface Configuration Item (Subname column on System Settings Page) LocalTransferArea Directory to monitor for the arrival of files from the POS and where PSS should place files for the POS to retrieve RemoteTransferArea (Future)Location on POS where files are to be deposited or retrieved Directory where PSS should place files when done processing them ProcessedFileArea POSControllerType Type of POS which PSS is interfacing to (4POSS is the 4690 interface) POSControllerName Network Name of the POS controller LanAdapterNumber LANA number of the network interface that the POS computer is connected to PSSItemBarcodeLength Number of valid digits in the item barcode field of a file exchanged with the POS. This field is pre-sized to 24 digits in the files, but most barcodes have fewer digits. PSSTransactionType TICKETONLY/LOYALTY UsePSSPrice Set to Yes if the POS does not place price information in the POSTransactionFile. PSS rescan logic will not do price comparisons ExcludedDepartments Identifies items not to be loaded into the PSS database if they are associated with these department numbers Trace_Level Identifies the amount of status information that should be written to the PSS System Log by the software that is part of the POSInterface system. This value may be overridden by definition of a Trace_Level for a specific POSInterface component PSS_Global LoyaltyCardLength Number of valid digits in a customer loyalty card FileHouseKeeping HousekeepingEnabled FileKeepDays Whether or not File's should be deleted from the ProcessedFileArea when the FileHousekeeping job runs Number of days a file should remain in the ProcessedFileArea before being deleted. This is actually the number of 24 hour periods to be kept. If the File Houskeeping job is set to run more frequently than once per day, some files dated on a specific day may be deleted and others remain. ImportItemData CheckDigitExists Indicates whether or not a check digit is part of item file barcodes ValidateCheckDigit Indicates whether check digit item file barcodes are valid WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 96 February 1, 2000 Software Description ______________________________________________________________________________ Settings for Configuring Processing Attributes of Each POS File Type Configuration File Groups POSItemFile Full Item file and Item/Price updates POSTaxFile Tax tables POSTransFile Created at completion of a POS transaction (Scan-Out) PSSTransFile Created at completion of a PSS transaction (Scan-In) PSSTransFileX Defined when the IBM 4690 POS(4POSS) is being used. 4POSS renames Scan-In files that have been successfully written to the POS and leaves them in the transfer area. This file type identifies those files and specifies a transaction that moves them into the ProcessedFileArea. POSCustomerFile Provides updates to customer information and identifies customers who may use PSS Configuration Item FileName MonitorInterval TransferEnabled TransferType TransferTime TransferTX ProcessTX PSSExpansionLength UserExpansionLength FileFormatVersion (future) RemoveItemCheckDigit (not all files) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Applies to each of the above file types (not all apply to every file type). Name used by POS system to identify the type of file to be processed Delay(in ms) between scans by the PssFileMonitor service to look for the existence of the file type Identifies to the PssFileMonitor service whether or not the filetype should be processed Identifies the direction of transfer(Inbound or Outbound) and distinguishes IMMEDIATE vs TOD (TimeOfDay) processing. The PssFileMonitor service activates a WaveWorks TransferTX when it detects an OUTBOUND file and it initiates a WaveWorks ProcessTX when it detects an INBOUND file. If the file is an INBOUND-TOD type file, then the PssFileMonitor initiates a TransferTX at a specified time to request a POS to send a filetype. Only applies to TOD file types. This identifies the time of day at which the TransferTX will be activated to retrieve the file on the POS A WaveWorks transaction ID. This transaction must be defined in the WaveWorks database with a string parameter for the file path of the file to retrieve A WaveWorks transaction ID. This transaction must be defined in the WaveWorks database with a string parameter for the file path of the file to process. Identifies the number of additional bytes appended to each record in a file for transferring PSS specific information. See the specific filetype layout for more information Identifies the number of additional bytes appended to each record in a file for transferring client specific information. PSS standard processing ignores this data, but it may be accessed by PSS User Exits Future. Will be used to distinguish file versions if the standard file format changes in the future Identifies if the ITEM barcode in the record as written by the POS includes a checkdigit. PSS does not store the checkdigits in its database Page 97 February 1, 2000 Software Description ______________________________________________________________________________ RemoveCustCheckDigit (not all files) AddItemCheckDigit (not all files) AddCustCheckDigit (not all files) FullItemFileName (POSItemFile only) Trace_Level Identifies if the CUSTOMER CARD number in the record as written by the POS includes a checkdigit. PSS does not store checkdigits in its database Identifies if PSS should write a checkdigit value in the ITEM field in the records of files sent to the POS Identifies if PSS should write a checkdigit value in the CUSTOMER CARD number field in the records of files sent to the POS The specific file name of a Full Item Update file. This is used to distinguish replacement database from a database update to the PSS item data Identifies the amount of status information that should be written to the PSS System Log by the software that processes the file type Settings for Configuration of NT Services that Perform POS Interface Functions PssFileMonitor Trace_Level Trace level to be used by the PssFileMonitor service POS Specific Settings for the IBM4680/90 POS 4POSSInterface (Specific settings for the interface to the IBM 4680/90 SA POS system) POSTransFileVersion CopyTaxTables NumberPriceBytes DeletePOSIRC Trace_Level Whether the 4690 ScanOut file user exit writes prices to the file and whether Quickpay transactions have items written to the transaction file Whether or not to retrieve tax tables from the POS Number of price bytes expected in the ScanIn file by the POS User Exits Whether/When to delete the POS Item record changes file Specific trace level for the PssPosService WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 98 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.4 PSSTransactionFile Processing 8.8.4.1 File-Based Interface At the conclusion of a shopping trip (when a hand held terminal is returned to the dispenser or the End of Trip barcode is scanned), a PSS transaction file is created and placed in the transfer directory. Once the file is properly placed in the transfer directory, the processing for a PSS transaction file is complete in the file-based interface. Custom code must be developed to provide the transfer mechanism to the POS system. 8.8.4.2 4680/4690 Interface The IBM SA Personality implementation of the POS API uses the IBM product RCO. The RCO API provides access to the POS files on the POS controller over a LAN. It is described in the IBM manuals: • “Retail Connectivity OptionVersion 2.4.1 including OS/2 appendix - Product Reference” dated September 15 1994. • “Retail Connectivity OptionVersion 2.3 - User’s Guide” dated November 1996, which covers both OS/2 and NT The POS Interface consists of a service (PssPosService) that includes a modified version of the POSAPI from Version 5.0 of the PSA. The POSAPI provides the interface between the PSS Controller and the native 4680/90 POS. It provides the PSS Controller with file access to data on the native POS controller. When a hand held scanner is returned from a shopping trip, a PSSTransactionFile, according to the format listed above, is created in the transfer directory. The PssPosService scans the transfer directory at a regular interval. On detection of a file, the PssPosService handles transfer of the information in the transaction file to the 4690 controller by writing the transaction information into the Scan-In file on the POS. The frequency at which the PssPosService scans the directory is specified by the system setting PSStransactionFile/MonitorInterval. 8.8.4.3 POS Emulation (Demo System) Under normal conditions, the PSS shopping trip creates PssTransaction files and places them in the transfer area for a POS to process. The PssFileMonitor process is configured to ignore these files and not attempt to move them or process them, since the store POS (PssPosService) will be processing them. For testing and demonstration purposes, when access to a POS system is unavailable, the System Setting values for the PSSTransactionFile can be modified to cause the PssFileMonitor to detect them and activate a POS emulation transaction. This transaction reads PSSTransaction files (Scan-In) and creates corresponding POSTransaction files (ScanOut) which are in turn detected and processed to complete the full shopping transaction cycle and unsuspend the customer record (customers are suspended until trips are completed). WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 99 February 1, 2000 Software Description ______________________________________________________________________________ In order to enable this feature, the following system settings must be configured as shown. Name/Subname PSSTransFile/TransferEnabled PSSTransFile/TransferTX PSSTransFile/AddCustCheckDigit PSSTransFile/AddCustItemDigit Value Y (Tells PssFileMonitor to process this filetype - default is N) P2P299 (the PosEmulation transaction -default is P2P199) N (should match value for POSTransFile/RemoveCustChkdigit) Y (should match value for POSTransFile/RemoveItemChkdigit) After changing these settings, stop both the PosService and PssFileMonitor services. Set the WaveWorks database ADM_DAEMON table so that PosService is NOT restarted automatically (just prefix the name so the service isn't found). This will prevent the PosService process from trying to process PssTransaction(ScanIn) files. Start up the PssFileMonitor service. By setting the values above, PssFileMonitor will be enabled to monitor PSSTransaction(ScanIn) files and trigger event P2P299, which creates a corresponding POSTransaction(ScanOut) file. Normal POSTransaction file processing will then be triggered by the appearance of a file and cause the shopping trip to be completed. The POSTransaction file that is created has the same RESCAN flag value and the same items as are in the PSSTransaction file. Future support for record level and file level user exits to be called by transaction P2P299 is planned. Thus the created POSTransaction file could be altered by integrators to add to, remove, or alter records. This support is not available in the initial release. 8.8.5 POS Transaction File Processing 8.8.5.1 File-Based Interface The transfer directory is polled by the PssFileMonitor service. Once a POSTransactionFile arrives in the transfer directory, file processing is activated. The shopping trip information is moved into the Shopping History database tables. In addition, the shopper's rescan probability is recalculated. If the file contains an End of Day record, the End of Day Event is stored in the database (PSS_EOD table) and the End of Day user exit routine is activated. 8.8.5.2 4690 Interface Upon completion of a transaction at the store check-out lane, a 4690 user exit running in the check out support application updates a ScanOut file on the POS with information about the completed transaction. The PssPosService polls the file on the POS, retrieves new information in the scan-out file, and creates a PosTransactionFile in the Transfer Area for each POS transaction completed since the last scan. Upon detection of a POS transaction file by the PssFileMonitor service, processing continues as described in the file-based interface. The frequency of the poll interval is specified by system setting POSTransactionFile/MonitorInterval. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 100 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.6 Item Record File Processing PSS maintains a database of items on the store shelves and their prices. This database is maintained by downloading the item information from the store’s POS system. These downloads can be achieved as either full item database downloads or as item information updates. The POSItemFile system settings are used to control the functioning of these operations. Either or both download types can be used to update the PSS item database. Since a download of a full item file requires a high level of computer system resources it is recommended that full item database downloads be performed when shopping activity is low. However, shopping trip activities may continue during Item File processing and full downloads or updates can occur at any time. Early benchmarks indicate approximately 1500-4000 records per minute can be loaded depending on other PSS system activities, load on the POS system, overall traffic load on the PSS-POS network segment, machine configuration (CPU speed and amount of memory) and on the database size. There is one primary distinction between item update and full item file processing, item deletion. During full item file processing PSS tags all items in the database that were also in the item file and after finishing its update pass it deletes all untagged items. Since item update processing does not include an item delete function, this is the only way to purge PSS of items that have been deleted from the POS database. 8.8.6.1 File-Based Interface The transfer directory is polled by the PSSFileMonitor service. When a Full Item File or Item/Price Update file arrives in the transfer directory, the Item File processing is initiated. File processing takes the data contained in each Item File record and loads that data into the PSS_Shopping_Item table in the PSS Database. 8.8.6.2 4690 Interface The PssPosService creates an Item update or full Item file from the information maintained on the 4690 controller. On startup, the PSSFileMonitor service sends a WaveWorks transaction to the PssPosService requesting that it initiate Item/Price update processing. The PosService then begins polling the POS controller at the rate specified by the configuration item POSItemFile/MonitorInterval for changes. The PSSFileMonitor uses the configuration item POSItemFile/TransferTime to control when to request download of a full item file to the PSS system. When that time arrives, the PSSFileMonitor sends a pair of WaveWorks transactions to the PosService, one to disable item/price update polling and one to request creation of the full item file. On arrival of the item file in the transfer directory the PSSFileMonitor triggers the WaveWorks ItemFile load transaction. Upon completion of loading the file, the ItemFile load module sends a WaveWorks transaction to the PosService to tell it to resume polling the POS system for updates. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 101 February 1, 2000 Software Description ______________________________________________________________________________ 8.8.7 Customer Update File Processing The information maintained for customers that are registered to use the PSS system may be updated by sending a Customer Update File to the PSS system. This file can be used to create and update customer records in the PSS Customer database. PSS maintains many data items not included in the CUSTMTxx.DAT file described earlier in this document, but the format has been maintained for compatibility with existing PSA systems. Sites, which choose to populate additional PSS customer fields, can append data to the customer record in the User Expansion Area of the record and can process that data by customizing the User Exits provided. 8.8.7.1 File-Based Interface The transfer directory is polled by the PSSFileMonitor service. When a Customer Update file arrives in the transfer directory, the file processing transaction is activated. File processing takes the data contained in each Customer Update record and loads that data into the PSS_Customer table in the PSS Database. 8.8.7.2 4690 Interface There is no special support provided with the base PSS system for creation and transfer of customer files. 8.9 PSS Services Services are software programs that control individual components of the Portable Shopping System (there are also services concerned with the operating system and other components of your computer). The common services associated with the Portable Shopping System are defined below; your store may have additional custom services not listed here. WaveWorks RF Server—handles all communications to RF devices (primarily the hand held scanners, and certain types of entrance units) WaveWorks Message Server—routes messages between components of the system WaveWorks Business Server—manages software applications (COM Objects) WaveWorks STEP/Display Server—displays the screens on the hand held scanners WaveWorks System Controller—the highest level service which encompasses all other services defined for your installation of the PSS PSS POS Service—handles communications between the PSS and the IBM 4600 series of POS controllers WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 102 February 1, 2000 Software Description ______________________________________________________________________________ PSS File Monitoring Service—manages file transfers between PSS and POS (primarily for transfer of item, customer, scan in, and scan out files PSS RF Entrance Service—controls operation of all entrance units PSS Printer Service—controls operation of all printers WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 103 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9. Customizing the PSS System Software The WaveWorks PSS system offers a number of options for integrators that need to customize the base system to meet customer requirements. PSS allows integrators to customize the system by changing the DisplayServer scripts, writing custom services, or writing custom business objects. PSS also supports “user exits,” which are function hooks in the base code that let the integrator provide custom processing at key points in the code. 9.1 Custom DisplayServer Scripts The DisplayServer process runs scripts called “interfaces” that control the display on RF devices (terminals and RF entrance units). The code for the interfaces is stored in the WaveWorks database. The source files that were used to load the database at install time are found (by default) in the C:\PSS\StepDev folder. The integrator can make a customer-specific copy of these source files and modify them as needed. The modifications can range from small changes to the logic, such as running a custom transaction or changing the screen layout, to completely rewriting the interface. Note that most interfaces get their text from the PSS database, so changing the wording of prompt or message may be as simple as changing the text in the PSS_Text table. 9.2 Custom Services The PSS system uses NT Services (standalone processes that are started at bootup) to communicate to hardware devices. Examples include the EhtService for communicating with the RF entrance unit, PssPrinterXX for talking to serial ticket printers, and the PssPosService for talking to the store’s POS system. Writing an NT service requires a solid programming background and WaveWorks developer training, but is an option for providing an interface to special devices or computer systems. The services connect to the WaveWorks MessageServer and use WaveWorks transactions to access standard business services. 9.3 Custom Business Objects PSS business services are contained in more than a dozen COM Objects. Each business service is a COM object method. The WaveWorks system uses transaction Ids to map business services to a particular method on a particular business object. Integrators don’t have access to the base system source code (aside from user exits that are implemented in the COM Objects), but they can create their own COM Objects. These COM Objects can provide new business services (using new transaction Ids) or replace existing business services (by changing the mapping between transaction ID and COM object/method in the WaveWorks database). These new business services can be accessed from custom services and custom DisplayServer interfaces. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 104 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ Writing custom COM Objects requires a solid programming background, preferably using Visual C++ and the ATL wizard. 9.4 User Exit DLL A DLL, PssUserExits.dll, is provided which allows integration teams to customize the software for a given installation. This mechanism is equivalent to the User Exits used in the PSA software. The DLL contains functions that have been built into the code, but that, in most cases, contain stubs that only log a debug level message to identify that the function was called. The integrator is then allowed to add appropriate code to the functions and rebuild the dll. The C++ language header file PssUserExits.h documents the intended purpose of each function, the detail of the function interfaces, and the return status codes expected by the base PSS software. It also documents how the various return code values will affect the operation of the base PSS software when the function returns. Each User Exit function is implemented in a separate C++ source file named .cpp. This C++ source file contains the stub code for the function. 9.4.1 Common Information All methods should return one of three return status codes as described below. The return code is the last argument in the call list to the User Exit function. The following description of standard arguments which are passed to all user exits applies to C++ modules only. User Exits called from "C" only code will not include the arguments which are C++ objects. A C++ source module with the same name as the function name is supplied with a stub implementation routine for the User Exit. The stub routine "includes" the PssUserExits.h file to retrieve the function definition. All stubs return status UE_CONTINUE to the calling routine. Many of the stub routines log a debug level message to the PSS System Log with the values of all the input arguments. This stub code can be reviewed to see how to use the CPssMsgLog object to write messages to the PSS System Log. See also the following section "Using the CPssMsgLog Class." If a "Preprocess" User Exit needs to pass information to a "Postprocess" User Exit for the same PSS function (PreProcessRecord -> PostProcessRecord), it can be maintained in static storage in the dll. All other information exchange between user exits cannot safely rely on executing within the same instance of the dll. In those cases the User Exits must use other mechanisms for sharing information between user exit functions. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 105 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ PSS base code is linked with Microsoft's Multithreaded DLL runtime library, so integrators must link a custom user exit DLL using that same library. Otherwise runtime errors will occur with the CpssMsgLog and CSymStatementPool classes that are used in the stub User Exits. 9.4.2 Return and Message Codes The following return codes are used by the standard PSS software to determine how to proceed after the User Exit routine has returned to the calling routine. The name and numeric value must also be defined in database table PSS_TEXT if this name is to be used as the msgcode field for writing a message to the PSS System Log. UE_CONTINUE UE_DONE UE_ERROR Indicates PSS should continue with normal processing Indicates the User Exit has performed all necessary processing and PSS should skip its normal processing. Note: A UE_DONE returned by a "PreProcess" function will cause PSS to skip the call for the "PostProcess") Indicates the User Exit was unable to process sucessfully PSS processing will write a message to the log and continue processing in the same manner as if a UE_CONTINUE was returned unless documented otherwise for the individual User Exit. 9.4.3 Using the CPssMsgLog Class All of the PSS software uses a C++ class named CPssMsgLog for writing operational status and error messages to the PSS System Log. Customized User Exits should make use of this class to keep system logging consistent for troubleshooting purposes. Each line in the PSS System Log displays the following: • Date/time the message was written. • Facility Namea 64-character name which should identify the COM object, NT Service, or other high-level entity such as "ShoppingTripEndOfTrip" to identify a transaction type. • Action Namea 64-character name which represents the specific function which is logging the message. This should either be the UserExit name or the name of a specific subfunction used by the UserExit routine. • Message texta 256-character string that contains the information being reported. The text of these messages is maintained in the PSS_Text database table. The text in that table can contain tags that represent values which the software supplies to replace the tag. For instance, the POS file processing replaces a string tag with the filename of the file being processed and the Unit Management system replaces a string tag with the MAC address of a terminal that doesn't respond. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 106 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ • Severityrepresents the severity of the condition being logged. A System setting value, subname "Trace_Level", is maintained for the Facilities that log messages. If the message severity value is less than the severity value specified in the LogMessage call, the message is not written to the log. For instance, if the Trace_Level is set to 2 (Warning), then messages with a severity value 1 (Informational) are not written to the log, but messages logged with the severity 3 (Error) are written to the log. The value 2 is the default Trace_Level value set for most facilities by the PSS installation scripts. The Trace_Level values can be modified using the System Settings Page on the PSS Administration terminal. The allowable values for severity which can be specified in a LogMessage call are: • PML_DEBUGlevel 0, used to log messages helpful in debugging code during development. Examples are logging the values of parameters used or calculated by software. The default Trace_Level settings suppress these messages. • PML_INFOlevel 1, informational messages that typically log the operational status of software. Examples are positive status about the completion of an operation (Function XYX completed successfully). These are messages that would not normally be enabled in the System Log because there would be many such messages cluttering the log and they would obscure more severe messages. If there were a perceived system problem, then troubleshooting procedures might suggest setting the Trace_Level to 1 so these messages would be written to the log and could be reviewed to see if software functions were being performed as expected. • PML_WARNINGlevel 2, Error conditions which the PSS software is readily able to recover from. The default Trace_Level settings write these messages to the log. These messages may or may not indicate a system malfunction. • PML_ERRORlevel 3, Error conditions that indicate a system malfunction that is causing operational errors. The default Trace_Level settings write these messages to the log. Some corrective action will normally need to be taken to reinstate proper system operation. • PML_FATALlevel 4, Critical Error conditions that stop the operation of PSS system components. These messages typically accompany other indications such as turning the PSS Administration terminal's Main Menu traffic light red and the disabling of the ability of PSS to perform shopping activities. • PML_ALWAYSlevel 10, Status messages that do not indicate error conditions, but which should always be written to the System Log. Examples are startup and shutdown messages logged by PSS services or activation messages logged by scheduled tasks. See the PssMsgLog.h header file for more programming details. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 107 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5 Available User Exit Functions Following is a complete list of the User Exit routines as called by the standard PSS Software, along with a brief description of the intended purpose of the User Exit routine and a description of how the base PSS software reacts to the return code received from the User Exit. For the most recent information on functionality and more details about specific arguments passed to the User Exit routines, review the header file PssUserExits.h. 9.5.1 UE_PreProcessItemFile This function is called before processing of Item Record File is performed. It receives the file path of the item file as an argument. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the item record file as if no Pre-Processing was performed PSS performs no Item record file processing PSS logs an error then proceeds as with UE_DONE 9.5.2 UE_PreProcessItemRecord This function is called after an item record is read from the file, but before PSS performs any processing of the record. It is anticipated that this UE function will be used to either replace all PSS Item record processing or to alter the input buffer that PSS processes. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the item record as if no Pre-Processing was performed, validating the item record and loading it into the PSS database. PSS performs no record processing and proceeds to read the next record PSS logs an error then proceeds as with UE_DONE Note: If a UE_DONE is returned, the POS_Item_Flag field of the record in table PSS_Item must have been updated to "Y" or the record for that item will be deleted from the database by PSS end of file processing. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 108 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5.3 UE_PostProcessItemRecord This function is called after the item record has been processed by PSS and loaded into the PSS database. It is anticipated that this User Exit function will be used to alter the PSS database item values set by default PSS processing or to process additional information in the User Expansion area of the item record. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS proceeds to read the next record PSS proceeds to read the next record PSS logs an error then proceeds as with UE_DONE 9.5.4 UE_PostProcessItemFile This function is called after PSS has processed the entire Item Record File. All database updates have been completed and the file is closed. It receives the file path of the item file as an argument. The file path for the processed Item record file will be different than the name the file had for UE_PreProcessItemFile and depends on the success of PSS processing. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS performs no additional file processing PSS performs no additional file processing PSS logs an error then proceeds as with UE_DONE 9.5.5 UE_PreProcessTaxFile This function is called before any processing of a POS Tax Table File is performed. It receives the path of the tax table file as an argument. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the file as if no Pre-Processing was performed PSS performs NO file processing PSS logs an error then proceeds as with UE_DONE WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 109 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5.6 UE_PostProcessTaxFile This function is called after PSS has processed the entire Tax Table File, all updates to thePSS database have been completed, and the file has been closed. It receives the file path of the tax table file as an argument. The file path for the processed file will be different than the name the file had for UE_PreProcessTaxFile and depends on the success of PSS processing. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the file as if no Pre-Processing was performed PSS performs no file processing PSS logs an error then proceeds as with UE_DONE 9.5.7 UE_PreProcessPOSTransFile This function is called before any processing of a POS Transaction File is performed. The POS Transaction file defines a completed transaction at the POS terminal. Arrival of the file indicates completion of the shopping trip. Base logic clears the trip from the list of current shopping trips and moves the trip into shopping trip history. The information in the file is used to calculate a shopper's rescan level The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the file as if no preprocessing was performed PSS performs NO file processing PSS logs an error then proceeds as with UE_DONE 9.5.8 UE_PreProcessPOSTransRecord This function is called before processing the current header or detail record read from a POS Transaction File. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: UE_ERROR: PSS processes the RECORD as if no Pre-Processing was performed PSS performs NO RECORD processing and proceeds to the next record PSS logs the error an proceeds as with UE_CONTINUE. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 110 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5.9 UE_PostProcessPOSTransRecord This function is called after processing the current header or detail record read from a POS Transaction File and after updates to the PSS database for the current record have been completed. The base PSS software handles the following return codes from the User Exit as follows: All return codes: PSS logs the status and continues on to the next record 9.5.10 UE_ProcessEODRecord This function is called after PSS processes an EOD or EOW record in a POS Transaction File The base PSS software handles the following return codes from the User Exit as follows: All return codes: PSS logs the status and continues on to the next record 9.5.11 UE_PostProcessPOSTransFile This function is called after all processing of a POS Transaction File and all updates to the PSS database for a POS transaction have been completed. The base PSS software handles the following return codes from the User Exit as follows: All return codes: PSS logs the status 9.5.12 UE_PreProcessPSSTransFile This function is called before processing of a PSS Transaction File is performed. The PSS Transaction file defines a completed by a shopper using a hand held terminal. This is the file used by the POS to retrieve the PSS shopping trip. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: PSS processes the FILE as if no Pre-Processing was performed UE_DONE: UE_ERROR: PSS logs the return status and performs NO FILE processing PSS logs the return status and performs NO FILE processing WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 111 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5.13 UE_PreProcessPSSTransRecord This function is called before writing the current header or detail record to a PSS Transaction File. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE: UE_DONE: 2UE_ERROR: PSS processes the RECORD as if no preprocessing was performed PSS performs NO RECORD processing and proceeds to the next record PSS logs the error an proceeds as with UE_ DONE 9.5.14 UE_PostProcessPSSTransFile This function is called after all processing of a PSS Transaction File has been completed and the file has been closed. The file path to the processed file is passed as an argument. The base PSS software handles the following return codes from the User Exit as follows: All return codes: PSS logs the status 9.5.15 UE_CalculateItemPrice_Method10to20 9.5.16 UE_RescanLevelCalculation This function is called prior to the standard rescan level recalculation and is intended to replace it with the user-defined algorithm. The base PSS software handles the following return codes from the User Exit as follows: 9.5.17 UE_Pre-RescanDetermination This function is called prior to the standard rescan determination algorithm and could be used to either replace or modify the inputs into the algorithm. The base PSS software handles the following return codes from the User Exit as follows: All return codes: WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 112 February 1, 2000 Customizing the PSS System Software ______________________________________________________________________________ 9.5.18 UE_PostRescanDetermination This function is called after the standard rescan determination algorithm and could be used to modify the result of the calculation. The base PSS software handles the following return codes from the User Exit as follows: All return codes: 9.5.19 UE_PreProcessMarketingMessage This function is called prior to the standard marketing message method to allow different messages to be sent based upon different criteria. The base PSS software handles the following return codes from the User Exit as follows: All return codes: 9.5.20 UE_LoginAuthorization This function is called after a user fills out the username and password fields on the Administration Terminal login screen. It receives the username and password as arguments and must return as status indicating if the user is authorized. The base PSS software handles the following return codes from the User Exit as follows: UE_CONTINUE UE_DONE UE_ERROR PSS performs its default authentication PSS proceeds considering the user is authorized PSS proceeds considering the user is not authorized WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 113 February 1, 2000 System Administration Interface ______________________________________________________________________________ 10. System Administration Interface The System Administration Interface provides browser-based access into the data contained in the system database, as well as various system control functions. The purpose is to allow store personnel to manage the system, obtain information, and provide updates to the information. The available data concerns almost every facet of the system, including: • Customer current and historical data • Messaging • Hardware configuration • Item data and marketing • Reports • System Status • System Configuration 10.1 Configuring the Browser Software Install the desired browser software on the Service Terminal. software packages are: The recommended browser • Netscape Navigator (Netscape Communications Corporation), v4.08 or greater • Microsoft Internet Explorer (Microsoft Corporation), v5.0 or greater Create a shortcut icon on the desktop for the browser, for ease of access by store personnel. Set the PSS Administration Main Menu screen as the “HOME” page of your browser software. The home page will then be automatically displayed when the browser software is started. The path to the main menu is: http://localhost/pssinterface/administer.asp, where localhost is either the literal text string ‘localhost’ or the name or IP address of the Service Terminal computer itself. 10.2 Establish User Accounts on the Service Terminal A browser screen is provided to create employees accounts and control employee access to the Service Terminal. To access the screen, from the PSS Main Menu, select System / Settings / Configuration / Administration Users. The Administration Users screen, which is ordered alphabetically by user names, appears. Related user data includes: • Full name of the user. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 114 February 1, 2000 System Administration Interface ______________________________________________________________________________ • Valid starting and expiration dates and times for user’s access to the PSS. • Privilege levelsecurity level to which the user is assigned. This controls the functions that are displayed (as described below). These levels, from highest to lowest, are: - Administratorhas the same functions as all others, plus additional functions. - Technicianhas the same functions as Manager and Customer Service, plus some additional functions. - Managerhas the same functions as Customer Service, plus some additional functions. - Customer Servicehas the fewest functions. • The language spoken or preferred by this administrative user. If a particular text string does not exist for the language preferred by the user, the store language, or, as a last resort, US English will be used. • All data concerning user accounts is stored in the PSS_Admin_User database table. 10.3 Understanding User Access to Administrative Pages and Actions For each security level (Administrator, Technician, Manager, Customer Service) of user accounts, there is default access established to Administrative Pages (which are browser pages) and to Administrative Page Actions (which are distinct tasks contained on browser pages). This allows for a high degree of flexibility in controlling user access. Two browser screens are provided to maintain these Administrative Pages and Page Actions. To access the Administrative Pages screen, from the PSS Main Menu, select System / Settings / Configuration / Admin Pages. The Administration Pages screen, which is ordered alphabetically by page name, is displayed. Related data includes: • Page description • Minimum user privilege level • Whether or not authenticated login is required • Whether or not the page is disabled All data concerning administrative pages is stored in the PSS_Admin_Page database table. To access the Administrative Actions screen, from the PSS Main Menu, select System / Settings / Configuration / Admin Actions. The Administration Actions screen is displayed. Related data includes: • Description of the action • Minimum user privilege level • Whether or not the action is disabled WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 115 February 1, 2000 System Administration Interface ______________________________________________________________________________ All data concerning administrative actions is stored in the PSS_Admin_Action database table. The default permission settings for pages and page actions should be sufficient for providing appropriate system access to each level of user. However, differing customer requirements may make modifications to these default settings necessary. In general, raising the authentication levels to make features available to fewer users is not a problem, but care should be taken to make sure that each level of user has access to all of the features necessary for their use of the system. For example, a customer service user should always have access to customer-related functions—not only to the obvious lookupuser.asp (Find Customer) and registeruser.asp (Add Customer) pages--but also to the support pages for customer functions, such as issueterminal.asp (Issue Terminal) and unabletoissue.asp (Unable to Issue a Terminal). The same rule applies for privileges on actions. Care be taken that the combinations make sense; for example, requiring higher privilege levels for viewing than for modifying a customer name would be largely ineffective. Lowering the authentication levels to make features available to more users should be done with extreme caution. In some cases, lowering authentication levels can, in effect, remove all security from the system (i.e., lowering the privileges on the Administrative Pages or Page Actions pages). Lowering the authentication levels on particular actions could also cause problems. For example, lowering the Modify Customer Rescan Level or Modify Gold Customer action could allow any customer service user to set customers levels so that they would never be rescanned, regardless of previous rescan results. The Suspend / Unsuspend Customer actions could also be abused similarly. 10.4 Changing Screen Text on the Service Terminal The text that appears on the Service Terminal is stored in the PSS_Text database table. The Service Terminal uses Text_IDs from 20000 to 30000 and is organized as follows: Text_ID Contents 20001 - 20099 Menu TitlesText appearing in the menu buttons in the Service Terminal menu system Menu Long NamesText appearing in the pop-up “alternate text” descriptions for the menu buttons in the Service Terminal menu system Page TitlesText appearing as the page title in the browser title bar Page Short NamesText appearing as the page title at the top of the page, in the navigation bar, and in the page buttons in the Service Terminal menu system Page DescriptionsText appearing as pop-up “alternate text” descriptions for the page buttons in the Service Terminal menu system. Action DescriptionsText appearing as action Descriptions on the Admin Actions page Page State TitlesText appearing as the page title in the browser title bar for pages with multiple “states,” for example, the Add Customer page also performs Modify Customer activities. 20101 - 20199 20201 - 20299 20301 - 20399 20401 - 20499 20501 - 20599 20601-20699 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 116 February 1, 2000 System Administration Interface ______________________________________________________________________________ 20701 - 20799 20801 - 20899 20901 - 20999 21000 - 21099 21101 - 29999 Page State Short NamesText appearing as the page title at the top of the page, in the navigation bar, and in the page buttons in the Service Terminal menu system for pages with multiple “states.” Page State DescriptionsText appearing as pop-up “alternate text”descriptions for the page buttons in the Service Terminal menu system for pages with multiple “states.” Miscellaneous Menu TextText used for particular purposes in the Service Terminal menu system, for example, the text for logging in and out of the system is stored here. Miscellaneous TextText used for particular purposes throughout the Service Terminal, for example, the strings for months of the year, or days of the week are stored here. Page TextText for each page in the Service Terminal is stored in this region. The formula for determining the range for a particular page is (21000 + (Current Page ID x 100)). Page Ids are all stored in the PSS_Admin_Page table. For example, page 51 is the Admin Actions page, and its text region is 21000 + (51 x 100) = 26100 (to 26199). 10.4.1 Service Terminal System Settings The behavior of the Service Terminal can also be modified by a collection of system settings, with Name “SVCTERMINAL.” These settings control: • The use of various features or fields that may not be used at every installation for display or in calculating the system status • The dimensions of hand-held terminal messaging displays • Service Terminal hardware settings • The length of time before user login sessions time out • Transactions for resetting system software components The PSSSysInit settings provide the transactions for resetting system COM Objects through WaveWorks. On the System Settings administrative page, there is a link at the bottom of the page, Re-Initialize PSS System. When this link is selected, a CMS message “PSS998” is sent to all standalone executables, such as services, subscribed as “PSSSYS.” In addition, all system settings with Name “SVCTERMINAL” and Subname “PSSSysInitX” (where X is a custom string appended to the Subname) are traversed. The value is sent as a multicasted transaction, that is, sent to all instances of a COM object that handles that particular transaction. Additional transactions may be added to the system by adding system settings with Name “SVCTERMINAL,” Subname “PSSSysInitXXX,” where XXX is a custom string appended to the Subname. For custom transactions, it is recommended that letters be used for the custom string (e.g., A - Z) to avoid conflicting with future additions to the PSS system, which will use numbers. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 117 February 1, 2000 System Administration Interface ______________________________________________________________________________ Tx ID: Class: PST105 PssDbCleanupCOM Method: PerformDBCleanup PerformDBCleanup performs a number of operations to reduce the number of rows in various database tables, thus improving system performance and eliminating obsolete or unnecessary data. Its operation is configurable based on entries in the system settings with name “PSSDBCleanup.” The configuration is read when the COM object is initialized, and since this routine typically runs only once per night, it should happen each time that PerformDBCleanup is run. Description: The first step is the cleaning of the PSS_Message_Log table. All records in the table that are older than the configured number of hours and are not required for system reporting are deleted from the table. Currently, the only message log entries used for system reporting are those with facility ‘Unit Management’ and action 'TerminalCount', 'OperationalCount', 'TerminalIssued', or 'TerminalReturned'. Actions required for reporting are kept for 13 months, which is the current limit for the system reports. Next, the PSS_POS_Status table is processed. All records with a Start_Time or Detection_Time older than the configured number of hours for each type is deleted from the table, except for the records with Item_Name ‘POSControllerName’, for which there is always only one record for each POS controller in use. Finally, the shopping trip data is processed. This includes both the current shopping list data from PSS_Shopping_List, and the historical data from both PSS_Shopping_History_List and PSS_Shopping_Incomplete_List. For current shopping lists, any shopping list data with a Time_Started older than the configured number of hours is deleted. Shopping list data includes all associated items (PSS_Shopping_Item), activities (PSS_Shopping_Activity), tax data (PSS_Shopping_Tax), marketing data (PSS_Marketing_Sent), exception items (PSS_Unknown_Item), and quick order list (PSS_Order_List) and item (PSS_Order_List_Item) data. Exception item data for which barcode was scanned, terminal used, and time of scan is kept in the PSS_Unknown_Item table, but the link to the customer shopping list is removed. Parameters: Input: none Output: rc long integer WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. indicates whether the call succeeded Page 118 February 1, 2000 System Administration Interface ______________________________________________________________________________ ReturnCode Values: PSS_SUCCESS DB_CONNECT_ERROR DB_OPEN_ERROR DB_EXECUTE_ERROR DB_FETCH_ERROR DB_NO_DATA WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 119 February 1, 2000 Specific Features ______________________________________________________________________________ 11. Specific Features 11.1 Multiple Language Support Support for multiple languages is provided for all screens displayed on the hand held terminals, all screens displayed on the entrance units, and all PSS log messages. All language sensitive text is held in the PSS_Text table in the database. The keys for each text string are a Text ID and a Language ID. Based on the key, the string in the proper language is returned. The Active Server Pages used for the System Administration screens will need to be rewritten in the store’s preferred language, if the store’s preferred language is other than English. 11.2 Pricing Methods See Appendix C. 11.3 Currency Conversions The forumla for converting currencies is as follows: Currency Y amount = (Exchange_Rate Y / Exchange_Rate X) * Currency X amount Where each Exchange_Rate value is read from the PSS_Currency table for the particular currencies in use. Exchange_Rates for all currencies should be in the same base amount, that is, a single currency should be chosen as having an exchange rate of 1, and all other currencies should be entered as values relative to that currency. For example, if US Dollars is chosen as having an Exchange_Rate of 1, Canadian Dollars may have an Exchange_Rate of 1.47. To convert 2 Canadian Dollars to US Dollars, the formula is therefore: US Dollar amount = (1 / 1.47) * 2 = 1.36 US Dollars 11.4 Control Ticket Printing The text that appears on the PSS shopping trip transaction ticket is stored in the PSS_Text table in the PSS database. The Service Terminal uses Text_IDs starting at 7000. The contents of the transaction ticket are configurable based on system settings in PSS_System_Setting with a name of “TRANSTICKET.” There is also a printing user exit, UE_PrintReceipt, which is called after the Transaction Ticket COM object creates a template print file. The template print file is sent to the Printer Service to be interpreted to literal print commands for a particular printer. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 120 February 1, 2000 Appendix A Appendix A Database Layout Diagram The following diagram represents the database layout for the WaveWorks PSS system. V1.06 version WIZARD:PSS3 PSS_Admin_Action Symbol Technologies, Inc., Confidential and i t PSS_Customer_Suspend_Reaso Action_ID: int Suspend_ID: int Description: h (60) Privilege_Level: int Disabled: char(1) Suspend_Reason: h (80) PSS_Admin_Page Page_ID: int Page_Name: h (40) Privilege_Level: int Authenticated: char(1) Disabled: char(1) Default_Parms: h (50) Parent_Menu_ID: int Parent_Page_ID: int PSS_Admin_Menu Menu_ID: int Menu_Title: h (30) Show_System_Status: char(1) Show_Title: char(1) Show_Image: char(1) Show_Status_Line: char(1) Authenticated: char(1) Disabled: char(1) Parent_Menu_ID: int Target_Page_Name: h (40) Button_Columns: int Special_Type: int Refresh_Seconds: int PSS_Currency Currency_ID: int Currency_Name: h (20) Exchange_Rate: real Num_Decimal_Digits: int Decimal_Char: char(1) Thousands_Char: h (1) Currency_Symbol: char(1) Use_Curr_Symbol: char(1) Price_Times_Factor: int Currency_Symbol2: char(1) Currency_Symbol_Web: char(1) PSS_Customer_Message Customer_ID: int Message_Nbr: int Message_Text: h (255) Start_Datetime: datetime End_Datetime: datetime PSS_Language Language_ID: int Language_Name: h (20) PSS_Text Text_ID: int Language_ID: int PSS_Admin_User Username: h (20) Full_Name: h (80) Password: h (20) Valid_Datetime: datetime Expires_Datetime: datetime Privilege_Level: int Privilege_Mask: h (255) int Login_Failures: Last_IP: varchar(16) Language_ID: int Constant_Name: (40) Text:h varchar(255) PSS_Marketing_Sent Customer_ID: int Shopping_List_ID: int Marketing_Datetime: datetime Item_ID: h (20) Dept_ID: int Mfg_ID: int PSS_Customer Customer_ID: int Card_Number: h (30) First_Name: h (40) Middle_Name: h (40) Last_Name: h (40) Address: varchar(40) Address2: varchar(40) City: varchar(40) State: varchar(40) Postal_Code: h (20) Country: h (40) Allow_Promotions: char(1) Allow_Checks: char(1) Currency_ID: int Language_ID: int Rescan_Level: int Rank: int Suspend_Reason: h (80) Card_Expiration_Datetime: datetime Num_Trips: int Num_Trips_Since_Rescan: int Last_Trip_Datetime: datetime First_Trip_Accurate: char(1) Greeting_Text: h (255) Registered_Datetime: datetime Display_Foodstamp: char(1) Special_Customer: char(1) Suspend_ID: int Num_Rescans: int Group_ID: int Num_Rescan_Diffs: int Num_Trips_Incomplete: int Total_Trip_Seconds: int First_Trip_Datetime: datetime Last_Incomplete_Datetime: datetime Total_Spent: int Last_Rescan_Datetime: datetime PSS_Marketing_Department Department_ID: int Language_ID: int Message_Text: h (255) Target_Coupon_Amt: int Target_Rank: int Start_Datetime: datetime End_Datetime: datetime PSS_Marketing_Item PSS_Opening_Message Msg_ID: int Sequence: int Language_ID: int Message: varchar(20) Start_Datetime: datetime End_Datetime: datetime Target_Rank: int WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. PSS_Marketing_Mfg Manufacturer_ID: int Language_ID: int Message_Text: h (255) Target_Coupon_Amt: int Target_Rank: int Start_Datetime: datetime End_Datetime: datetime Item_ID: h (20) int Language_ID: Message_Text: h (255) Target_Coupon_Amt: int Target_Rank: int Start_Datetime: datetime End_Datetime: datetime Page 121 February 1, 2000 Appendix A PSS_Shopping_List Customer_ID: int Shopping_List_ID: int Time_Started: datetime Time_Ended: datetime Shopping_List_Status_ID: int Total: int Total_Currency_2: int Transaction_ID: varchar(25) Rescanned: char(1) Terminal_ID: varchar(16) Scanned_Item_Count: int Trip_Length_Seconds: int PSS_Shopping_List_Status Shopping_List_Status_ID: int PSS_Shopping_Item Customer_ID: int Shopping_List_ID: int Shopping_Item_ID: int Barcode: varchar(20) Item_ID: varchar(20) Sale_Price: int Sale_Price_Currency2: int Pricing_Method: char(1) Mix_Match: int Department_ID: int Unit_Price: int Deal_Price: int Deal_Qty: int Embedded_Price: char(1) Tax_Plan: int Currency_ID: int Description: varchar(20) PSS_Session Terminal_ID: varchar(16) Customer_ID: int Shopping_List_ID: int Customer_Name: varchar(45) Status: int Initiating_Customer_ID: int Initiating_Shopping_List_ID: int PSS_Shopping_Activity Customer_ID: int Shopping_List_ID: int Activity_Nbr: int Activity_Datetime: datetime Activity_Type: varchar(10) Activity_Detail: varchar(80) PSS_Shopping_Tax Amount: int Tax_Amount: char(18) Customer_ID: int Shopping_List_ID: int Department_ID: int Order_List_ID: int Order_Status_ID: int PSS_Order_Status PSS_Order_List_Item Customer_ID: int Shopping_List_ID: int Department_ID: int Order_List_ID: int Item_ID: varchar(20) Qty: int Notes: varchar(80) Order_Status_ID: int Description: varchar(20) PSS_Department Department_ID: int Department_Name: varchar(40) Department_Type: varchar(10) Allow_Quick_Order: char(1) PSS_Manufacturer Manufacturer_ID: int Manufacturer_Name: varchar(20) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Tax_Plan_ID: int Description: varchar(40) Price_Range_Low: int Tax_Amount_Low: int Price_Range_High: int Tax_Amount_High: int First_Tax_Flag: char(1) PSS_Tax_Table_Entry Customer_ID: int Shopping_List_ID: int Tax_Plan_ID: int PSS_Order_List PSS_Tax_Table Tax_Plan_ID: int Range_Indicator: char(1) Price_Group_Start: int Tax_Amount: int PSS_Unknown_Item Item_ID: varchar(20) Terminal_ID: varchar(16) Scanned_Datetime: datetime Customer_ID: int Shopping_List_ID: int PSS_Item Item_ID: varchar(20) Description: varchar(40) Price: int Department_ID: int Class: varchar(20) Subclass: varchar(20) Manufacturer_ID: int Aisle: varchar(10) Shelf: varchar(10) Unit: varchar(10) W eight: varchar(20) Linkcode: varchar(20) Pricing_Method: char(1) Mix_Match: int Foodstamp: char(1) Flags: int Deal_Price: int Deal_Qty: int Tax_Plan: int POS_Item_Flag: char(1) Currency_ID: int Page 122 February 1, 2000 Appendix A PSS_Shopping_History_List Customer_ID: int Shopping_List_ID: int Time_Started: datetime Time_Ended: datetime Shopping_List_Status_ID: int Total: int Transaction_ID: varchar(25) Rescanned: char(1) Terminal_ID: varchar(16) Scanned_Item_Count: int Trip_Length_Seconds: int PSS_Shopping_Incomplete_List Customer_ID: int Shopping_List_ID: int Time_Started: datetime Time_Ended: datetime Shopping_List_Status_ID: int Total: int Transaction_ID: varchar(25) Rescanned: char(1) Terminal_ID: varchar(16) Scanned_Item_Count: int Trip_Length_Seconds: int PSS_Shopping_History_Item Customer_ID: int Shopping_List_ID: int Shopping_Item_ID: int Barcode: varchar(20) Item_ID: varchar(20) Sale_Price: int Pricing_Method: char(1) Mix_Match: int Department_ID: int Unit_Price: int Deal_Price: int Deal_Qty: int Embedded_Price: char(1) POS_Price: int POS_PSA_Flag: char(1) Exception: char(1) Tax_Plan: int PSS_Special_Barcode Barcode: varchar(20) Type: int Description: varchar(50) PSS_Rescan_Level Rescan_Level: int Pct: int Level_Name: varchar(20) PSS_Rescan_Difference Difference_Level: int Difference_Amt: int Level_Change_Amt: int PSS_System_Setting PSS_Shopping_History_Activity Customer_ID: int Shopping_List_ID: int Activity_Nbr: int Activity_Datetime: datetime Activity_Type: varchar(10) Activity_Detail: varchar(80) Name: varchar(20) Subname: varchar(20) Value: varchar(255) Description: varchar(255) Unit: varchar(10) Default_Value: varchar(255) Editable: char(1) PSS_Message_Log PSS_Shopping_History_Rescan Customer_ID: int Shopping_List_ID: int POS_Price: int PSS_Price: int POS_Qty: int PSS_Qty: int Msg_Datetime: datetime Msg_Facility: varchar(64) Msg_Action: varchar(64) Msg_Severity: int Msg_Message: varchar(255) Msg_Data: int PSS_POS_Status PSS_System_Message PSS_Barcode_Variable_W eight System_Message_ID: int Message_Text: varchar(255) Frequency_Type: int Month_Of_Year: int Day_Of_Month: int Day_Of_W eek: int Hour_Of_Day: int Minutes_After_Hour: int Time_Interval: int Repeat_Count: int Send_Next_At_Datetime: datetime WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Barcode_Type: int Barcode_Prefix: varchar(20) Barcode_Prefix_Length: int Item_Start: int Item_Length: int Price_Check_Start: int Price_Check_Length: int Price_Start: int Price_Length: int Price_Or_W eight: char(1) Item_Name: varchar(30) Instance_Name: varchar(100) Detection_Time: datetime Start_Time: datetime End_Time: datetime Instance_Value: varchar(20) Instance_Description: varchar(50) Instance_Data: int PSS_EOD Recvd_Datetime: datetime Description: varchar(50) Page 123 February 1, 2000 Appendix A UMS_Card_Reader_Type UMS_Entrance Reader_Type: int Entrance_ID: int Description: varchar(50) Reader_Type: int Reader_Port: varchar(8) Status_Code: int Status_Datetime: datetime Display_Type: int Display_Port: varchar(8) Default_Mode: int Current_Mode: int Backup_ID: int Hardware_ID: varchar(16) Reader_Status: int Display_Status: int Entrance_Notes: varchar(40) Description: varchar(50) Card_Sentinel: varchar(5) Card_Offset: int End_Sentinel: varchar(5) UMS_Dispenser Dispenser_ID: varchar(4) Dispenser_Name: varchar(50) Entrance_ID: int Printer_ID: int Default_Entrance: int Status_Code: int Status_Datetime: datetime Default_Printer: int Current_Mode: int UMS_Printer Printer_ID: int Description: varchar(50) Printer_Type: int Printer_Port: varchar(8) Status_Code: int Status_Datetime: datetime Backup_ID: int Current_Mode: int Hardware_ID: varchar(16) Printer_Notes: varchar(40) Paper_Remaining: int UMS_Terminal Terminal_ID: varchar(16) Cradle_ID: varchar(4) Status_Code: int Status_Datetime: datetime Battery_Level: int Battery_Datetime: int Terminal_Type: varchar(8) Good_Scans: int Bad_Scans: int Seconds_Used: int Tot_Issue_Count: int Tot_Good_Scans: int Tot_Bad_Scans: int Tot_Seconds_Used: int Timeout_Count: int Current_Interface: varchar(50) Dispenser_ID: varchar(4) Terminal_Notes: varchar(40) Battery_Status: int WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. UMS_Status_Codes Status_Code: int Status_Text: varchar(30) UMS_Cradle Cradle_ID: varchar(4) Power_ID: int Dispenser_ID: varchar(4) Status_Code: int Status_Datetime: datetime Cradle_Notes: varchar(40) Default_Interface: varchar(40) UMS_Power Power_ID: int Description: varchar(50) Status_Code: int Status_Datetime: datetime Power_Notes: varchar(40) UMS_Terminal_Types Terminal_Type: varchar(8) Terminal_Class: varchar(50) Default_Interface: varchar(40) Display_Rows: int Display_Cols: int Keypad_Type: int Page 124 February 1, 2000 Appendix B B.1 Database Tables / Physical Properties Table Name: PSS_Admin_Action Table Column Name Action_ID Description Privilege_Level Disabled Table Column Datatype int varchar(60) int char(1) Table Column Null Option NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No PSS Admin Action Table holds privilege information for various actions available through the service terminal Action_ID Description Privilege_Level Disabled B.2 unique ID associated with this Administrative Action description of this Administrative Action privilege level associated with this Administrative Action indicates whether this Administrative Action is disabled or not Table Name: PSS_Admin_Menu Table Column Name Menu_ID Menu_Title Show_System_Status Show_Title Show_Image Show_Status_Line Authenticated Disabled Parent_Menu_ID Target_Page_Name Button_Columns Special_Type Refresh_Seconds Table Column Datatype int varchar(30) char(1) char(1) char(1) char(1) char(1) char(1) int varchar(40) int int int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No No No No No No PSS Admin Menu Table holds configuration information for the service terminal menu system Menu_ID unique ID associated with this Administrative Menu entry Menu_Title title of this Administrative Menu entry Show_System_Status indicates whether the system status displays on this Administrative Menu page or not Show_Title indicates whether the menu title displays on this Administrative Menu page or not Show_Image indicates whether the PSS menu image displays on this Administrative Menu page or not Show_Status_Line indicates whether the status line (showing copyright and current time) displays on this Administrative Menu page or not Decembe Appendix B Authenticated or not Disabled Parent_Menu_ID Target_Page_Name Button_Columns Special_Type Refresh_Seconds automatically refresh B.3 indicates whether this Administrative Menu entry requires authentication indicates whether this Administrative Menu entry is disabled or not the Menu ID of the parent page to this Administrative Menu entry name of the ASP script that this Administrative Menu entry points to number of buttons across this Administrative Menu page indicates whether this page is of a special type (e.g. a login/out button) number of seconds before this Administrative Menu page should Table Name: PSS_Admin_Page Table Column Name Page_ID Page_Name Privilege_Level Authenticated Disabled Default_Parms Parent_Menu_ID Parent_Page_ID Table Column Datatype int varchar(40) int char(1) char(1) varchar(50) int int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No PSS Admin Page Table holds privilege and configuration information for the service terminal Administrative Pages Page_ID Page_Name Privilege_Level Authenticated Disabled Default_Parms Page Parent_Menu_ID Page appears Parent_Page_ID Page B.4 unique ID associated with this Administrative Page name of this Administrative Page privilege level required to access this Administrative Page indicates whether this Administrative Page is authenticated or not indicates whether this Administrative Page is disabled or not the default parameters sent in the URL when running this Administrative the Administrative Menu Page ID on which a link to this Administrative the Administrative Page ID that acts as a parent to this Administrative Table Name: PSS_Admin_User Table Column Name Username Full_Name Password Valid_Datetime Expires_Datetime Privilege_Level Table Column Datatype varchar(20) varchar(80) varchar(20) datetime datetime int WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Table Column Null Option NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No Page 126 February 1, 2000 Appendix B Privilege_Mask Login_Failures Last_IP Language_ID varchar(255) int varchar(16) int NULL NULL NULL NULL No No No No No No No Yes PSS Admin User Table holds information about Service Terminal Users Username the username this Administrative User will log in as Full_Name the full name of this Administrative User Password the password this Administrative User will use to log in Valid_Datetime the date/time this Administrative User account is active Expires_Datetime the date/time this Administrative User account is no longer active Privilege_Level the privilege level of this Administrative User Privilege_Mask the privilege mask for this Administrative User (currently unused) Login_Failures number of failures since the last successful login for this Administrative User Last_IP the last IP address from which this Administrative User last accessed their account Language_ID the language (from PSS_Language) in which this Administrative User prefers to view the service terminal B.5 Table Name: PSS_Barcode_Variable_Weight Table Column Name Barcode_Type Barcode_Prefix Barcode_Prefix_Length Item_Start Item_Length Price_Check_Start Price_Check_Length Price_Start Price_Length Price_Or_Weight Table Column Datatype int varchar(20) int int int int int int int char(1) Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK No No No No No No No No No No No No No No No No No No No No PSS Barcode Variable Weight Table holds configuration information for price or weightembedded barcodes Barcode_Type Barcode_Prefix Barcode_Prefix_Length Item_Start Item_Length Price_Check_Start Price_Check_Length Price_Start Price_Length Price_Or_Weight Type of Barcode (unknown, UPC, EAN, etc.) Sequence of digits starting the embedded barcode Length of prefix Position of start of item code Length of item code Position of price check digit Length of price check digit(s) Position of price Length of price Indicates whether barcode is Price or Weight embedded WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 127 February 1, 2000 Appendix B B.6 Table Name: PSS_Currency Table Column Name Currency_ID Currency_Name Exchange_Rate Num_Decimal_Digits Decimal_Char Thousands_Char Currency_Symbol Use_Curr_Symbol Price_Times_Factor Currency_Symbol2 Currency_Symbol_Web Table Column Datatype int varchar(20) real int char(1) char(1) char(1) char(1) int char(1) char(1) Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No No PSS Currency Table holds the supported currency types and conversion rates Currency ID Currency Name Exchange Rate Num_Decimal_Digits Decimal_Char Thousands_Char Currency_Symbol Use_Curr_Symbol Price_Times_Factor Currency_Symbol2 Currency_Symbol_Web B.7 Unique ID associated with this currency text name of currency exchange rate with base currency number of digits in the stored integer value that are decimal digits character used to delineate the decimal portion character used to delineate groups of three decimal digits currency symbol used for display on hand-held terminals indicates whether the currency symbol should be used in display amount that a stored value should be multiplied by to arrive at a displayable value currency symbol used for display on printed transaction tickets currency symbol used for display on service terminal pages Table Name: PSS_Customer Table Column Name Customer_ID Card_Number First_Name Middle_Name Last_Name Address Address2 City State Postal_Code Country Allow_Promotions Allow_Checks Table Column Datatype int varchar(30) varchar(40) varchar(40) varchar(40) varchar(40) varchar(40) varchar(40) varchar(40) varchar(20) varchar(40) char(1) char(1) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No No No No No No Page 128 February 1, 2000 Appendix B Currency_ID Language_ID Rescan_Level Rank Suspend_Reason Card_Expiration_Datetime Num_Trips Num_Trips_Since_Rescan Last_Trip_Datetime First_Trip_Accurate Greeting_Text Registered_Datetime Display_Foodstamp Special_Customer Suspend_ID Num_Rescans Group_ID Num_Rescan_Diffs Num_Trips_Incomplete Total_Trip_Seconds First_Trip_Datetime Last_Incomplete_Datetime Total_Spent Last_Rescan_Datetime int int int int varchar(80) datetime int int datetime char(1) varchar(255) datetime char(1) char(1) int int int int int int datetime datetime int datetime NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No Yes No No No No No No No No No PSS Customer Table holds all persistent data needed for a given PSS user. Customer_ID Card_Number First_Name Middle_Name Last_Name Address Address2 City State Postal_Code Country Allow_Promotions a unique identifier for a given customer number on PSS shopper loyalty card which matches this customer customer first name customer middle name customer last name customer address customer address, line 2 customer city customer state/province customer postal code customer country indicates whether this customer allows marketing message display on hand-held terminal Allow_Checks indicates whether this customer may be rescanned Currency_ID customer preferred currency (from PSS_Currency) Language_ID customer preferred language (from PSS_Language) Rescan_Level customer rescan level (from PSS_Rescan_Level) Rank customer rank (0 to 100), typically based on amount spent through PSS in last 30 days Suspend_Reason reason text for customer suspension from PSS Card_Expiration_Datetime expiration date/time of the customer’s loyalty card Num_Trips number of PSS shopping trips this customer has been on Num_Trips_Since_Rescan number of PSS shopping trips since this customer was last rescanned Last_Trip_Datetime date/time of this customer’s last PSS shopping trip First_Trip_Accurate indicates whether the customer’s first shopping trip resulted in an accurate rescan WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 129 February 1, 2000 Appendix B Greeting_Text greeting text to be displayed upon dispensing a terminal to this customer Registered_Datetime date/time that this customer was added to PSS Display_Foodstamp indicates whether this customer is shown foodstamp totals on their and-held terminal Special_Customer indicates whether this is a special type of customer (e.g. QueueBuster, Price Checker, or Express Shopping-type customer) Suspend_ID indicates whether this customer is suspended from PSS, and with which reason code (from PSS_Customer_Suspend_Reason) Num_Rescans number of rescanned PSS shopping trips for this customer Group_ID number used for grouping customers (e.g. family cards, etc.) Num_Rescan_Diffs number of rescanned PSS shopping trips with item count/amount differences for this customer Num_Trips_Incomplete number of incomplete PSS shopping trips (started, but never checked out) for this customer Total_Trip_Seconds total number of seconds this customer has spent shopping using a PSS hand-held terminal First_Trip_Datetime date/time of the first PSS shopping trip for this customer Last_Incomplete_Datetime date/time of the last incomplete PSS shopping trip for this customer Total_Spent total amount this customer has spent using PSS Last_Rescan_Datetime date/time of the last rescanned shopping trip for this customer B.8 Table Name: PSS_Customer_Message Table Column Name Customer_ID Message_Nbr Message_Text Start_Datetime End_Datetime Table Column Datatype int int varchar(255) datetime datetime Table Column Null Option NOT NULL NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No Yes No No No No PSS Customer Message Table holds messages to be displayed at the start of a shopping trip for a particular PSS customer. Customer_ID Message_Nbr Message_Text Start_Datetime End_Datetime B.9 unique identifier for this customer unique identifier for this message for this customer message text to be displayed date/time after which this message is to be displayed date/time after which this message will no longer be displayed Table Name: PSS_Customer_Suspend_Reason WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 130 February 1, 2000 Appendix B Table Column Name Suspend_ID Suspend_Reason Table Column Datatype Int Varchar(80) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS Customer Suspend Reason Table holds the Suspend ID reason codes for which a customer may be suspended from using PSS. Suspend_ID Suspend_Reason unique identifier for this suspend reason code text description of this suspend reason code B.10 Table Name: PSS_Department Table Column Name Department_ID Department_Name Department_Type Allow_Quick_Order Table Column Datatype Int Varchar(40) Varchar(10) char(1) Table Column Null Option NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No PSS Department Table contains the data describing a store’s departments Department ID Unique identifier for a department Department Name text name of department Department Type text type of department (meant to provide particular functionality for departments that require universal functionality, i.e. functionality particular to all deli’s) Allow Quick Order when set, this department shows up in the quick order department list B.11 Table Name: PSS_EOD Table Column Name Recvd_Datetime Description Table Column Datatype Datetime varchar(50) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS EOD Table contains the End-Of-Day indicators received from the POS. Recvd_Datetime Description date/time when this End-Of-Day indicator was received description of this End-Of-Day indicator WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 131 February 1, 2000 Appendix B B.12 Table Name: PSS_Item Table Column Name Item_ID Description Price Department_ID Class Subclass Manufacturer_ID Aisle Shelf Unit Weight Linkcode Pricing_Method Mix_Match Foodstamp Flags Deal_Price Deal_Qty Tax_Plan POS_Item_Flag Currency_ID Table Column Datatype varchar(20) varchar(40) Int Int varchar(20) varchar(20) Int varchar(10) varchar(10) varchar(10) varchar(20) varchar(20) char(1) Int char(1) Int Int Int int char(1) int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No PSS Item Table holds item information; source of information can be the POS item file Item ID Description Price Department ID Class Subclass Manufacturer ID Aisle Shelf Unit Weight Linkcode Pricing Method Mix Match Foodstamp Flags Deal Price Deal Quantity Tax_Plan unique item identifier text description of the item unit price of the item represented in the base store currency unique identifier for the department assigned to this item (from PSS_Department) the classification group of this item a more specific classification of an item within a class unique identifier for this item manufacturer (from PSS_Manufacturer) usual aisle in store for this item shelf location in store the unit used to measure quantities of an item (i.e. fluid ounces, pounds, etc.) the amount of the unit a barcode for an item linked to this item identifies pricing method to be used for this item when set, this item is part of an identically priced group (i.e. yogurts, canned soups) when set, indicates that this item is food stamp eligible holds information specific to the item (i.e. discontinued, applicable tax levels, etc.) The price of the deal, if any, assigned to this item quantity of this item which must be purchased to enable the deal unique identifier for the text plan under which this item falls (from PSS_Tax_Table) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 132 February 1, 2000 Appendix B POS_Item_Flag Currency_ID indicates whether this item has been processed through the POS during the current download process currency identifier for the currency in which this items price is described (from PSS_Currency) B.13 Table Name: PSS_Language Table Column Name Language_ID Language_Name Table Column Datatype Int Varchar(20) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS Language Table holds the languages supported by the system Language ID Language Name unique identifier for a language text name of language B.14 Table Name: PSS_Manufacturer Table Column Name Manufacturer_ID Manufacturer_Name Table Column Datatype int varchar(20) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS Manufacturer Table holds the manufacturers for PSS items Manufacturer ID unique identifier for a manufacturer Manufacturer Name text name of manufacturer B.15 Table Name: PSS_Marketing_Department Table Column Name Department_ID Language_ID Message_Text Target_Coupon_Amt Target_Rank Start_Datetime End_Datetime Table Column Datatype int int varchar(255) int int datetime datetime Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No Yes Yes No No No No No PSS Marketing Department Table contains the marketing messages for particular departments Department ID unique department identifier (from PSS_Department) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 133 February 1, 2000 Appendix B Language_ID Message Text Target Coupon Amt Target Rank Start_Datetime End_Datetime language that this message is in (from PSS_Language) marketing message text if the message contains a coupon offer, this is the amount of the coupon the customer rank level targeted by this message date/time after which this message is to be displayed date/time after which this message will no longer be displayed B.16 Table Name: PSS_Marketing_Item Table Column Name Item_ID Language_ID Message_Text Target_Coupon_Amt Target_Rank Start_Datetime End_Datetime Table Column Datatype varchar(20) int varchar(255) int int datetime datetime Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No Yes Yes No No No No No PSS Marketing Item Table contains the marketing messages for particular items Item ID Language_ID Message Text Target Coupon Amt Target Rank Start_Datetime End_Datetime unique item identifier (from PSS_Item) language that this message is in (from PSS_Language) marketing message text if the message contains a coupon offer, this is the amount of the coupon the customer rank level targeted by this message date/time after which this message is to be displayed date/time after which this message will no longer be displayed B.17 Table Name: PSS_Marketing_Mfg Table Column Name Manufacturer_ID Language_ID Message_Text Target_Coupon_Amt Target_Rank Start_Datetime End_Datetime Table Column Datatype Int Int Varchar(255) int int datetime datetime Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No Yes Yes No No No No No PSS Marketing Mfg Table contains the marketing messages for particular manufacturers Manufacturer ID Language_ID Message Text unique identifier for this manufacturer (from PSS_Manufacturer) language that this message is in (from PSS_Language) marketing message text WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 134 February 1, 2000 Appendix B Target Coupon Amt Target Rank Start_Datetime End_Datetime if the message contains a coupon offer, this is the amount of the coupon the customer rank level targeted by this message date/time after which this message is to be displayed date/time after which this message will no longer be displayed B.18 Table Name: PSS_Marketing_Sent Table Column Name Customer_ID Shopping_List_ID Marketing_Datetime Item_ID Dept_ID Mfg_ID Table Column Datatype Int Int Datetime Varchar(20) Int Int Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No No No No No No No PSS Marketing Sent Table contains information on which marketing messages have been sent to which customers on current shopping trips Customer ID unique identifier for this customer (from PSS_Customer) Shopping List ID identifies shopping list (from PSS_Shopping_List) Marketing_Datetimedate/time when this message was displayed to the customer Item ID unique item identifier for item messages (from PSS_Item) Department ID unique department identifier for department messages (from PSS_Department) Manufacturer ID unique identifier for this manufacturer for manufacturer messages (from PSS_Manufacturer) B.19 Table Name: PSS_Message_Log Table Column Name Msg_Datetime Msg_Facility Msg_Action Msg_Severity Msg_Message Msg_Data Table Column Datatype datetime varchar(64) varchar(64) int varchar(255) int Table Column Null Option NOT NULL NOT NULL NOT NULL NOT NULL NULL NULL Table Column Is PK Table Column Is FK No No No No No No No No No No No No PSS Message Log Table contains logging information from PSS processes Msg_Datetime Msg_Facility Msg_Action Msg_Severity Msg_Message Msg_Data date/time this message was logged the facility logging this action (e.g. POSInterfaceCOM) the action this facility was performing the severity level of this message (e.g. Informational, Fatal, etc.) the message text of this message optional integer data associated with this message WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 135 February 1, 2000 Appendix B B.20 Table Name: PSS_Opening_Message Table Column Name Msg_ID Sequence Language_ID Message Start_Datetime End_Datetime Target_Rank Table Column Datatype Int Int Int Varchar(20) Datetime Datetime Int Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No No No No Yes No No No No PSS Opening Message Table holds messages that the customer may scroll through at the start of a shopping trip Msg_ID Sequence Language_ID Message Start_Datetime End_Datetime Target_Rank unique identifier for this message sequence number for this line of this message the language this message is in (from PSS_Language) the message text for this line date/time after which this message is to be displayed date/time after which this message will no longer be displayed the customer rank level targeted by this message B.21 Table Name: PSS_Order_List Table Column Name Customer_ID Shopping_List_ID Department_ID Order_List_ID Order_Status_ID Table Datatype Int Int Int Int Int Column Table Column Null Option NOT NULL NOT NULL NOT NULL NOT NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes Yes No Yes Yes Yes No Yes PSS Order List Table contains the quick-order list information Customer ID Shopping List ID Department ID Order List ID Order Status ID identifies customer associated with this order (from PSS_Customer) identifies the customer shopping list associated with this order (from PSS_Shopping_List) the department which this order is for (from PSS_Department) unique identifier for this quick order list status of this order (from PSS_Order_Status, e.g. ready, picked up, etc.) B.22 Table Name: PSS_Order_List_Item WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 136 February 1, 2000 Appendix B Table Column Name Customer_ID Shopping_List_ID Department_ID Order_List_ID Item_ID Qty Notes Table Column Datatype int int int int varchar(20) int varchar(80) Table Column Null Option NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes Yes Yes No No Yes Yes Yes Yes Yes No No PSS Order List Item Table contains the item information in a customer order Customer ID Shopping List ID Department ID Order List ID identifies customer associated to this order item identifies shopping list associated to this order item the department which this order is for unique identifier for this quick order list (from PSS_Order_List) Item ID identifies item in the list Qty Notes quantity ordered of this item text field entered via browser screen B.23 Table Name: PSS_Order_Status Table Column Name Order_Status_ID Description Table Column Datatype int varchar(20) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS Order Status Table contains the allowable order states Order Status ID Description status identifier text message corresponding to this status B.24 Table Name: PSS_POS_Status Table Column Name Item_Name Instance_Name Detection_Time Start_Time End_Time Instance_Value Instance_Description Instance_Data Table Column Datatype varchar(30) varchar(100) datetime datetime datetime varchar(20) varchar(50) int Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No No No No No No No No No No PSS POS Status Table contains the quick-order list information Item_Name the type of entry this is (e.g. POSControllerName, PSSItemFile) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 137 February 1, 2000 Appendix B Instance_Name the particular instance of this type of entry (typically the controller or file name) Detection_Time date/time when the activity was initiated Start_Time date/time when the processing started End_Time date/time when the processing ended Instance_Value text value associated with this entry Instance_Description text description associated with this entry Instance_Data integer data associated with this entry B.25 Table Name: PSS_Rescan_Difference Table Column Name Difference_Level Difference_Amt Level_Change_Amt Table Datatype int int int Column Table Column Null Option NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No PSS Rescan Difference Table contains the difference amounts (in currency or percent) between a PSS shopping list, and the re-scanned shopping list, necessary to reduce a customer’s rescan possibility by the given number of levels. Difference Level difference level identifier Difference Amount the minimum currency amount or percentage necessary for a rescan to qualify he customer for this difference level Level Change Amt the number of rescan levels that a customer qualifying for this difference level will be reduced by, a greater number of rescan levels indicating a greater possibility of being checked on the next trip. B.26 Table Name: PSS_Rescan_Level Table Column Name Rescan_Level Pct Level_Name Table Column Datatype int int varchar(20) Table Column Null Option NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No PSS Rescan Level Table contains the rescan levels and the associated probability of being checked when qualifying for each level. Level 1 will hold the highest probability level (i.e. 1:1, or a 100% chance of rescanning on the next PSS shopping trip), with subsequent levels holding increasingly lower probabilities. Rescan_Level Pct Level_Name rescan level identifier the probability 1 in N that this customer will be rescanned on the next shopping trip. name for this rescan level WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 138 February 1, 2000 Appendix B B.27 Table Name: PSS_Session Table Column Name Terminal_ID Customer_ID Shopping_List_ID Customer_Name Status Initiating_Customer_ID Initiating_Shopping_List_ID Table Column Datatype varchar(16) int int varchar(45) int int int Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No Yes Yes No No No No PSS Session Table contains the high level PSS terminal issue information Terminal ID unique hand held terminal identifier (from UMS_Terminal) Customer ID identifies customer (from PSS_Customer) Shopping List ID identifies shopping list (from PSS_Shopping_List) Customer Name abbreviated version of the customer name for hand-held terminal display Status status of this session (used to mark queue-busting session in progress, etc.) Initiating_Customer_ID identifies the customer who started this session (used to maintain the main queue-busting customer) Initiating_Shopping_List_ID identifies the shopping list created by the customer who started this session (used to maintain the main queue-busting customer’s shopping list) B.28 Table Name: PSS_Shopping_Activity Table Column Name Customer_ID Shopping_List_ID Activity_Nbr Activity_Datetime Activity_Type Activity_Detail Table Column Datatype Int Int Int Datetime Varchar(10) Varchar(80) Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No Yes Yes No No No No PSS Shopping Activity Table contains activities that occurred on the hand-held terminal during a shopping trip, including addition/removal of items, marketing messages displayed on the terminal, etc. Customer ID Shopping List ID Activity Nbr Activity Datetime Activity Type Activity Detail identifies the customer (from PSS_Customer) identifies shopping list (from PSS_Shopping_List) a sequential number showing the order in which the events occurred the date and time of the activity the type of activity which occurred (i.e. ADDITEM, DELITEM, etc.) a description of the activity which occurred WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 139 February 1, 2000 Appendix B B.29 Table Name: PSS_Shopping_History_Activity Table Column Name Customer_ID Shopping_List_ID Activity_Nbr Activity_Datetime Activity_Type Activity_Detail Table Column Datatype Int Int Int Datetime Varchar(10) Varchar(80) Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No Yes Yes No No No No PSS Shopping History Activity Table contains activities that occurred on the hand-held terminal during a historical shopping trip, including addition/removal of items, marketing messages displayed on the terminal, etc. Customer ID Shopping List ID Activity Nbr Activity Datetime Activity Type Activity Detail identifies the customer (from PSS_Customer) identifies shopping list (from PSS_Shopping_List) a sequential number showing the order in which the events occurred the date and time of the activity the type of activity which occurred (i.e. ADDITEM, DELITEM, etc.) a description of the activity which occurred WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 140 February 1, 2000 Appendix B B.30 Table Name: PSS_Shopping_History_Item Table Column Name Customer_ID Shopping_List_ID Shopping_Item_ID Barcode Item_ID Sale_Price Pricing_Method Mix_Match Department_ID Unit_Price Deal_Price Deal_Qty Embedded_Price POS_Price POS_PSA_Flag Exception Tax_Plan Table Column Datatype int int int varchar(20) varchar(20) int char(1) int int int int int char(1) int char(1) char(1) int Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No PSS Shopping History Item Table contains the items for a given historical shopping trip Customer ID Shopping List ID Shopping Item ID Barcode Item ID Sale Price Pricing_Method Mix_Match Department_ID Unit_Price Deal_Price Deal_Qty Embedded_Price POS_Price POS_PSA_Flag Exception Tax_Plan customer whom which this shopping trip is associated (from PSS_Customer) shopping list with which this item is associated (from PSS_Shopping_List) sequential unique item identifier the actual barcode scanned before any translation occurs (i.e. for embedded price barcodes) item ID as matched against item information in PSS_Item the actual price paid for this item the pricing method used to price this item the POS mix/match category this item was included in the department ID (from PSS_Department) that this item belongs to the unit price for this item (from PSS_Item) the deal price for this item (from PSS_Item) the deal quantity for this item (from PSS_Item) indicates whether this item had an embedded price barcode the price for this item sent from the POS indicates whether this item was in the PSS shopping list (S) only, the POS shopping list (P) only, or both (B). indicates whether this was flagged as an exception item at checkout indicates the tax plan that applied to this item (from PSS_Tax_Table) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 141 February 1, 2000 Appendix B B.31 Table Name: PSS_Shopping_History_List Table Column Name Customer_ID Shopping_List_ID Time_Started Time_Ended Shopping_List_Status_ID Total Transaction_ID Rescanned Terminal_ID Scanned_Item_Count Trip_Length_Seconds Table Column Datatype int int datetime datetime int int varchar(25) char(1) varchar(16) int int Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No No No No No Yes No No No No No No No No No No PSS Shopping History List Table contains the high-level historical shopping trip information. Once shopping trips are completed, the data is moved into the historical tables. Customer ID customer with whom this shopping trip is associated (from PSS_Customer) Shopping List ID unique shopping list identifier Time Started the date and time that a shopping list was started Time Ended the date and time that a shopping list was completed Shopping List Status ID status of this shopping trip (from PSS_Shopping_List_Status) Total total amount for this trip Transaction_ID transaction identifier sent to/from the POS to help match shopping lists Rescanned indicates whether this shopping trip was rescanned Terminal_ID the terminal ID (from UMS_Terminal) of the terminal last used on this shopping trip Scanned_Item_Count number of items in this shopping list Trip_Length_Seconds number of seconds the terminal was in use for this shopping trip WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 142 February 1, 2000 Appendix B B.32 Table Name: PSS_Shopping_History_Rescan Table Column Name Customer_ID Shopping_List_ID POS_Price PSS_Price POS_Qty PSS_Qty Table Datatype int int int int int int Column Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No Yes Yes No No No No PSS Shopper History Rescan Table contains the re-scan data for a customer’s previous shopping trip. Customer ID Shopping List ID POS Price PSS Price POS Qty PSS Price customer with whom this shopping trip is associated PSS_Customer) unique shopping list identifier the re-scanned shopping list amount from the POS the original shopping list amount from PSS the number of items in the re-scanned shopping list from the POS the number of items in the original shopping list amount from PSS (from B.33 Table Name: PSS_Shopping_Incomplete_List Table Column Name Customer_ID Shopping_List_ID Time_Started Time_Ended Shopping_List_Status_ID Total Transaction_ID Rescanned Terminal_ID Scanned_Item_Count Trip_Length_Seconds Table Column Datatype int int datetime datetime int int varchar(25) char(1) varchar(16) int int Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No No No No No Yes No No No No No No No No No No PSS Shopping Incomplete List Table contains the high-level shopping trip information for incomplete shopping trips. The DB Cleanup task moves all current shopping trips that haven’t been checked out after a configurable length of time (8 hours is the default) to this table. Customer ID customer with whom this shopping trip is associated PSS_Customer) Shopping List ID unique shopping list identifier Time Started the date and time that a shopping list was started Time Ended the date and time that a shopping list was completed Shopping List Status ID status of this shopping trip (from PSS_Shopping_List_Status) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. (from Page 143 February 1, 2000 Appendix B Total Transaction_ID Rescanned Terminal_ID total amount for this trip transaction identifier sent to/from the POS to help match shopping lists indicates whether this shopping trip was rescanned the terminal ID (from UMS_Terminal) of the terminal last used on this shopping trip Scanned_Item_Count number of items in this shopping list Trip_Length_Seconds number of seconds the terminal was in use for this shopping trip WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 144 February 1, 2000 Appendix B B.34 Table Name: PSS_Shopping_Item Table Column Name Customer_ID Shopping_List_ID Shopping_Item_ID Barcode Item_ID Sale_Price Sale_Price_Currency2 Pricing_Method Mix_Match Department_ID Unit_Price Deal_Price Deal_Qty Embedded_Price Tax_Plan Currency_ID Table Column Datatype int int int varchar(20) varchar(20) int int char(1) int int int int int char(1) int int Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No PSS Shopping Item Table contains the items for a given current shopping trip Customer ID customer with whom this shopping trip is associated (from PSS_Customer) Shopping List ID shopping list with which this item is associated (from PSS_Shopping_List) Shopping Item ID sequential unique item identifier Barcode the actual barcode scanned before any translation occurs (i.e. for embedded price barcodes) Item ID item ID as matched against item information in PSS_Item Sale Price the actual price paid for this item Sale_Price_Currency2 the actual price paid for this item in the secondary currency Pricing_Method the pricing method used to price this item Mix_Match the POS mix/match category this item was included in Department_ID the department ID (from PSS_Department) that this item belongs to Unit_Price the unit price for this item (from PSS_Item) Deal_Price the deal price for this item (from PSS_Item) Deal_Qty the deal quantity for this item (from PSS_Item) Embedded_Price indicates whether this item had an embedded price barcode Tax_Plan indicates the tax plan that applied to this item (from PSS_Tax_Table) Currency_ID currency identifier (from PSS_Currency) for the currency in which Sale_Price is described WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 145 February 1, 2000 Appendix B B.35 Table Name: PSS_Shopping_List Table Column Name Customer_ID Shopping_List_ID Time_Started Time_Ended Shopping_List_Status_ID Total Total_Currency_2 Transaction_ID Rescanned Terminal_ID Scanned_Item_Count Trip_Length_Seconds Table Column Datatype int int datetime datetime int int int varchar(25) char(1) varchar(16) int int Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No No No No No No Yes No No No Yes No No No No No No No PSS Shopping List Table contains the high level shopping trip information Customer ID Shopping List ID Time Started Time Ended Shopping List Status ID Total Transaction_ID Rescanned Terminal_ID Scanned_Item_Count Trip_Length_Seconds customer with whom this shopping trip is associated (from PSS_Customer) unique shopping list identifier the date and time that this shopping list was started the date and time that this shopping list was completed status of this shopping trip (from PSS_Shopping_List_Status) total amount for this trip transaction identifier sent to/from the POS to help match shopping lists indicates whether this shopping trip was rescanned terminal ID (from UMS_Terminal) of the terminal last used on this shopping trip number of items in this shopping list number of seconds the terminal was in use for this shopping trip B.36 Table Name: PSS_Shopping_List_Status Table Column Name Shopping_List_Status_ID Description Table Column Datatype int varchar(20) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No PSS Shopping List Status Table identifies the allowable shopping list states Shopping List Status ID Description unique status identifier text describing this state WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 146 February 1, 2000 Appendix B B.37 Table Name: PSS_Shopping_Tax Table Column Name Customer_ID Shopping_List_ID Tax_Plan_ID Amount Tax_Amount Table Datatype int int int int char(18) Column Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No Yes Yes Yes No No PSS Shopping Tax Table contains the tax amounts by plan for items from a particular shopping list Customer ID Shopping List ID Tax_Plan_ID Amount Tax_Amount customer with whom this shopping list is associated (from PSS_Customer) shopping list with which this item is associated (from PSS_Shopping_List) tax table ID as referenced in item records (from PSS_Tax_Table) taxable amount in base currency amount of tax in base currency (currently unused) B.38 Table Name: PSS_Special_Barcode Table Column Name Barcode Type Description Table Column Datatype Varchar(20) Int Varchar(50) Table Column Null Option NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No PSS_Special_Barcode Table contains configuration information for barcodes with special meanings, such as an End-Of-Trip barcode, or Queue Buster barcodes. Barcode Type Description the special barcode as returned from the scanner the type of barcode (quick order weight = 10, end-of-trip = 11, swap scanner = 12, queue buster = 13) a text description of this barcode WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 147 February 1, 2000 Appendix B B.39 Table Name: PSS_System_Message Table Column Name System_Message_ID Message_Text Frequency_Type Month_Of_Year Day_Of_Month Day_Of_Week Hour_Of_Day Minutes_After_Hour Time_Interval Repeat_Count Send_Next_At_Datetime Table Column Datatype int varchar(255) int int int int int int int int datetime Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No No PSS_System_Message Table contains configuration information for barcodes with special meanings, such as an End-Of-Trip barcode, or Queue Buster barcodes. System_Message_ID Message_Text Frequency_Type Month_Of_Year Day_Of_Month Day_Of_Week Hour_Of_Day Minutes_After_Hour Time_Interval Repeat_Count Send_Next_At_Datetime unique identifier for this system message the text of this message type of send frequency (annual = 1, monthly = 2, weekly = 3, daily = 4, hourly = 5, interval = 6) month of the year when message should be sent (1-12) day of the month when message should be sent (1-31) day of the week when message should be sent (1-7) hour of the day when message should be sent (0-23) month of the year when message should be sent (1-12) time interval (in minutes) between which the message should be sent number of times to repeat the message send over a time interval date/time when this message will be sent next (set by PssSystemMessageCOM) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 148 February 1, 2000 Appendix B B.40 Table Name: PSS_System_Setting Table Column Name Name Subname Value Description Unit Default_Value Editable Table Column Datatype Varchar(20) Varchar(20) Varchar(255) varchar(255) varchar(10) varchar(255) char(1) Table Column Null Option NOT NULL NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No No No No No No No No No No PSS System Setting Table contains system-wide configuration settings Name Subname Value Description Unit Default_Value Editable the configuration option name the component name within the given configuration option name the data associated with this configuration setting the description of this system setting the unit of measure for this system setting the default Value for this system setting indicates whether this system setting is editable from the System Setting web page B.41 Table Name: PSS_Tax_Table Table Column Name Tax_Plan_ID Description Price_Range_Low Tax_Amount_Low Price_Range_High Tax_Amount_High First_Tax_Flag Table Column Datatype int varchar(40) int int int int char(1) Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No PSS Tax Table Table contains the definitions of the possible tax plans for this location TaxPlan Description PriceRangeLow TaxAmountLow PriceRangeHigh TaxAmountHigh First_Tax_Flag Taxtable ID as referenced in item records Identifies type of tax (State, Federal , Excise, …) Transaction price below which the Low Tax table is used Tax cost for a transaction with price equal to PriceRangeLow Price range that corresponds to TaxAmountHigh. Transaction price is divided by this amount to determine the number of TaxAmountHigh increments to charge. Any remainder is computed by lookup in the High Tax Table for the Tax Plan. Tax cost for each PriceRangeHigh increment. indicates whether tax is collected on the first tax range. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 149 February 1, 2000 Appendix B B.42 Table Name: PSS_Tax_Table_Entry Table Column Name Tax_Plan_ID Range_Indicator Price_Group_Start Tax_Amount Table Datatype Int char(1) int int Column Table Column Null Option NOT NULL NOT NULL NOT NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No Yes No No No PSS Tax Table Entries Table contains the definitions of the tax ranges for each tax plan Tax Plan Range Indicator Price Group Start Tax Amount Tax table ID as referenced in item records “H” or “L” indicates whether this is an entry in the Low tax table or is an entry in the High tax table Threshold price for identifying a transaction with this tax group Tax cost for a transaction in this tax group B.43 Table Name: PSS_Text Table Column Name Text_ID Language_ID Constant_Name Text Table Column Datatype int int varchar(40) varchar(255) Table Column Null Option NOT NULL NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes No No No Yes No No PSS_Text Table contains text strings displayed throughout the system in various languages Text_ID Language_ID Constant_Name Text unique identifier for this text entry language ID (from PSS_Language) that this version of this text entry is in a C++-style identifier for this text entry the text for this text entry in this language B.44 Table Name: PSS_Unknown_Item Table Column Name Item_ID Terminal_ID Scanned_Datetime Customer_ID Shopping_List_ID Table Column Datatype varchar(20) varchar(16) datetime int int WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Table Column Null Option NOT NULL NOT NULL NOT NULL NULL NULL Table Column Is PK Table Column Is FK Yes Yes Yes No No No No No No No Page 150 February 1, 2000 Appendix B PSS_Unknown_Item Table contains items scanned during shopping trips for which no matching item could be found in PSS_Item Item_ID Terminal_ID Scanned_Datetime Customer_ID Shopping_List_ID the barcode as returned by the scanner the Terminal ID (from UMS_Terminal) that scanned this item date/time that this item was scanned the customer ID (from PSS_Customer) that scanned this item the shopping list ID (from PSS_Shopping_List) of the list that this item was to be added to B.45 Table Name: UMS_Card_Reader_Type Table Column Name Reader_Type Description Card_Sentinel Card_Offset End_Sentinel Table Column Datatype Int Varchar(50) varchar(5) int varchar(5) Table Column Null Option NOT NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No UMS_Card_Reader_Type Table contains definitions of the various types of card reading hardware used by the system Reader_Type Description Card_Sentinel Card_Offset End_Sentinel a unique identifier for the type of card reader hardware for this entry the description of this card reader the sentinel character(s) that mark the start of the card number the number of characters after the first character of the start sentinel before the card number begins the sentinel character(s) that mark the end of the card number WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 151 February 1, 2000 Appendix B B.46 Table Name: UMS_Cradle Table Column Name Cradle_ID Power_ID Dispenser_ID Status_Code Status_Datetime Cradle_Notes Default_Interface Table Column Datatype varchar(4) int varchar(4) int datetime varchar(40) varchar(40) Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No Yes Yes Yes No No No UMS_Cradle Table contains definitions of the configured cradles, or charging slots, for the terminals used by the system Cradle_ID Power_ID Dispenser_ID Status_Code Status_Datetime Cradle_Notes Default_Interface the unique identifier scanned by a terminal placed into this cradle the power supply ID (from UMS_Power) from which this cradle gets its power the dispenser ID (from UMS_Dispenser) that this cradle is associated with the status code (from UMS_Status_Codes) for the current state of this cradle the date/time of the last status update for this cradle text associated with this cradle (typically for reason marked out of service) the default interface for the terminals dispensed from this cradle B.47 Table Name: UMS_Dispenser Table Column Name Dispenser_ID Dispenser_Name Entrance_ID Printer_ID Default_Entrance Status_Code Status_Datetime Default_Printer Current_Mode Table Column Datatype varchar(4) varchar(50) int int int int datetime int int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No Yes Yes No Yes No No No UMS_Dispenser Table contains definitions of the dispensers, or logical grouping of cradles, used by the system Dispenser_ID Dispenser_Name Entrance_ID Printer_ID a unique identifier for this dispenser a text description of this dispenser the entrance unit ID (from UMS_Entrance) associated with this dispenser the printer ID (from UMS_Printer) associated with this dispenser WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 152 February 1, 2000 Appendix B Default_Entrance Status_Code Status_Datetime Default_Printer Current_Mode the default entrance unit ID (from UMS_Entrance) for this dispenser, in case the entrance unit in use must be changed the status code (from UMS_Status_Codes) for the current state of this dispenser the date/time of the last status update for this dispenser the default printer ID (from UMS_Printer) for this dispenser, in case the printer in use must be changed indicates whether this dispenser is in Key-Controlled Unlock mode or not B.48 Table Name: UMS_Entrance Table Column Name Entrance_ID Description Reader_Type Reader_Port Status_Code Status_Datetime Display_Type Display_Port Default_Mode Current_Mode Backup_ID Hardware_ID Reader_Status Display_Status Entrance_Notes Table Column Datatype int varchar(50) int varchar(8) int datetime int varchar(8) int int int varchar(16) int int varchar(40) Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No UMS_Entrance Table contains definitions of the configured entrance units used by the system Entrance_ID Description Reader_Type Reader_Port Status_Code Status_Datetime Display_Type Display_Port Default_Mode Current_Mode Backup_ID unique identifier for this entrance unit description of this entrance unit the type of card reader (from UMS_Card_Reader_Type) used by this entrance unit the communications port (typically COMx port) used to communicate with the non-RF card reader the status code (from UMS_Status_Codes) for the current state of this entrance unit the date/time of the last status update for this entrance unit the type of display used by this entrance unit the communications port (typically COMx port) used to communicate with the non-RF display the default status message displayed by this entrance unit (swipe card, no terminals available, etc.) the current status message displayed by this entrance unit (swipe card, no terminals available, etc.) the entrance unit ID (from UMS_Entrance) to act as a backup if this entrance unit is out of order WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 153 February 1, 2000 Appendix B Hardware_ID Reader_Status Display_Status Entrance_Notes the hardware ID for this entrance unit (either the name of the PssEntranceXX service which controls this non-RF entrance unit, or the MAC address for RF entrance units) the status code (from UMS_Status_Codes) for the card reader associated with this entrance unit the status code (from UMS_Status_Codes) for the display associated with this entrance unit text associated with this entrance unit (typically for reason out of service) B.49 Table Name: UMS_Power Table Column Name Power_ID Description Status_Code Status_Datetime Power_Notes Table Column Datatype int varchar(50) int datetime varchar(40) Table Column Null Option NOT NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No Yes No No UMS_Power Table contains definitions of the configured power supplies used by the system Power_ID Description Status_Code Status_Datetime Power_Notes unique identifier for this power supply description of this power supply the status code (from UMS_Status_Codes) for the current state of this power supply the date/time of the last status update for this power supply text associated with this power supply (typically for reason out of service) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 154 February 1, 2000 Appendix B B.50 Table Name: UMS_Printer Table Column Name Printer_ID Description Printer_Type Printer_Port Status_Code Status_Datetime Backup_ID Current_Mode Hardware_ID Printer_Notes Paper_Remaining Table Column Datatype int varchar(50) int varchar(8) int datetime int int varchar(16) varchar(40) int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No Yes No No No No No No UMS_Printer Table contains definitions of the configured printers used by the system Printer_ID Description Printer_Type Printer_Port Status_Code Status_Datetime Backup_ID Current_Mode Hardware_ID Printer_Notes Paper_Remaining unique identifier for this printer description of this printer the type of printer the communications port (typically COMx port) used to communicate with the printer the status code (from UMS_Status_Codes) for the current state of this printer the date/time of the last status update for this printer the printer ID (from UMS_Printer) for the printer to be used as a backup for this printer the current mode of this printer (currently unused) the name of the printer service (PssPrinterXX) which controls this printer text associated with this printer (typically for reason out of service) a number associated with the remaining paper in this printer (currently unused) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 155 February 1, 2000 Appendix B B.51 Table Name: UMS_Status_Codes Table Column Name Status_Code Status_Text Table Column Datatype int varchar(30) Table Column Null Option NOT NULL NULL Table Column Is PK Table Column Is FK Yes No No No UMS_Status_Codes Table contains definitions of the hardware status codes used throughout the system Status_Code Status_Text unique identifier for this status code text description of this status code B.52 Table Name: UMS_Terminal Table Column Name Terminal_ID Cradle_ID Status_Code Status_Datetime Battery_Level Battery_Datetime Terminal_Type Good_Scans Bad_Scans Seconds_Used Tot_Issue_Count Tot_Good_Scans Tot_Bad_Scans Tot_Seconds_Used Timeout_Count Current_Interface Dispenser_ID Terminal_Notes Battery_Status Table Column Datatype varchar(16) varchar(4) int datetime int int varchar(8) int int int int int int int int varchar(50) varchar(4) varchar(40) int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No UMS_Terminal Table contains definitions of the configured hand-held terminals used by the system Terminal_ID Cradle_ID Status_Code Status_Datetime Battery_Level Battery_Datetime Terminal_Type Good_Scans unique identifier for this terminal (the MAC address of its network card) the cradle ID (from UMS_Cradle) for the current location of this terminal the status code (from UMS_Status_Codes) for the current state of this terminal the date/time of the last status update for this terminal a number corresponding to the amount of battery life remaining for this terminal the date/time of the last battery level update for this terminal the type of terminal (from UMS_Terminal_Types) the number of good scans for this terminal from the last issue WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 156 February 1, 2000 Appendix B Bad_Scans Seconds_Used Tot_Issue_Count the number of bad scans for this terminal from the last issue the number of seconds this terminal was used from the last issue the total number of times this terminal was issued (since last statistics reset) Tot_Good_Scans the total number of good scans for this terminal (since last statistics reset) Tot_Bad_Scans the total number of bad scans for this terminal (since last statistics reset) Tot_Seconds_Used the total number of seconds this terminal was used (since last statistics reset) Timeout_Count the total number of issue timeouts for this terminal (since last issue or last statistics reset) Dispenser_ID the dispenser ID (from UMS_Dispenser) for the dispenser this terminal is currently in Terminal_Notes text associated with this terminal (typically for reason out of service) Battery_Status indicates whether the terminal is currently on battery or AC power Current_Interface the current interface this terminal is running B.53 Table Name: UMS_Terminal_Types Table Column Name Terminal_Type Terminal_Class Default_Interface Display_Rows Display_Cols Keypad_Type Table Column Datatype varchar(8) varchar(50) varchar(40) int int int Table Column Null Option NOT NULL NULL NULL NULL NULL NULL Table Column Is PK Table Column Is FK Yes No No No No No No No No No No No UMS_Terminal_Types Table contains definitions of the types of hand-held terminals used by the system Terminal_Type Terminal_Class Default_Interface Display_Rows Display_Cols Keypad_Type unique identifier for this type of terminal a text description for this type of terminal the default interface run by this type of terminal the number of rows available on the display of this type of terminal the number of columns available on the display of this type of terminal the keypad type, or number of keys, available on this type of terminal WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 157 February 1, 2000 Appendix D POS Interface File Descriptions Appendix C Overview Price Calculation Algorithms This appendix describes how price calculations are performed. A price is calculated for every item scanned during a shopping trip. Each item has an associated pricing method. The following item characteristics are used to determine how to calculate its price. • Pricing methodThe pricing method helps to determine the equation used to calculate the price of an item. • Mix and match numberThe mix and match number is used to indicate whether or not an item can be part of a pricing deal that includes other items. • DepartmentThe department helps to determine which mix and match pricing deal to apply to an item. The following item characteristics are used as inputs to price calculation equations. C.1 • Deal quantity / Deal weightA deal quantity must never be negative. A deal quantity of zero is treated as a one. • Deal priceThe meaning of the deal price associated with an item depends on the pricing method associated with that item. A deal price is always equal to or greater than zero. • Unit priceThe unit price helps to determine which mix and match pricing deal to apply to an item. The unit price is always equal to or greater than zero. Pricing Methods The following pricing methods are used by the PSS system: • Split Package Pricing • Unit Pricing • Base Plus One Pricing • Group Threshold Pricing • Group Adjusted Pricing • Unit Adjusted Pricing Below is a description of each of the pricing methods used on the PSS system. Included in each description is an example calculation. All pricing methods described as a group pricing method require a price rounding method. All calculated prices in the examples are always rounded up. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 158 February 1, 2000 Appendix D C.2 POS Interface File Descriptions Overview Split Package Pricing The Split Package Pricing Method is a group pricing method based on a deal price and a deal quantity or a deal weight. The price of an item is calculated using one of the following equations: ( Purchase Quantity * Deal Price ) Item Price = ------------------------------------Deal Quantity OR ( Purchase Weight * Deal Price ) Item Price = ---------------------------------Deal Weight Split Package Pricing Example An item costs $1.00 for a quantity of 5. The customer purchases a quantity of 3 of the item. Item Price = ( 3 * 1.00 )/5 = $0.60 A weight-based item costs $5.00 for a weight of 2 lbs. The customer purchases 3 lbs. of the item. Item Price = ( 3 C.3 5.00 )/2 = $7.50 Unit Pricing The Unit Pricing Method is a simplified version of the Split Package Pricing Method. The price used in the equation is the unit price instead of the deal price and the deal quantity / deal weight is equal to 1 or 0. The price of an item is calculated using one of the following equations: Item Price = Purchase Quantity Unit Price OR WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 159 February 1, 2000 Appendix D POS Interface File Descriptions Item Price = Purchase Weight WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Overview Unit Price Page 160 February 1, 2000 Appendix D POS Interface File Descriptions Overview Unit Pricing Example An item costs $0.49 for a quantity of 1. The customer purchases a quantity of 3 of the item. Item Price = 3 * $0.49 = $1.47 A weighted item costs $1.29 for a weight of 1 lb. The customer purchases 3 lbs. of the item. Item Price = C.4 3 * $1.29 = $3.87 Base Plus One Pricing The Base Plus One Pricing Method is a group pricing method based on a deal price and a deal quantity. This pricing method accumulates previously sold items of the same type or group. Every time an item needs to be included in the group the total price is recalculated for the new purchase quantity. The price of the added item is adjusted to reflect the new total for the group. The price of the added item is calculated using the following equations. (Purchase Quantity * Deal Price) New Total Price = -------------------------------Deal Quantity Item Price = New Total Price – Previous Total Price Base Plus One Pricing Example Items of the same type or group are sold at five for $0.47. The items are added at different times during the shopping trip. Item Number 1 added to shopping list. New Total Price = ( 1 * $0.47 )/5 = $0.10 Item Price = $0.10 – $0.00 = $0.10 Item Number 2 added to shopping list. New Total Price = ( 2 * $0.47 )/5 = $0.19 Item Price = $0.19 – $0.10 = $0.09 Item Number 3 added to shopping list. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 161 February 1, 2000 Appendix D POS Interface File Descriptions Overview New Total Price = ( 3 * $0.47 )/5 = $0.29 Item Price = $0.29 – $0.19 = $0.10 Item Number 4 added to shopping list. New Total Price = ( 4 * $0.47 )/5 = $0.38 Item Price = $0.38 – $0.29 = $0.09 Item Number 5 added to shopping list. New Total Price = ( 5 * $0.47 )/5 = $0.47 Item Price = $0.47 – $0.38 = $0.09 Item Number 6 added to shopping list. New Total Price = ( 6 * $0.47 )/5 = $0.57 Item Price = $0.57 – $0.47 = $0.10 C.5 Group Threshold Pricing The Group Threshold Pricing Method is a group pricing method based on a unit price, a deal price, and a deal quantity. This pricing method accumulates previously sold items of the same type or group. The unit price is applied to items added to a group until its deal quantity is reached. When the deal quantity is reached the total price is calculated using the deal price and the deal quantity. The price of the threshold item is adjusted to reflect the total price for the group. Adding additional items to the group begins a new deal. The prices of the items sold before reaching the deal quantity are calculated using the following equations: Item Price = Unit Price Purchase Quantity Total Price = ------------------ * Deal Price + Deal Quantity ((Purchase Quantity % Deal Quantity) * Unit Price) The price of the threshold item is calculated using the following equations: (Purchase Quantity * Deal Price) Total Price = -------------------------------- WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 162 February 1, 2000 Appendix D POS Interface File Descriptions Overview Deal Quantity Item Price = Total Price – Previous Total Price WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 163 February 1, 2000 Appendix D POS Interface File Descriptions Overview Group Threshold Pricing Example Items of the same type or group are sold at five for $0.47. The unit price of the items in the group is $0.10. The items are added at different times during the shopping trip. Item Number 1 added to shopping list. Item Price = $0.10 Total Price = ((1/5) * 0.47) + ((1 % 5) * $0.10) = $0.10 Item Number 2 added to shopping list. Item Price = $0.10 Total Price = ((2/5) * 0.47) + ((2 % 5) * $0.10) = $0.20 Item Number 3 added to shopping list. Item Price = $0.10 Total Price = ((3/5) * 0.47) + ((3 % 5) * $0.10) = $0.30 Item Number 4 added to shopping list. Item Price = $0.10 Total Price = ((4/5) * 0.47) + ((4 % 5) * $0.10) = $0.40 Item Number 5 added to shopping list. Total Price = ( 5 * $0.47 )/5 = $0.47 Item Price = $0.47 – $0.40 = $0.07 Item Number 6 added to shopping list. Item Price = $0.10 Total Price = ((6/5) * 0.47) + ((6 % 5) * $0.10) = $0.57 Item Number 7 added to shopping list. Item Price = $0.10 Total Price = ((7/5) * 0.47) + ((7 % 5) * $0.10) = $0.67 Item Number 8 added to shopping list. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 164 February 1, 2000 Appendix D POS Interface File Descriptions Overview Item Price = $0.10 ( Unit Price ) Total Price = ((8/5) * 0.47) + ((8 % 5) * $0.10) = $0.77 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 165 February 1, 2000 Appendix D POS Interface File Descriptions Overview Item Number 9 added to shopping list. Item Price = $0.10 ( Unit Price ) Total Price = ((9/5) * 0.47) + ((9 % 5) * $0.10) = $0.87 Item Number 10 added to shopping list. Total Price = ( 10 * $0.47 )/5 = $0.94 Item Price = $0.94 – $0.87 = $0.07 C.6 Group Adjusted Pricing The Group Adjusted Pricing Method is a group pricing method based on a unit price, a deal price and a deal quantity. This pricing method accumulates previously sold items of the same type or group. The deal price for this pricing method is often referred to as the reduced price. The deal price is treated as an item price rather than a package price. The unit price is applied to items in a group until the deal quantity is reached. The price of the threshold item is calculated to bring the total group cost equal to the number of items sold at the deal price. All items added to the group after the threshold item are sold at the deal price. The prices of the items sold before the threshold item are calculated using the following equations: Item Price = Unit Price Total Price = Purchase Quantity * Unit Price The price of the threshold item is calculated using the following equations: Total Price = Purchase Quantity * Deal Price Item Price = Total Price – Previous Deal Price The prices of all items added after the threshold item are calculated using the following equations: Item Price = Deal Price Total Price = Purchase Quantity * Deal Price WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 166 February 1, 2000 Appendix D POS Interface File Descriptions Overview Group Adjusted Threshold Pricing Example Items of the same type or group are sold at a unit price of $0.10. A special price of $0.08 is activated when 3 items are purchased. Item Number 1 added to shopping list. Item Price = $0.10 Total Price = 1 * $0.10 = $0.10 Item Number 2 added to shopping list. Item Price = $0.10 Total Price = 2 * $0.10 = $0.20 Item Number 3 added to shopping list. Total Price = 3 * $0.08 = $0.24 Item Price = $0.24 - $0.20 = $0.04 Item Number 4 added to shopping list. Item Price = $0.08 Total Price = 4 * $0.08 = $0.32 Item Number 5 added to shopping list. Item Price = $0.08 Total Price = 5 * $0.08 = $0.40 C.7 Unit Adjusted Pricing The Unit Adjusted Pricing Method is a group pricing method based on a unit price, a deal price and a deal quantity. This pricing method accumulates previously sold items of the same type or group. The deal price for this pricing method is often referred to as the reduced price. The deal price is treated as an item price rather than a package price. This pricing method can be used to control the distribution of free merchandise. The deal price is applied to items in a group until the deal quantity is exceeded. All items added to the group after the threshold item are sold at the unit price. The prices of the items sold before the deal quantity is exceeded are calculated using the following equations: Item Price = Deal Price WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 167 February 1, 2000 Appendix D POS Interface File Descriptions Overview Total Price = Purchase Quantity * Deal Price The prices of all items added after the threshold item are calculated using the following equations: Item Price = Unit Price Total Price = ( Deal Quantity * Deal Price ) + ( ( Purchase Quantity – Deal Quantity ) * Unit Price ) Unit Adjusted Threshold Pricing Example 1 Items of the same type or group are sold at a unit price of $0.25. The items are on special for $0.20 with a limit of 3 per customer. Item Number 1 added to shopping list. Item Price = $0.20 Total Price = 1 * $0.20 = $0.20 Item Number 2 added to shopping list. Item Price = $0.20 Total Price = 2 * $0.20 = $0.40 Item Number 3 added to shopping list. Item Price = $0.20 Total Price = 3 * $0.20 = $0.60 Item Number 4 added to shopping list. Item Price = $0.25 Total Price = ( 3 * $0.20 ) + ( ( 4 – 3 ) * $0.25 ) = $0.85 Item Number 5 added to shopping list. Item Price = $0.25 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 168 February 1, 2000 Appendix D POS Interface File Descriptions Overview Unit Adjusted Threshold Pricing Example 2 Items of the same type or group are sold at a unit price of $0.20. One item of the group per shopping trip is free. Item Number 1 added to shopping list. Item Price = $0.00 Total Price = 1 * $0.00 = $0.00 Item Number 2 added to shopping list. Item Price = $0.20 Total Price = ( 1 * $0.00 ) + ( ( 2 – 1 ) * $0.20 ) = $0.20 Item Number 3 added to shopping list. Item Price = $0.20 Total Price = ( 1 * $0.00 ) + ( ( 3 – 1 ) * $0.20 ) = $0.40 C.8 Mix and Match Groupings Mix and match is the name for the technique that lets a customer purchase items within the same group or pricing deal while mixing items but matching the unit price. Each item eligible for a mix and match pricing deal will have the same group number in the item record of each item in the group. Mixed items in a pricing deal must have the same unit price and the same department. C.9 Pricing Method Application Rules The following application rules apply to the pricing methods. • All weight items use either the Unit Pricing Method or the Split Package Pricing Method. • All items with price embedded barcodes use the Unit Pricing Method. The embedded price becomes the unit price and the purchase quantity is treated as a one. • If an item is assigned to use the Base Plus One Pricing Method but its deal price is evenly divisible by its deal quantity, its price is calculated using the Split Package Pricing Method. • If an item is assigned to use the Group Threshold Pricing Method and its deal quantity is 1, its price is calculated using the Unit Pricing Method. • Only the Group Adjusted Pricing Method and the Unit Adjusted Pricing Method allow an item to be given away using a deal price of zero and a deal quantity of one. • Mix and match groupings can be used in the Unit Pricing Method, the Base Plus One Pricing Method, the Group Threshold Pricing Method, the Group Adjusted Pricing Method, and the Unit Adjusted Pricing Method. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 169 February 1, 2000 Appendix D POS Interface File Descriptions Overview C.10 Rounding Methods The following rounding methods are used on the PSS system: Rounding Method 1 Prices are rounded up. Any decimal past the units position increases the units position by 1. ( 1 * $1.00 ) -------------- = $0.33333 Rounds up to $0.34 Rounding Method 2 Prices are rounded down. Any decimal past the units position is discarded. ( 1 * $1.00 ) -------------- = $0.33333 Rounds down to $0.33 Rounding Method 3 Prices are rounded up and down. Any decimal past the units position is rounded down for decimals one through four and rounded up for decimals five through nine. ( 1 * $1.00 ) -------------- = $0.33333 Rounds down to $0.33 ( 2 * $1.00 ) -------------- = $0.66666 Rounds up to $0.67 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 170 February 1, 2000 Appendix D POS Interface File Descriptions Overview Appendix D POS Interface File Descriptions Information is exchanged between the PSS system and the POS system using ASCII flat files copied between the systems. The files are exchanged in a directory configured in the PSS System Settings. It defaults to the C:\PSS\TRANSFER subdirectory. This section contains detailed information regarding the contents of these files. Each of these files contains multiple record types. The record type identifier is a two byte ASCII numeric value which is the first two bytes of the record. The file formats match those of the PSA version 5 release with some minor modifications. Record Type range “01”, “02” “03” - “06” “08” “09” NA Associated POS Interface file PssTransaction File POSTransaction File Item Record File Customer Information File TaxTable File WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 171 February 1, 2000 Appendix D POS Interface File Descriptions PSS Transaction File D.1 PSS Transaction File Filename File directory path specified in PSS System Settings. The file name defaults to SCxxyyyy.IN, where ‘xx’ is the day of the month of this transaction as specified in the transaction barcode on the dispenser ticket and ‘yyyy’ is the four character transaction number stored in the transaction barcode on the dispenser ticket (see transaction ticket barcode description in this integration guide for details of format). PSS system Contains the list of items scanned by the PSS shopper during a selfscan shopping trip ASCII Sequential Fixed for each record type (length depends on expansion area configuration) Variable Source: Description Type Record Length Number of Records This file consists of a transaction information and item information. The Standard Transaction Information has details of the customer number, the selfscan transaction ‘barcode’, the number of items in the selfscan transaction and whether the POS operator is to check (re-scan) the items. After the Transaction record are the item records. Each item record represents one article from the customer selfscan transaction and includes the item code, price and a number of implementation specific ‘flags’. The file is in ASCII format with each record being terminated by a carriage return/line feed delimiting character pair. Transaction Information (Header record) Field Name Record Type Customer Number Transaction ‘Barcode’ Date & Time Number Of Items Check Indicator PSS Expansion Area User Expansion Area Record Terminator Start Offset Length 20 Standard SCAN IN transaction information = 01 Customer Loyalty Card Number (right justified, zero filled on left) 22 24 46 14 60 64 66 This field is used to link the self scan transaction receipt barcode to the self scan transaction. (right justified, zero filled on left) Date and time of self scan transaction in format DDMMYYYYHHMMSS. The number of articles in the self scan transaction (right justified, zero filled on left). Flag to indicate if the POS operator is to check (re-scan) the selfscan transaction items. “N” = Don’t check (Quick Pay) “Y” = Check (RESCAN) “S” = Pre-scan (Queue Buster) This area is reserved for future expansion by the PSS system. Its size is configurable and defaults to zero length. This area is used for customized implementations of PSS. Its size is configurable and defaults to zero length. Carriage Return/Linefeed (0x0D, 0x0A) WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Comments Page 172 February 1, 2000 Appendix D POS Interface File Descriptions PSS Transaction File Item Information Field Name Length Comments Record Type Item Number Start Offset 24 Item Price Flags 26 36 10 41 ‘Standard’ SCAN IN item record type = 02 Item barcode number right justified, zero filled on left (only last 13 digits are currently used). Item price in units (max 9,999,999,999) (right justified, zero filled on left) Implementation specific flags. Defaults as follows: ‘X1 X2 X3 X4 X5‘ X1 unused X2 0=Price in Store Currency, 1=Price in Euros X3 0=Normal item, 1=reduced to clear (RTC) item X4 unused X5 unused This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. Carriage Return/Linefeed (0x0D, 0x0A) PSS Expansion Area User Expansion Area Record Terminator WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 173 February 1, 2000 Appendix D POS Interface File Descriptions POS Transaction File D.2 POS Transaction File Filename File directory path specified in PSS System Settings. The file name defaults to SCxxyyyy.OUT, where ‘xx’ is the day of the month of this transaction as specified in the transaction barcode on the dispenser ticket and ‘yyyy’ is the four character POS transaction number. POS system Contains the list of items processed at the POS terminal by the cashier during the checkout process. ASCII Sequential Fixed for each record type (length depends on expansion area configuration Variable, one header record, plus one record for each item purchased. Source: Description Type Record Length Number of Records This file consists of a transaction information and item information. The Header Record has details of the customer number, the selfscan transaction ‘barcode’, the number of items in the selfscan transaction and whether the POS operator re-scanned the items. Following the header record are the item records. Each item record represents one article processed at the POS and includes the item code, price and a number of implementation specific ‘flags’. The file is in ASCII format with each record being terminated by a carriage return/line feed delimiting character pair. Transaction Information (Header record) Field Name Start Offset Length 20 ‘Standard’ SCAN OUT transaction information = 03 Customer Loyalty Card Number (right justified, zero filled on left) 22 24 Date & Time 46 14 Number Of Items Check Indicator 60 64 This field is used to link the self scan transaction receipt barcode to the self scan transaction. Note that this field may used for other purposes in specific system implementation (right justified, zero filled on left) Date and time of POS rescan transaction in format DDMMYYYYHHMMSS The number of articles in the checked transaction (right justified, zero filled on left) Flag to indicate if the POS operator did check (re-scan) the selfscan transaction items. Record Type Customer Number Transaction ‘Barcode’ PSS Expansion Area User Expansion Area Record Terminator 65 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Comments “N” = Didn’t check (Quick Pay) “Y” = Did Check (RESCAN) This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. Carriage Return/Linefeed (0x0D, 0x0A) Page 174 February 1, 2000 Appendix D POS Interface File Descriptions POS Transaction File Standard Item Information Field Name Length Record Type Item Number Start Offset Item Price 26 10 Flags 36 PSS Expansion Area User Expansion Area Record Terminator 24 Comments ‘Standard’ item information = 04 Item barcode number right justified, zero filled on left (only the last 13 bytes are currently used). Item price in units (max 9,999,999,999) (right justified, zero filled on left) Implementation specific flags. Defaults as follows: ‘X1 X2 X3 X4 X5‘ X1 unused X2 unused 0=Normal item, 1=exception item X3 X4 unused X5 unused This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. 41 Carriage Return/Linefeed (0x0D, 0x0A) End Of Day Information Field Name Record Type Identifier Reserved PSS Expansion Area User Expansion Area Record Terminator Start Offset Length Comments End of Day information = 05 “EOD” Zero filled This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. Carriage Return/Linefeed (0x0D, 0x0A) End Of Week Information Field Name Record Type Identifier Week Number PSS Expansion Area User Expansion Area Record Terminator Start Offset Length Comments End of Week information = 06 “EOW” “00” – “52” This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Carriage Return/Linefeed (0x0D, 0x0A) Page 175 February 1, 2000 Appendix D POS Interface File Descriptions Item Record File D.3 Item Record File Filename Specified in PSS System Settings, defaults to PLUMT??.DAT for updates and to PLUNW.DAT for a full Item file replacement. POS Controller Contains item attributes needed by PSS for retrieval of item descriptions & computation of item prices. ASCII Sequential Fixed, 117* (Actual length depends on configured expansion area sizes) Variable Source: Description Type Record Length Number of Records This file is created by the POS. PSS transfers the file from the POS host to the PSS system and then processes it to load the data contained in it into the PSS. It exists primarily to update item description and pricing information. Field Name Length Record Type Action Start Offset Barcode 24 Description Price Item Flags 27 57 67 30 10 LinkCode 73 24 Depart MixMatch Method 97 100 102 Deal Price Deal Quantity PSS Expansion Area User Expansion Area Record Terminator 103 113 10 116 WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Comments Item file information, value = “02” ‘A’ = Add\Update ‘D’ = Delete Item Barcode, (right justified, zero filled on left currently only the last 13 bytes used) Description (left justified, space filled on right) Unit Price 9,999,999,999 (right justified, zero filled on left) ‘X1 X2 X3 X4 X5 X6‘ X1 = ‘Y’, Tax plan A applicable = ‘N’ Tax plan A NOT applicable X2 = ‘Y’, Tax plan B applicable X3 = ‘Y’, Tax plan C applicable X4 = ‘Y’, Tax plan D applicable X5 = ‘Y’, Foodstamps applicable X6 = ‘Y’, Reserved Linked Item Code Right justified, zero filled on left (currently only the last 13 bytes are used) Department Code (right justified, zero filled on left) Mix & Match Number (right justified, zero filled on left) Pricing method: 4 = Unit Adjusted Pricing 3 = Group Adjusted Pricing 2 = Group Threshold Pricing 1 = Base + 1 Pricing 0 = Unit Pricing Deal Price 9,999,999,999 (right justified, zero filled on left) Deal Quantity (right justified, zero filled on left) This area is reserved for future expansion by the PSS system. It’s size is configurable and defaults to zero length. This area is used for customized implementations of PSS. It’s size is configurable and defaults to zero length. Carriage Return/Linefeed (0x0D, 0x0A) Page 176 February 1, 2000 Appendix D POS Interface File Descriptions Tax Table File D.4 Tax Table File Filename File directory path specified in PSS System Settings. The file name defaults to NXGTAXTxx.DAT, where ‘xx’ is a two digit number identifying which taxt table on the POS it represents POS system Source: Description Type Record Length Number of Records ASCII Sequential Variable Variable. This file is not in standard fixed length record format. It is a variable record length file with commadelimited fields. Up to ten separate tax tables can be defined using the file names NXGTAXT01-10. Each Tax Table File contains the deltas for the tax brackets and amounts that are required to compute tax. The file is sequential with three different record formats. Tax Table Record 1 Field Name DESCRIPTOR TAXRATE FIRSTTAX Type Length Description ASC ASC ASC ASC ASC ASC ASC 18 1-4 ASC “ (0x22) Tax Table descriptor. “ (0x22) , (0x2C) Start of repeat range for table (0-99.99). , (0x2C) True implies tax is collected on first range. False implies tax is not collected on first range. True = any non zero value, False = 0. CRLF (0x0D0A) Tax Table Record 2 Field Name Type Length Description NUMRANGES ASC ASC 1-2 Number of ranges in the tax table. CRLF (0x0D0A) Tax Table Record 3 Field Name Type Length Description RANGEDELTA ASC ASC ASC ASC 1-2 1-2 Delta amount for high end of bracket for this range. , (0x2C) Delta amount for tax amount for this range. CRLF (0x0D0A) AMTDELTA WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 177 February 1, 2000 D.5 Customer Information File Filename Source: Description Type Record Length Number of Records File directory path specified in PSS System Settings. The file name defaults to CUSTMTxx.DAT, where ‘xx’ is a two digit ID number. POS system Contains the list of customers which may use the PSS system. ASCII Sequential Fixed, 291* (Actual length depends on configured expansion area sizes) Variable, one record for each customer. Each record represents one customer and information needed by PSS to identify the customer as a valid user of the system. The file is in ASCII format with each record being terminated by a carriage return/line feed delimiting character pair. WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Page 178 February 1, 2000 Field Name Record Type Action Start Offset Length 20 Customer update record type = 09 ‘A’ = Add/Update ‘D’ = Delete Customer loyalty card number, (right justified, zero filled on left) 23 63 40 40 Customer’s name (left justified, space filled on right) First line of customer address (left justified, space filled on right) 103 40 Second line of customer address (left justified, space filled on right) 143 40 183 40 Third line of customer address (left justified, space filled on right – populates PSS “City” field by default) Fourth line of customer address (left justified, space filled on right– populates PSS “State” field) Fifth line of customer address (left justified, space filled on right– populates PSS Postal_Code and Country fields) Language Code 0 = Use store language, 1 = First language, 2 = Second language, 3 = Third language If multiple languages are not used, set to zero (0) This field exists for compatibility with versions of PSA. It is availiable for use by User Exit routines Contains an optional flag to specify whether this customer is created enabled or disabled for shopping. ‘D’ indicates the customer is created disabled and must be manually enabled using the Service Terminal. ‘E’ indicates the customer is created enabled and may use PSS to shop. It the field is left blank, the customer is created disabled This field updates the PSS Greeting_Text field in the customer record. It is displayed on the terminal at the start of the shopping trip in place of the customer name if supplied. A numeric value that is used in determining whether a customer is sent to the re-scan or quick-pay checkout lane. (right justified, zero filled on left) This area is reserved for future expansion by PSS. Default size is zero This area is set aside for use by systems customized with user exit routines. Default size is zero Carriage Return/Linefeed (0x0D, 0x0A) Customer card number Customer Name Customer address line 1 Customer address line 2 Customer address line 3 Customer address line 4 Customer address line 5 Language Code 223 40 263 Customer category 264 Enable/ Disable flag 266 Customer Greeting 267 20 Checkchance Level 287 290 PSS Expansion User Expansion Record Terminator WaveWorks PSS, Integration Guide, 1.10 © 2000, Symbol Technologies, Inc. Comments Page 179 February 1, 2000
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No Modify Date : 2000:02:01 13:02:11-05:00 Create Date : 2000:02:01 11:54:56-05:00 Title : Revision History Author : petrozza Creator : Microsoft Word 8.0 Producer : Acrobat Distiller 4.0 for Windows Page Count : 185EXIF Metadata provided by EXIF.tools