Go to the Keystroke POS Home Page

Keystroke POS Version 6 Read Me

Current version is 6.30 Build 42 - 08/26/11

Thank you for using Keystroke Point of Sale.

This file contains a listing of changes made to the Keystroke POS v6.30 program and its modules made since the release of Build 20 on 09/14/09.

- Lines beginning with a hyphen are bug fixes for recently introduced errors.

****** Most Recent Changes *******

** 8/26/11 - v6.30 Build 42

CNF/TRN - Added support for the UIC PinPad and Signature capture devices.

LOGO - PCI Compliance Message - This message will now include a list of the payment types that are causing it to appear (those that are set to use an out-of-date and non-secure authorization method).

- POR - Import Line Items - If the cost being imported was not the same as the current cost on the line item (either because a different cost was imported or the cost was not imported but it has changed on the inventory item), then the line item was added as a new line item instead of updating the existing item. The program will also now ignore differences in Vendor Part Number when importing when determining to update and existing or add a new line item.

- AUDIT - KEYSTROKES - If the clerk was changed, the audit entry for the keys recently pressed would be recorded as being entered from the new clerk instead of by the old clerk.


** 5/20/11 - v6.30 Build 41

DUAL PROCESSORS - Turned off the multiple threading capabilities since some machines were getting screen draw delays that appeared to be caused by sync problems between multiple threads when using dual processors.

TRN - DataPort - Added information at the top of the exported file to show Keystroke Version and Serial Number.

- SCREEN REDRAW - Changed some code used to highlight the current field in database screens that was causing some of the fields to flash every time a key was pressed.

- POR - AutoOrder - Filters - Filtering on any of the Date fields was not working.

- TRN - AUDIT ENTRIES FOR KEYPAY PAYMENTS - The audit entry on payments processed with KeyPay were not including the response text (just the AuthCode or "Failed").

- TRN - PIN PADS w/ KeyPay - If the payment is set to have a PIN entered, then the program was still attempting to authorize the payment if No PIN had been entered due to the PIN Pad timing out.

MAPFILE.EXE - If no mapping file is specified, then the fields will be copied as they are. (The purpose of this is to change the delimiter being used.) With no MapFile specified, all fields will be treated as text so if using Quote/Comma delimited, all fields will be enclosed in quotes (usually numeric fields are not).

MAPFILE.EXE - Added support for Delimiter=4{###} to specify a custom character to delimit the fields by. The character that follows the 4 is the character to be use (e.g. Delimiter=4& would separate each field with the ampersand character). The character can also be specified by using its ASCII number enclosed in braces. (Delimter=4{124} to delimit with the pipe ("|") character, Delimiter=4{13} to delimit with carriage returns.)

- IMPTRN - New customers were only being added if the importing was looking them up by customer name.

- IMPTRN - UpdateBy= - If updating transactions and the TypeName= field in the transaction file came after the field that was being used to find the matching transaction, then the program was searching for any transaction type but was not searching any of the alternate transaction files. It will now correctly search each transaction type in the file that each type is stored in. Note that if searching for a particular transaction type, it is best if the TypeName= field is the first line being imported.


** 3/31/11 - v6.30 Build 40

LOGO - Payment Authorization Methods - When entering the program, the authorization methods on the sales payment types will now be checked. If any of them use electronic payment processing through a third party program (ICVerify, PCCharge, etc.) then the program will display a PCI Compliance Message warning that the authorization method is not secure and KeyPay should be used instead.

- INIMERGE - If the DATAFILE includes the use of line items (has the "**END LINE ITEM" tag) then the program was resetting all the tokens to blank after each line item. This would cause tokens from the header section to only work on the first line item. The program now retains the tokens from header section and only resets the ones that follow the "**START LINE ITEM" tag.

- LOGO - USERS.TMP - This file was growing by 26 bytes each time the program was started. The larger this file is the longer it takes finish the "Assigning Machine Number" routine which is run each time a module is loaded. Fixed the file always growing problem and also changed the program to automatically reset the size of this file if it is more than 320 bytes and no one else is using the program.

- POR - Special Receiving Function - Entering a Product Code was not finding the open order for that item (from build 39).


** 3/09/11 - v6.30 Build 39

IMPTRN - Customers Which One - Added the parameter "NoWhichOneCust=" to disable the Which One feature when looking up customers (will select the first match if this parameter is On). Please not that this leaves the potential for the wrong customer record to be changed and the wrong customer to be assigned to the transaction.

- IMPTRN - Customer Info - If a transaction was being updated and the UpdateBy parameter used was not based on customer, then any customer fields read in prior to the lookup of the transaction would be lost (while the program now handles this, as a general rule, fields that cause a lookup should always come before those that do not).

- CNF - Enable Till Tracking - Removed the parameter "Enable Till Tracking" (and set its value to OFF) if using a single user system (it doesn't work with a single user license anyway since the Register/Till number can't be changed unless the system is licensed for more than 1 POS workstation).

- POR - When updating the average lead time on an item, if the old time value was not valid (less then negative 100 days or more than 10 years) then the AvgLeadTime will be set to the invoice being received instead of being averaged in. (Before this change an error 6 could result).

- TRN - Certificate Number in Comments - The special "~" token for automatically numbering a line item as it is sold was not working.

- TRN/IMPTRN - Customer Lookup - Last Name, First Name - Looking up a customer by Last Name, First Name was not working (Last Name by itself was).

- TRN - FORMS - CustomerName field on forms was not printing in the correct format if the customer did not have a business name (now prints "Last, First" name instead of "First Last" name. This is needed so the name is consistent with how it is used inside the program.


** 11/03/10 - v6.30 Build 38

PICTUREVIEWER - Viewer now only remembers its position if the window is in normal mode (not Maximized or Minimized).

TRN - KeyPay - Removed the ability to use the [Esc] key to cancel a request once it has been sent to KeyPay.

TRN - Sales Orders - Shipping Amount - If the "Copy $ Shipping to Invoice" parameter is on, then when editing a Sales Order but not creating an invoice (nothing being shipped), the Shipping Amount for the Shipped Totals will now be displayed as $0.00.

EXTRACT - NOTE: START= and END= commandline switches, and in Extract.dat files, only support the use of the MM/DD/YY or MM/DD/YYYY format for entering the start and end dates. Use of any other format may cause the program to use the wrong dates.

- EXTRACT - When writing START= to EXTRACT.DAT (to mark what date the next extract should start on) the program was using the Date Format set in the configuration manager. The problem is that when reading the dates back in the program only supports the standard MM/DD/YY or MM/DD/YYYY formats. Extract.exe will now always write this date in the standard format no matter what the date format is set to in the Configuration Manager.


** 09/10/10 - v6.30 Build 37

CNF - Payments - If the authorization method on a payment is changed from one using KeyPay to any other method (other than "None") then a message will be displayed warning that only methods using KeyPay are validated to be PCI Compliant.

- CNF - Sales Transaction Parameters - If the "Copy Shipped Items to New Sale" parameter was on, then the program was always turning off the "Delete Filled Line Items" and "Delete Completed Transaction" parameters when saving.

- TRN - If a previous transaction is pulled up and the transaction type is changed but no other changes are done, using a print button would not also save the transaction (the program was not recognizing that it needed to be saved).

- VAR - DetailBox - the TotalCost and TotalPrice fields were being displayed as 10 times more than the actual amount (display issue only and only if these fields were behind displayed in the detail box, which usually they are not).

- VAR - Reports - the Print Comments parameters were not working with line items.


** 06/28/10 - v6.30 Build 36

CNF - PAYMENTS - When editing and then saving a payment type, if an external authorization method other than KeyPay is specified and the "Purge Ref/ExpDate Immediately" parameter is off, then the program will display a PCI Warning message stating that the parameter should be turned on for that payment type.

DATENAME.EXE - Recompiled to 32 bit version that returns ErrorLevel if it does not succeed.

MAPFILE.EXE, INIMERGE.EXE - Recompiled to 32 bit version that will run correctly on 64 bit operating systems.

- POR - The Transaction Browse function was looking for Purchase Orders even when the "Disable Purchase Orders" was turned on.

- TRN - Debit Card (ATM) entry with KeyPay was stopping on the confirm payment screen even when set to skip it.

- VAR - When posting a variance, the index was not being created correctly so the program was not able to find the variance for Editing/Reporting. Packing the transaction file fixes the index problem.

- VAR - Import Items - When importing items, items not found now retains the information that was imported both on the screen and when saved as an open variance.

- POR - Vendor Entry - Pressing [Ctrl+F5] was running the Show Info function instead of the Show Summary function.


** 06/03/10 - v6.30 Build 35

- TRN - KeyPay Authorization - Voice Auths were not working (would return the message "Recurring Payment not found").

- TRN - Credit Memos - Credit Memos that used a payment type with the "Always Mask Ref" parameter turned on were not saving the Reference field correctly.


** 05/26/10 - v6.30 Build 34

- TRN/AR - Credit Memos and KeyPay - If a credit memo (ROA payment entered in Sales Manager) was processed through KeyPay, voiding the payment in A.R. (deleting the ROA payment) was not correctly processing the payment through KeyPay.

- TRN - CONTRACT PRICING - Contracting pricing on the default customer was not working except on the first sale after entering the Sales Manager. The Contract Pricing files are checked when the customer entered on the transaction is changed. If using the default customer on 2 sequential transactions, the contract pricing was only working on the first transaction since the customer is not changed on the second one. The program now checks at the beginning of each transaction even if the customer is the same.


** 05/14/10 - v6.30 Build 33

TRN - KeyPay - Keystroke will accept the Using Modem message from KeyPay and will update the Authorization in Progress message on the screen to add the line "Processing through Dial-Up, please wait..." to indicate that it may take longer for the payment to be processed. (Requires KeyPay v6.30 build 36 or newer).

TRN - KeyPay - Dialup - The timeout on a response is set to 20 seconds, so if it takes longer than that for KeyPay to send back the response from a payment process Keystroke will timeout and display the No Response from KeyPay message. However, with some modems, it can take longer than 20 seconds so now Keystroke will set the timeout to 90 seconds when KeyPay informs it that it is using the modem to process the payment. (Requires KeyPay v6.30 build 36 or newer).

TRN - Payment Entry for KeyPay - A payment entry that would be considered a duplicate can now be forced through as not a duplicate the first time by entering an "F" in the reference field and then entering the card number. (This in addition to the method that was already supported where the "F" was inserted at the beginning of the reference field after the card number was first entered).

TRN - Payment Entry for KeyPay - Card Swipes - If a card is swiped in, the program will now always hide the card number characters (it ignores the display ref security level).

TRN - Payment Entry for KeyPay - If there is an error processing the payment through KeyPay so that the original card number is not replaced with a tokenized version, then the credit card number will be automatically purged (replaced with a masked version).

- TRN - Payment Entry for KeyPay - PinPads - If there was an error getting the CardSwipe, the program would sometimes still ask for the PIN number to be entered.

- TRN/AR - Credit Memos and KeyPay - If a credit memo (ROA payment entered in Sales Manager) was processed through KeyPay, the program was not correctly marking it that way so voiding the payment in A.R. (deleting the ROA payment) was not correctly processing the payment through KeyPay. The Sales Manager was fixed to correctly mark the payment and A.R. was changed to recognize the problem and work with the payment even when not marked correctly.

- CLERK MESSAGES - The Clerk message screen was flashing and not staying on the screen when a new clerk logged in.


** 04/14/10 - v6.30 Build 32

LOGO - Changed around the Maintenance is about to/has expired messages to not mention the $100 renewal discount and to also display more often for systems that are expired.

- AR - Delete - Fixed error 13 when deleting an ROA payment that had been processed through an Auth Method.

- TRN - KeyPay - Fixed error 6 that would sometimes happen when processing a payment through KeyPay.

- STR - The View Cost security level was not being checked when first entering the StoreLink module.


** 03/09/10 - v6.30 Build 31

- FILE LOCKED MESSAGE - AUDIT ENTRIES - When audit entries were cached due to the transaction file not being available and then an audit entry was requested for a function that was set to not be audited, the program would not proceed until it could write all the audit entries that had been cached. This could result in the "File Is Locked by Another User" message appearing if the transaction file was in use. Now the program will continue on and just keep caching audit entries until the file is available (except when changing modules where it will wait until the audit entries can be written to the transaction file).

- CNF - KEYPAY - CHECK AUTH - Was not setting up the the .aut file correctly for check authorization.

- TRN - KEYPAY - CHECK AUTH - Checks entered manually were being sent in as having been magnetically read by a check reader. (As always, you must update to the current version of KeyPay along with the current version of Keystroke).

- TRN - PAYMENTS - IN-HOUSE CHECK LISTS - The program was allowing the payment to go through if the Reference was left blank and the Ok button was selected instead of the Auth button.

- EXTRACT - END=M - This parameter was not working correctly and would cause the ending date to be set to 1/1/85.


** 02/16/10 - v6.30 Build 30

- VAR - Editing a posted variance without changing the date was causing the index to the variance to be lost (it would no longer appear on lists or reports). Packing the transaction file corrects the problem.


** 02/14/10 - v6.30 Build 29

KEYPAY - Changed communications protocol used with KeyPay to support KeyPay v6.30 build 29 (included in this patch). Note that older releases of KeyPay or Keystroke are not compatible with the newer builds.

CNF - KeyPay - Test Button - Will now display the version information from KeyPay.

CNF - KeyPay - Test Button - When testing the communications with KeyPay, Keystroke will now send 10 test requests instead of just one.

TRN - KeyPay - When authorizing a payment, Keystroke will now send a short "Ping" message to KeyPay before sending the actual authorization request. This seems to help some security packages (e.g. AVG Internet Security) to verify the communications and then allows the larger request message to reach KeyPay intact.

TRN - Sales Orders - Forms - Shipping - If shipping is printed on a form, the amount printed is always the amount from the Order column. If this amount is 0.00, then the program will now print the amount from the invoice column.

TRN - Void/Reversing - The program now displays the results of the voiding processed payments.

- TRN - In-House check list - payment entry box was not showing the Auth button.

- TRN - Food Stamps with Taxable Sales Tax - If a Sales Tax formula was marked as being Taxable and available to be paid by Food Stamps, then the program was still adding in the sales tax amount based on the taxable sales even if paid by food stamps (for example bottle deposits/CRV).

- TRN - Sales Orders - Shipping - If the "Copy $ Shipping" parameter was off, and the Shipping Field was used to enter a shipping amount when invoices were being created from the order, then the payments were not transfering to the invoice correctly.

- TRN - PCCharge - CVV2 - The old INP method of PCCharge was not displaying the correct message for the CVV2 response.


** 01/27/10 - v6.30 Build 28

COMMAND LINE - KeyPay - Added support for the command line switch "EncryptMethod=1". If this is used, then the communications between Keystroke and KeyPay will be encrypted using standard encryption built into Keystroke instead of the stronger encryption provided by Microsoft.

CNF - Authorization Methods - KeyPay - added the button "Test KeyPay". When used, the program will send a variety of messages to KeyPay and check the responses. None of the messages cause KeyPay to communicate with the processor or save any data. The program will then display the results of the test with a simple on screen message.

TRN/CNF - KeyPay - If the program cannot connect to the Keystroke Payment module, then it will now display what network address it is trying to use.

FMTR/AR - STATEMENTS - Added the ability to print the "Contact (default) eMail" field.

GLLINK - Change Made Payments will now post the same as Cash Payments. (Internally, Change Made payments are payment #1, as GLLink reads payments, it now changes any payments marked as #1 to #2 which is the Cash payment type before doing anything with it.)

GLLINK - Closeouts - The Over/Short posting on the Cash payment (payment #2) will now post to the default "Cash Payments" account as set on the Posting Account Numbers screen instead of the individual account number set on the "Payment Types" list under the Setup Menu. This allows the posting for the individual payment to reflect the actual deposit made while the over/short will then go into the generic account to balance out what was suppose to have been received.

SENDMAIL.EXE - Added support for using the semicolon (";") to send to multiple addresses.

- AR - Statements - the field Contact (default) eMail was always printing as blank.

- CNF - EXPORT - Tax Codes and Tax Districts were mixed up (selecting one would export the other).

- CNF - Scale Setup - if the first characters of the codes were spaces, then the last characters were being cut off when the setup function was run again (the codes are there, and the scale will work, it is just the setup function that is not displaying them and will cut them off if the settings are saved that way).

- KSR/TRN - If the cost of an item was $0.00, the program was displaying the Percent Profit as 0% instead of 100%.

- VAR - Changing the date on a posted variance was not updating the sorting of the variances. (Packing the transaction file corrects the problem.)

- TRN - Sales Orders - Negative Shipping - If both "Copy Shipping to Invoice" and "Delete Filled Line Items" were on, and a shipping amount was entered when creating an invoice that was more than the amount on the order, then the order would end up with a negative shipping amount. The program now just sets the shipping amount to $0.00 in this case.


** 01/07/10 - v6.30 Build 27

TRN/CLOSEOUT/AR - KeyPay Payments - The Purge Payments function will no longer purge payments processed through KeyPay (since the card number is already masked).

- CNF - EXPORT - Tax Codes and Tax Districts were mixed up (selecting one would export the other).

- POR - Old transaction message - If the clerk is changed while a previous transaction is left on the screen for too long, then the "Transaction may no longer be Valid!" message would continually flash on the screen.

- TRN - Import Line Items - the button labeled "Default Qty" was really the "Merge Same Items" button. The "Default Qty" button has been removed (it is not supported in Sales) and the "Merge Same Items" button has been fixed.

- TRN - Gift Card Payments - Gift Card Payments processed through KeyPay could not be voided.

- TRN - KeyPay - The Encryption Method used to communicate with KeyPay was always using Keystroke's encryption instead of the Microsoft Cryptographic Engine (even if it was available). This only affects the data stream between Keystroke and KeyPay (which is not required to be encrypted at all) and does not have anything to do with how the data is stored.

- TRN - Sales Orders - Shipping - Taxable - The program was calculating the Tax on the Shipping amount based on the original Order's shipping amount instead of the shipping amount on the invoice being created.


** 12/18/09 - v6.30 Build 26

- TRN - Scale Interface - no longer strips off blank characters from the beginning of the request codes.

- TRN - If clerked changed to one that was not allowed to use the Sales Manager, then the program would get stuck in a loop.


** 12/10/09 - v6.30 Build 25

LOGO - PCI DATA CONVERSION - After data is converted from a version prior to 6.30, any clerk with an Administrative Security Level will have its password marked as expired so they will be forced to enter a new one and have it checked against the minimum requirements. A message is displayed prior to doing this where No can be selected to skip this procedure.

LOGO - PCI DATA CONVERSION - If the clerk answers no to purge the information from a payment that appears to require it, the program will now make an audit entry to record that the clerk answered no to the message.

- ASC2INI - was not working with v6.30 license files.

- TRN - Price Formulas - If a price formula uses a time window (happy hour pricing) and the initial price of the entered item was 0.00, then when the items base price is set by entering a new price the program was not using any of the price formulas to calculate the actual price.

- STOREMRG - Was getting .INI settings from EXTRACT.DAT instead of STOREMRG.DAT. This could cause some data to not be merged in especially if EXTRACT.DAT had a Start Date/Time that was after the data being merged in. (In most cases, data directory that used StoreMrg will not also use EXTRACT so it should not cause a problem).


** 11/25/09 - v6.30 Build 24

RECCHRG - If a payment needs to be processed through KeyPay, the program will now first check that KeyPay is running and will display a warning if it is not.

TRN - KeyPay - Changed the way the Encryption Method used to communicate with KeyPay is selected. It was based on the Operating System Version but is now based on whether or not the required Microsoft Cryptographic Engine is installed (installed with 128 bit security on Internet Explorer 6 and above).

- FMTR/TRN/POR - Forms - If the Skip Line if Blank flag is used on a payment loop or tax loop field, then once one line for the loop was skipped, then all the rest of the lines would be skipped as well.

- KSR - Analysis Report - If there was only one transaction type enabled, then the description next to the Report On button was being left blank.

- TRN - PIN PAD - Ingenico 6550 - Changed the order of communication to send it the account number before putting it into EFT mode in order for PIN Entry to work with Ingenico's new OPOS driver "v2.7.2.6".

- TRN - Old transaction message - If the clerk is changed while a previous transaction is left on the screen for too long, then the "Transaction may no longer be Valid!" message would continually flash on the screen.

- TRN/POR/PROD/VAR/STR - After selecting an existing Matrix Item, the program was not returning the matrix item's code into the line item's class field. While it would still update the matrix item correctly when first saving the transaction, it would not be updated correctly if the transaction was edited nor would it appear on matrix reports correctly. (From Build 23)


** 11/18/09 - v6.30 Build 23

CNF/TRN - CHECK READER - Added support for the MICR reader in the EPSON TMH6000III receipt printer.

CNF - Payments - KeyPay - Changed the program to not display the message about switching to KeyPay if there was not a previous authorization method on the payment.

RECCHRG - Program now skips the "* * DELETED * *" transactions created as a place holder when a transaction is deleted.

RECCHRG - Program now disables the PinPad, Signature Capture, Customer Display, and Cash Drawer while it is running.

RECCHRG - If a payment needs to be processed through KeyPay, the program will now first check that KeyPay is running and will display a warning if it is not.

- LIST BOXES - The bottom of the box was sometimes covering up part of the last line of the list.

- ERROR 52 - If an error was generated while writing an Audit Entry and the transaction file was already open, then the program was not leaving the file open which could then result in an Error 52. This could happen without any other errors appearing since the Audit Routines are designed to hide error messages.

- RECMRGE - When merging in recurring transactions, the Amount Due on the new transaction was not always being set correctly. (When merging in recurring charges, the amount due would be $0.00). (from build 22)

- TRN - Payment Entry - a payment using the External Authorization method was not allowing the Reference field to be entered.

- VAR - If entering a serialized item and the number of serial numbers entered (or selected for removal) did not match the variance qty, the program was not adjusting the variance (and physical) qtys correctly.


** 10/30/09 - v6.30 Build 22

RECCHRG.EXE - Added a new program (Recurring Charge) which is used to copy transactions from one type to another while processing (charging) any payments as necessary. This is a replacement for using RecMrge, AutoMerc, and AutoChrg for recurring billing. The program goes through the same steps as the Transaction-Copy function in the Sales Manager. The difference is it will automatically copy all the transactions of that type instead of the clerk having to manually select and step through each one. Please see the file DOC\RecChrg.doc for more information. Payment processing is only supported through the Keystroke Payment module (KeyPay.exe).

TRN - Added support for the RecChrg.exe program. (Note that the RecChrg.exe file is just a forwarding program that runs "Keystrok /GRecChrg" (plus any other command line switches passed to it). The actual function is embedded in the TRN.DLL (Sales Manager) module).

TRN - Recurring Transactions - Payments - added support for using gift cards when authorizing through KeyPay. The gift card will be stored in the KeyPay recurring payment file and will be used when the recurring transaction is copied to an invoice (same as with credit cards). Note that in order for this work properly, the gift card must be saved a payment, not a line item.

- CLOSEOUT - CHECK CALCULATOR - Using the mouse to click on the Save button would cause the closeout to go to the Deposit Screen.

- LOGO - PCI Conversion - Authorization Methods marked as "Gift" were being changed to "Check" when switching the method from Mercury to KeyPay.

- LOGO - PCI Conversion - Moving Recurring Payments to KeyPay was not working.

- STOREMRG/RECMRG/IMPTRN/IMPPOR - If a transaction was merging in a Matrix Item that did not exist before, the item was not initializing its fields to Null which would cause its prices to be 0.00 instead of the Inventory Item's price (among other problems).

- TRN - Payments on Sales Orders - If a Sales Order (or similar transaction type) has payments on it that are between 12.87 and 13.058 seconds apart, then when transfer payments are created, they would write over the original payment. The seconds recorded when a Payment time is saved is now forced so they will not overlap when transfer payments are created from them.

- TRN - Payments - If the file that holds the authorization method info did not exist, then the payment would display as a credit card type payment but would then generate an error when trying to process it. It now displays a message stating that the file could not be found and will not allow that payment type to be used.

- TRN - EBT Payments with KeyPay - Manually entering an EBT account number was not working (they had to be swiped).


** 10/13/09 - v6.30 Build 21

DATABASE - InvLink - List of stores will now resize itself to display as many as possible.

EXTRACT/STOREMRG - Added support for the switch "Display=2". If this is used, then the program will only display a small popup window when it is running instead of the full Keystroke screen.

EXTRACT/STOREMRG - If the NoPause (or /NOP) switch is not used or if the CONFIRM=1 switch is used, then the "Display" and "NoDisplay" switches are ignored.

KSR - Inventory Analysis - If a line item's "Price includes Tax" then the the Inventory Analysis report will now show the actual price of the item (without the tax).

LOGO - SINGLE USER - If the /R switch (register number) is used on a single user system, the program will now display a message that only Register Number 1 is supported. (It will then set the register number to 1 and proceed as it has always done.)

LOGO - /R switch - the program will now display a message stating that the register number is not valid if an invalid number is used with the /R switch (valid numbers are 1 to 9999). (It will then set the register number to 1 and proceed as it has always done.)

VAR - Added a lock file (VAR#.LCK) to make sure only one person uses the same register number on a variance at any one time (to keep them from overwriting each other's save file (VAR#.DAT)).

- CNF - Backup, Archive - the files KPREC.DAT and KP.TMP are excluded from backups since they are locked while KeyPay is running. The file KP.TMP should never be backed up. If you want to backup the file KPREC.DAT, you must first shutdown KeyPay (or shut down the service) and then back it up in a secure manner and store the backup in a secure way.

- KSR - Sales Tax - Table - if not grouped by Tax District and Shipping was used, the Shipping amount was showing up in the tax column (workaround is to set Tax District to "Tax District" instead of "None").

- LOGO - MNUM= - If the requested machine number was already in use, an additional error was being displayed while the program was shutting down.

- TRN - Fixed checking "Line Item Qty Can Be 0" when program automatically sets it to 0 due to an item being out of stock. If the clerk's security does not allow this, then the line item will now be removed instead of just setting the qty to 0.

- TRN - Price formulas with minimums based on Price Code Weight or (Transaction Weight Total) were not always working. Workaround is to make a price formula that doesn't do anything (Mark-down=0) and is based on Price Code Qty (or Transaction SubTotal).

- TRN - Empty Payment List - If Prompt for Clerk is turned on, then the list of available payments was not being loaded until a different clerk logged in.


** 09/14/09 - v6.30 Build 20

- LOGO - Conversion of Authorization Methods (.AUT) files was not working correctly.

- TRN - KeyPay w/ Gift Cards - was not recognizing when a pin pad was to be used to read the mag stripe from the gift card.


** 09/11/09 - v6.30 Build 19

- CNF - File - Export - Databases - Alternate Vendor Codes was not exporting any data.

- LOGO - PCI Data Conversion - Payment Types that did not have an Auth Method attached to them were not being purged even if the Parse Reference parameter was turned on.

- TRN - Payments on Sales Orders - If a Sales Order (or similar transaction type) has payments on it that are between 8.726 and 8.813 seconds apart, then when transfer payments are created, they would write over the original payment.

- TRN - KeyPay Auth Method - Fixed use of EBT.Cash and EBT.FoodStamp payment types.

- STANDALONE MODULES (.exes with interfaces) - Closing the program (instead of exiting the normal way) would generate an error 52 if the Enter Module/ Exit Program audit parameter was turned on.


** 09/04/09 - v6.30 Build 18

DATENAME.EXE - Recompiled as a 32 bit windows application.

TRN - If the "Transaction may no longer be Valid" message appears (from editing a transaction and leaving it on the screen too long) the program will now check and warn that changes will be lost (if there are any) and require the transaction to be saved if any captured payments exist. After saving the transaction you can use the Void/Reverse option on the transaction menu if needed to reverse any captured payments.

- CNF - File - Export - Databases - Alternate Vendor Codes was not working (would generate an error when entering the function).

- TRN - When filling an already saved sales order, the program was not displaying the amount of change to be given back.

- TRN - Taxable Amount stored on transactions - If the items on a sale used a tax formula with the "Included in Price" parameter turned on, then the Taxable Amount saved with the transaction was including the sales tax. It now removes the sales tax from this amount. This shows up on reports where transactions saved the old way would show a larger taxable amount and a negative Non-Taxable amount, transactions saved with the new release will show a taxable amount that does not include the sales tax and therefore the Non-Taxable amount will not need to compensate for it (will usually be $0.00).


** 09/01/09 - v6.30 Build 17

DELUTIL - Update - ROA/Invoices - Added check and update of ROA payment's Balance Due (really the Amount Applied field since Amount - AmountApplied gives Balance Due).

CNF - Parameters - Database - Added the parameter "Inventory Lists Show Current Price". If this is on, then the Record List and Which One lists on Inventory items will show the "Base Price" column as just "Price" and the amount will be either the Base Price or the Sale Price (if the On Sale flag on the inventory item is on).

TRN - KeyPay - Added Support for Gift Card triggers with KeyPay.

- TRN - When manually converting from one transaction type to another, the program would sometimes not automatically display in the OnOrder/Shipped mode when there were still open item on the transaction.


** 08/20/09 - v6.30 Build 16

- CNF - Gift Cards - Gift Card triggers were not allowing a KeyPay payment authorization type to be attached to them.

- TRN - Gift Cards - KeyPay - Balance Inquiry was not working correctly.


** 08/14/09 - v6.30 Build 15

CNF - KeyPay - Added support for all payment types that were also supported by Mercury.

CNF - KeyPay - Changed the setup screen to not include Merchant Number and Process Through (both these settings are controlled by KeyPay). Added a setting for "Settings ID". This is used to indentify which settings in KeyPay are to be used to process the request. Leaving it blank will use the default settings in KeyPay (which will work for most stores, multiple settings are only needed if processing through multiple processors or with multiple Merchant IDs.

GIFT CARDS - When storing gift card information on a line item, the program will now also store the authorization ID number by adding "`" (backwards apostrophe) in front of it.

TRN - KeyPay - Added support for processing Gift Cards through the Keystroke Payment Module.

- KSR - Inventory - Database - If the Roll Child into Parent parameter was on, and their were more than 32,000 inventory items, the program would sometimes get an Error 63 when running the report.

- TRN - Mercury - Transaction number was not being sent. (from build 13).


** 07/21/09 - v6.30 Build 14

CNF/TRN - Security Levels - Added a new security level "Edit/Delete Captured Payments". If this is not met, then the clerk cannot edit or delete a payment from a sales transaction that is marked as having been captured by a payment processing program. (The clerk must also meet the "Edit/Delete Payments" level as well.) The default setting is 0 for this level as captured payments should not be changed.

LOGO - Clerk Database Screens - If the clerk database screens are from a version before 6.30, then the program will set the length of the password field to 16 characters.

TRN - Payments - If deleting a payment that was processed through the new Keystroke Payment module, the program will now display a message stating that the payment needs to be processed as a Void of the original payment. If the void fails, it will then be processed as a Credit. If the Credit fails then a message will appear warning that it could not be removed from the Keystroke Payment Module and will ask if you want to remove the payment from the transaction anyway.

- AR - Credit Memos - If a customer had more than 1 Credit Memo, then the program was only using the first one to calculate the displayed amount due for that customer.

- AR - Statements - If a customer had more than 1 ROA Payment in the same transaction file, the program was only printing the first one.

- IMPTRN - When converting a previous transaction to a different type the program was not reversing out the original updates to inventory correctly (for example, TypeName=Invoice when updating a Sales Order would was not updating the Qty Allocated field).

- KSR - Audit - Transactions - Purchase Transaction entries were labeling the vendor number as "Cust#" instead of "Vend#".

- TOOLBARS - Buttons - Pressing a button very quickly was losing some of the clicks.

- TRN - Change Made - When creating a "Change Made" payment for a transaction that was created just before midnight but saved just after midnight, the date of the "Change Made" payment was the same as the transaction date instead of current date (set to just after the previous midnight).


** 07/06/09 - v6.30 Build 13

TRN - Parameters - Entry - Added the parameter "Copy $ Shipping to Invoice". If this is on, then when an Invoice is being created from a Sales Order, the program will copy the Order shipping amount to the Invoice shipping amount. For partial shipments, the amount copied will be based on the amount being shipped compared to the order amount. If the shipping amount is edited, then the program will temporarily turn off this flag for the current transaction. To have the program turn the parameter back on, delete the shipping field (make it blank). Enter "0" to turn off the parameter and leave $0.00 shipping for the invoice).

TRN - Mercury - If the Transaction number is more than 9 digits then the program will now use the last 9 digits as the ticket number instead of the first 9 digits.

- TRN - KeyPay - Processing Recurring Payments was not working if the clerk was different than the one that originally entered the payment.


** 06/29/09 - v6.30 Build 12

CLERKS - CHANGE PASSWORD - If the program automatically prompts for a new password because the old one has expired and the old password is blank, then the Old Password field will not be displayed.

SCRNS - Clerks - The length of the Password field must always be the same as the field it is stored in (16 characters). (The width can be different on the screen). The Database Screens Editor will now enforce this rule.

WS.INI - Added the setting "ExternalMacros=", the default is "On". This setting controls whether or not Keystroke will create and register a special messaging handle through Windows so that other programs can send macros to it. If on, then the Keystroke Windows Handle and the new Message Handle will be placed in the file "DP#.TMP" in the Data Directory (where "#" is the machine number).

- CNF - Export - Clerks - Clerk Messages where not being exported.

TRN/POR - Added PCI message for setting Screen Blank to more than 15 minutes.

- KSR - Clerks - Clerk Messages where not printing. Only a number would print. Note, you must mark the field as "Comment" under the fields flags.

- POR - AUDIT - Audit entries where not being created when new purchase transactions were saved.

- LOGO - Error 52 during startup of Keystroke or after logging in. If the file "DP#.TMP" (where "#" is the machine number) was not available to be written to, then the program would generate an error 52 without explanation. The program now displays the original error message and does not proceed with trying to use the file.


** 06/09/09 - v6.30 Build 11

AUDIT - Added an audit setting for Administrative Functions. This audit function is always On and cannot be turned off.

AUDIT - Administrative Functions - The following functions will create an Administrative Functions audit entry:
- Security Levels - each time a security level is changed.
- CNF - Parameters - "Screen Saver Time", "Enter Clerk On Screen Saver",
"Password Max Tries", and "Ignore PCI Requirements".
- CNF - Sales Payment Types - for each payment type or Authorization Method that is changed.
- KSR - Audit Report - each time it is run.
- CLERK DATABASE - each time a Security Level or Password is changed.
- UTILITIES - CHANGE PASSWORD - each time it is used.

CNF/KSR - Audit - Changed the name of the audit entry for "Change Clerk" to "Clerk Log In or Log Out".

AUDIT - In order to meet PCI-DSS requirements, the following Audit Parameters are always turned on (and cannot be turned off): "File Packed", "File Backed Up/Restored", "Clerk Log In or Out", "Password Changed or Failed", "Payment Processing", and "Administrative Functions".

CLERKS - PASSWORDS - For purposes of enforcing PCI Compliant Passwords, a clerk is considered an administrator if their security level number is equal to or less than the number assigned to any of the following functions: "Edit Clerks", "Add Clerks", "Change Parameters", "File Maintenance", or "Edit Security Levels".

CHANGE PASSWORD - If the clerk is an Administrator, then the clerk's password must meet the PCI requirements of at least 7 characters, at least 1 number (or symbol) and 1 letter. Also the password will be marked to expire in 90 days (or less).

CHANGE PASSWORD - If the clerk is an Administrator, then the new password must be different than the last 4 passwords already used for that clerk.

DATABASE - Clerks - The password field now displays the password as the maximum number of masked characters no matter how long the actual password is (except if there is no password, then the field will be blank).

DATABASE - Clerks - Even if you have the security to edit clerks, the program will no longer allow the password to be edited. The entire password must now be reentered if it needs to be changed.

DATABASE - CLERKS - When editing a clerk, any changes to the password will now be checked to make sure it meets the minimum requirements.

DATABASE - Clerks - A clerk with a blank password will be displayed as blank instead of "****".

DATABASE - Clerks - New Clerks - If the new clerk is an Administrator then the password will be set as expired. This will cause the program to require that the clerk enter a new password when first accessing the system. (If the "Ignore PCI" parameter is on then it won't do this.)

DATABASE - Clerks - The program will now check the clerk's password when editing a clerk record to make sure it meets the password requirements for the clerk's security level.

LOGO - Clerk - When the clerk database is initialized, the program will now display a message stating that the program has only a the default clerk with an Administrator security level and no password. The message will also ask if the system should be set to require a password be entered. Answering Yes (which is the default), will mark the clerk's password as expired.

CNF - Parameters - Added the parameter "Ignore PCI Requirements". If this is turned on then the program will not check and warn when other parameters in the system (most have to do with passwords) are not set in accordance with the Payment Card Industries Data Security Standards ("PCI-DSS"). This parameter should not be turned on if Credit Cards are being used in any way with Keystroke POS.

CNF - The program will now check any changes made to the "Screen Saver Time" (max is 15), "Enter Clerk On Screen Saver" (should be on), "Password Max Tries" (1 to 6), and the "Ignore PCI Requirements" (should be off) settings. If the change violates the PCI-DSS then the program will display a warning message and state what the setting should be. (If the "Ignore PCI" parameter is on then it won't do this.)

LOGO - Default Parameters - On a new data set, the program will set the "Password - Max Attempts" parameter to 6.

CHANGE CLERK - When a different clerk logs in, the program will now escape out of the current function in order to update the new security level being used.

TRN - KEYPAY - Recurring Payments stored in the KeyPay program (originally "authorized" using the Keystroke Payment Module) will be removed whenever the payment on the recurring transaction or the entire recurring transaction is deleted.

LOGO - DATA CONVERSION - When converting data from previous versions, the program will now ask to move payments attached to recurring transactions that would be processed through Mercury to be moved to KeyPay.

LOGO - DATA CONVERSION - Purge Credit Card Data - If any payment type appears that it may hold credit card account numbers, then the program will permanently mask ("Purge") the payment's Reference and Expiration Date fields. If a payment has the "Parse Reference" parameter turned On or has an Authorization Method that processes payment cards, then it will be marked as one that needs to be purged. Before the purge process starts, the program will first display messages stating what it is about to do and allow this step do be skipped. Skipping this process will display warning messages stating that these steps need to be done in order to comply with PCI requirements.


** 02/02/09 - v6.30 Build 10

- AR - Aging information on Client screen was not being displayed correctly. It was including Finance charges in the wrong places.


************************ END OF VERSION CHANGES/FEATURES ********************

******************************************************************************
** Program changes made prior to v6.30 **
** Changes prior to 02/02/09 - 6.30 build 10 are in the file README62.TXT **
** Changes prior to 01/26/07 - 6.20 build 10 are in the file README61.TXT **
** Changes prior to 03/28/06 - 6.10 build 10 are in the file README6.TXT **
** Changes prior to 05/03/05 - 5.20 build 21 are in the file README52.TXT **
** Changes prior to 05/10/04 - 5.10 build 10 are in the file README51.TXT **
** Changes prior to 01/03/03 - 5.00 build 20 are in the file README5.TXT **
******************************************************************************

Keystroke POS software is owned by Specialized Business Solutions ("SBS") of Long Beach, CA and is protected by United States and international copyright laws (Copyright (c) 1987-2010. All rights reserved).

For more information about Keystroke POS or other products published by Specialized Business Solutions, call (800)275-4727 or (970)262-1720 or visit our web site at www.KeystrokePOS.com
------------------------------------------------------------------------------

******* The most recent changes are listed near the top of this file *******

MODULES: (Description of Codes used in this document)

Name

Code

Windows

Logo Screen

LOGO

LOGO.DLL

Sales Manager

TRN

TRN.DLL

Database Manager

DBM

DBM.DLL

Variance Module

VAR

VAR.DLL

Purchase Manager

POR

POR.DLL

Report Manager

KSR

KSR.DLL

Label Manager

KSL

KSL.DLL

Account Receivable

AR

AR.DLL

Configuration Manager

CNF

CNF.DLL

Closeout Manager

CLOSEOUT

CLOSEOUT.DLL

 

v4.2 Report Manager

RPT

RPT.DLL

v4.2 Label Manager

LBL

LBL.DLL

Store Link

STR

STR.DLL

Matrix Manager

MTX

MTX.DDLL

General Ledger Link

GLLINK

GLLINK.DLL

CYMA Link

CYMA

CYMALINK.DLL

Importer

IMP

IMP.DLL

Production

PROD

PROD.DLL

Script Editor

SCRPT

SCRPT.DLL

Forms Editor

FMTR

FMTR.DLL

 

Mercury Payment Server

MERS

MERCURY.EXE

Mercury Payment Service

RPT

MERCSVC.EXE



Keystroke POS Point of Sale Software

Home | Products | Support | Dealers | Downloads | Search | Contact | Questions?
Tech Support | F.A.Q.

|