#include <qlabcashboxbase.h>
This Class provides a skeleton integrating the various Cashbox Construction Kit. You may use it as you want, simply inheriting it and making the signaled changes.
QlabTicketLine Ticket Line Management class
QlabDatabaseCashboxClient Database connectivity class stripped for cashboxes.
|
|
Descriptive view of the various states of the cashbox machine. This emulates a state machine. Think of this not the classic state machine, but the Prolog way as a state is only a descriptor of a context.
|
|
Descriptors for Supervise Actions.
|
|
Descriptors for Supervise Actions.
|
|
Create a new instance of QlabCashboxBase owned by parent and named name.
|
|
Destroys a QlabCashboxBase instance. Usually empty as Qt does clean up very well.
|
|
Adds an inline rebete value. This is an automatic method called by part management. |
|
Adds a product to the ticket and stores values and all parts stuff.
|
|
Iterates through ticket to calculate taxes. This has to be included in a specific method, as tax calculation may differ from country to country.
|
|
Immediate Cancel Mode. Cancels the last line.
|
|
Cancels a full ticket.
|
|
Checks if a Cancel Action is allowed in current context.
|
|
Checks if a Clear action is allowed in context.
|
|
Checks if Drawer opening is allowed in current context.
|
|
Received whenever interface processing status changes.
|
|
Checks if a PAUSE action is allowed in context.
|
|
Checks Session status before allowing some actions.
|
|
Received whenever Supervise status changes. You may need some processing there, depending on what you want to implement. |
|
Checks if Ticket Push or Pop is allowed.
|
|
Checks if Registering GrandTotal is allowed in context.
|
|
Processes the second stage login. Received password. Check user and act upon this. |
|
Used as Password confirmation before accepting forced drawer open.
|
|
Used to format display for floating numbers.
|
|
What should we do on drawer close event ? Usually, as drawer is only open after a transaction, we can welcome next customer and say operator that next customer is ready. This is QlabCashboxBase::showWelcome() method usage. |
|
What should we do if drawer is open ? In most cases, we just have to say something to operator and wait for the drawer closes, except if we allow transactions with an open drawer, which sounds risky! |
|
Duplicates the last Ticjket Line This is a helper for Quick repeat. You'll have to implement your real code for this, according to your context if default one does not fit what you need. |
|
End of sales transaction processing. Mainly QlabCashboxBase::showWelcome() and put status to STATUS_ReadyForTransaction |
|
Process Enter key signal. This is one of the most complex methods as Enter is used to confirm many things. We meet an old friend: a Supervise switch and a standard switch |
|
Displays an interesting msg to the operator, while sounding a nice melody.
|
|
Executes the SuperviseAction waiting for processing. This is executed when Supervisor login arises on a Supervise only action. You'll have to reimplement this method to give the wanted code for keyboardSupervisorStatus. |
|
Try to find an item serial. This is hooked to both keyboard and scanner systems.
|
|
Scanner data processor. Mainly used for EAN/Codabar reference processing. Can also be used for user signon, liability...
|
|
Process action keys from keyboard. Here we need a switch to connect actions to processing. The thing sounds obvious, while KeyCodes are auto documented. You MUST reimplement it as we cannot have a clue of your keycodes in the skeleton. |
|
Spawns a new ticket Map and does housekeeping for it.
|
|
Posts an error message to operator and advises server.
|
|
Processes when in Login 1st stage. This should not need overloading by inheritors as the processing is pretty standard. |
|
Reveived whenever active print device changes. Informational only, as your logic should already know you wanted a printer change. |
|
Formats a ticket line lineno for printing.
|
|
Prints a separator line to active printer. This is just an helper method. You may forget it.
|
|
Prints the ticket header.
|
|
Check Number read from Micr. Can be ignored or stored in transaction |
|
Reveived on hardware device status Online/Offline changes. Do whatever you want with this. Depends on hardware. |
|
Reveived on hardware device status changes. Do whatever you want with this, even trashing it. |
|
Reveived on hardware device exceptions deviceError() signal.
Mainly used to interact whith operator and send Error messages to administrative backend. |
|
Process Magnetic Strip Data event. Here, we can hook whatever we want:
|
|
Registers Balance Due with value.
Posts a line in ticket for balance due. This is only used when we start in multiple tender modes (ie Cash + Voucher). |
|
Registers a NO SALE transaction. One may need some quirks with this, as each and every company has a different politics on how to deal with NO SALE events. |
|
Registers a Pay mode corresponding to value paid.
|
|
Registers Money Back value.
Posts a line in ticket for Money Back. |
|
Removes Ticket Line number lineno. This method is used by both single line delete and full ticket cancellation. |
|
Registers an automatic Withdrawal.
|
|
Registers a Cash withdrawal.
|
|
Registers a Fast Withdrawal action.
|
|
Registers the Grand Total.
Grand Total is the Ledger term dealing with general Total for a transaction, including taxes and everything dealing with it. |
|
Maps a PayMode Code sent by keyCode to a human readable expression. You must implement (maybe simply copying the sampled code here) the real values for keyCodes. This might be extended in the future whenever new pay modes arise, ie MentalPayMode, EmbeddedChipUnderSkin... |
|
Standard Setup Method
|
|
Process keyboard buffer changes. What should we do when we receive a signal from hardware saying the keyboard buffer has been changed?
|
|
Shows Welcome Message to Customer and Next Customer to Operator. This is only a handy method quicket to type than the two display ones. |
|
Used to crawl inside the Withdraw detail form.
This only deals with withdraw details when using an emulated spreadsheet on those 2 line displays. |
|
Nicely cancels a ticket.
|
|
Pushes a ticket on stack for later processing.
|
|
Recalls a ticket from standard PushStack or ticket history according to std.
|
|
Posts an alert to operator when ticket is too big.
|
|
Processes a Quantity change query.
|
|
Cleanup for the transaction with full make when full is TRUE. This method name comes from those nifty Fiscal Printers which must have a printer datestamp for each and every transaction. As we use a transaction stamp too for our informMaster() method, this sounds nice. This method _MUST_ be called whenever a transaction ends as it has many tasks to accomplish.
|
|
Used by the Tender Modes.
|
|
Used to humanly talk about current Tender mode.
|
|
Mapping to current ticket objects.
|
|
Mapping to current ticket objects.
|
|
Cashbox ID. Filled during init. |
|
Cash Events Manager hook.
|
|
Cash Events Manager hook.
|
|
Holds the Customer Welcome String.
|
|
Used to determine is savings are printed inline or deported to ticket foot.
|
|
Supervise mode switch.
|
|
MUST Reimplement for your hardware interface.
For internal use only.
|
|
MUST Reimplement for your hardware interface.
For internal use only.
|
|
Next item qty.
|
|
Used during Login State.
|
|
Used while Supervise mode is On.
|
|
Max lines in a ticket..
|
|
Grabs the Cashbox Messages options.
|
|
Grabs the Cashbox Messages options.
|
|
Optional Discount Rules, if used with the discount subsystem.
|
|
Optional Discount Rules, if used with the discount subsystem.
|
|
Hook to Part Manager.
|
|
Hook to Part Manager.
|
|
Used as a password storage key.
|
|
Used while in Supervise Mode.
|
|
Current Status Place Holder.
|
|
Previous Status place holder.
|
|
Place holder for price control.
|
|
TRUE = print by line, FALSE = Print full Ticket.
|
|
Used by Document Insertion Printing.
|
|
Hook to Product list. May disappear in the future |
|
Hook to Product list. May disappear in the future |
|
Used by Ticket Recall Logic.
|
|
Used by ticket recall logic.
|
|
Only TRUE for Return Only cashboxes.
|
|
Used when activating the PriceCall() Method.
|
|
Used internally by printing optimizer.
|
|
May be used when we need to Push Status.
|
|
May be used when we need to Push Status.
|
|
Required supervise action code.
|
|
Supervise Login completion flag.
|
|
Current ticket number.
|
|
Current ticket number.
|
|
Mixed style ticket Stamp.
|
|
Ticket Total storage.
|
|
User Manager hook.
|
|
User Manager hook.
|
|
Operator User ID. Needed to recall from Supervise actions |
|
Operator User ID save state for supervisor mode.
|
|
Cust welcome already displayed.
|
|
Only used by Detailled Withdraw Mode.
|
|
Only used by Detailled Withdraw Mode.
|
|
Used by Detailled Withdraw Mode.
|