Difference between revisions of "ITrack/Enterprise/Changelog"

From ISoft Wiki
Jump to navigationJump to search
Line 1: Line 1:
=Release 12.7=
=Release 14.0=
==Customer (17569)==
* Fixed: (case 22484) an issue where a user without permission to edit customers might get an erroneous change detected message when they open the customer screen.
 
==Global Settings Extension (17563)==
* Fixed: an issue where date report parameters with fixed values might not get formatted correctly.
 
==Interchange (17563)==
* Fixed: if the user hits enter when they're in the 'search area' of the interchange screen, a search will be performed, but hitting enter when entering interchange records down below will treat the 'enter' as a spreadsheet enter.
* Fixed: a crash that could occur if someone doubleclicked an item with a dropdown where an invalid model was in a dropdown.
* Removed: (case 22494) the sales meta-data no longer looks at non-stocked item sales.  This speeds up sales data loading.
* Added: the sales meta-data now also looks at work order usage history.
 
==Report Viewer (17563)==
* Fixed: an issue where date pickers for report parameters might show the year 1899 as the default value.
* Fixed: an issue where date report parameters with fixed values might not get formatted correctly.


==Sales Orders (17681)==
* Fixed: (case 18835) an issue where sales orders for customers who required PO #'s wouldn't pop up the requirement dialog if they weren't buying at least 2 items.  Now, the PO # field blinks and the warnings pop up if the invoice subtotal is greater than $0.
==Vehicles (17566)==
* Added: (case 23034) misc parts on a vehicle teardown will no longer copy the year/make/model/VIN/body style from the vehicle when it is changed.  Only Standard parts will automatically copy that information to all associated parts.
==Vendor (17562)==
* Fixed: (case 21814) an issue where loading a vendor, then loading another vendor without clearing the screen in between might cause attachments to move between the vendors.
* Fixed: minor issues with button sizing.
==Work Orders (17568)==
* Fixed: Restored department that was removed in a previous change
* Fixed: (case 21883) an issue where users could delete items off of a closed WO.
=Release 12.6=
==Payment Entry==
* Fixed: an issue with negative values (case 22433)
==Purchase Orders==
* Fixed: (case 21865) an issue where POs would automatically be marked as done receiving when a user without permission to receive inventory would save them after all quantity was received.
* Fixed: (case 22419) an issue where transfer orders that were created due to a multi-store purchase from inventory overview would not properly update the 'on order' and 'on hold' quantities.
==Reports==
===Pick List===
* Fixed: Excluded cores from the  Pick List.
==Sales Orders==
* Fixed: (case 22423) an issue where the various blinking static fields stopped blinking correctly.
=Release 12.5=
==Customers==
* Fixed: (case 21196) an issue where customer default invoice terms were not being selected correctly when a customer was loaded.
==Parts==
* Fixed: the location field is now larger
==Work Orders==
* Fixed: (case 21188) an issue where the user could not view the part requests on voided or closed WOs.
=Release 12.4=
==Purchase Orders==
* Fixed: (case 21052) an issue where showing the returns dialog could cause a crash.
==Sales Orders==
* Fixed: (case 21102) a query error that would be thrown when the user sent an item from the warehouse management screen to an inventory adjustment document if that item had been written down more than once previously.
=Release 12.3=
==Purchase Orders==
* Fixed: an issue where the return dialog defaulted to just showing purchases from today instead of the last 90 days, as intended.
* Fixed: (case 20893) an issue where some of the right click options in the return dialog were not working.
==Vehicles==
* Fixed: (case 20955) an issue where the hidden field vehicle.dismantled was incorrectly being set by the 'purchase date' field instead of the dismantled date.
=Release 12.2=
==Customer==
* Fixed: (case 20872) an issue where the customer option list wasn't displaying the options it should show.
==Parts==
* Fixed: an issue where the condition field on the parts screen was not in the proper location in the tab order.
* Fixed: (case 20728) an issue where sending parts from the parts screen to the part modification screen wouldn't load anything up.
* Fixed: (case 20896) an issue where parts/vehicles wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
==Vehicles==
* Performance: saving large teardowns can now be as much as 3 times faster, especially on slow connections.  Many queries that were being run to see if inventory on the teardown had been modified since it had been loaded has been combined or eliminated.
* Fixed: (case 20849) an issue where, if the user changed a vehicle's status, user status, or (especially) location, then choosing to cascade that change to all associated inventory records, that change might get rolled back if there were changes to the same items on the bids/teardowns tab.
* Added: if the user cascades location changes from a vehicle to parts on a teardown, that change is now immediately reflected on the teardown screen without having to reload.
* Added: the retail price in the location/status cascade dialog is now right aligned and sorts correctly.
* Fixed: (case 20896) an issue where parts/vehicles wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
=Release 12.1=
==Purchase Orders==
* Fixed: (case 20857) an issue where the 'core exchange' column in the POs return dialog was hidden, making it impossible for the user to specify that a return associated with an inherent core charge was an exchange instead of just a credit.  This issue was introduced in version 12.
==Sales Orders==
* Fixed: (case 20854) an issue where opening the return dialog for a saved SO might show the saved line items on that SO twice.
=Release 12.0=
==Highlights==
==Highlights==
* Added: all print jobs, successful or failed, now get put into the report print queue (this can be reviewed on the report viewer screen)All print errors can be reviewed here, print jobs can be reprinted/retried, and total execution time can be reviewedThis will help improve print speeds in the future.
* Brand new ability to accept payments through external credit card swipe terminalsTalk to ISoft for more information about compatible swipe terminalsIntegrates with the sales order and customer screens.
* Improved: all print previewing has been improved. Cancelling/reprinting a preview now happens faster.  All errors are reported in the standard ITrack error dialog.  All print previews now go into the print queue.
* Better support for duplicate attachments on all attachment interfaces.
* Added: reports in the report viewer can now be marked as 'favorites'.  This is a per-user setting so that each user can remember the reports they often print.
* Customer and vendor searches are faster and date based searches are much easier.
* Added: various improvements to the report viewer screen's presentation.
* Tooltips and easier flow on the interchange interface
* Added: whenever the user performs an advanced print operation, they can easily choose print quantity as well as whether they'd like to print the job or email/save a pdf (email/save require the advanced print server solution).
* Ability to quickly update inventory to the last price it was purchased for on POs
* Added: the parts and vehicles screens now show a floating attachment preview dialog.  With this, the user can easily view images for the current part or vehicle without having to go to the attachments page.  This popup can be located on a second monitor if the user wishes.
* Some speed improvements to part smart searches
* Added: there is now a global hotkey (editable in the configure->hotkeys dialog) that, when held down during a print job, will pop up the advanced print dialog.  This makes changing print quantity or emailing any print job easy.
* Transaction list date filters can now move forward when they are run later, as well as support for date ranges like 'This month', 'Last Year', etc.
* Changed: the way accounting is saved has been changed to make gl reports clearer.
* Attachments can now be added to documents
* Added: each store can now have a remittance address in addition to its street address.
* Added: the returns dialog on the sales order screen has been merged with the one on the purchase order screen so that each area got all the benefits the other had.
* Added: sales orders now allow the user to specify a reason for the return.
* Changed: many screens got adjusted so that whether the user has done a normal search or a location specific search, results are sent to other screens in a consistent way.
* Added: inventory can now be specified as single quantity items.  In the future, this will signify items that cannot exist at multiple locations.
 
==Tools/Controls==
* Performance: upgrades to our collections that (in some cases) eliminate as much as 85% of the time spent in some loops.
* Added: support for icons on 'push-like' buttons.
* Added: support for typeable columns in lists can now support a 'maximum length' for the data that the user can enter.  If the user enters more than this, they hear a beep and are stopped.
* Performance: formatting of list text has been sped up somewhat.
* Added: a shared city/state/zip field group to consistently handle all areas where these linked fields should look one another up.
* Fixed: an issue where attachment interfaces would not lock down correctly in some scenarios.  Also fixed an issue where the public checkbox wouldn't work correctly if there was more than one check in the list.
* Fixed: an issue where custom "ok" message boxes wouldn't have their custom button text shown.
* Fixed: an issue where times containing midnight might save incorrectly.  Also an issue where date/times might save as 1899-12-30
* Added: doubleclicking an item in a tree control now toggles the expansion of that item.
* Fixed: an issue where the list footer would become invisible in some scenarios.


==Accounting==
==Accounting==
* Changed: (case 18825) the way gl transactions are built has been completely redone.  The main upshot from this is as follows:
* Changed: removed the code that disabled the ability to set recreated gl entries to a previous dateThis was disabled due to complexities between SOs and WOs.
  1. When a SO is saved/finalized/voided, all payments attached to that invoice as well as all external WOs that are on the SO have their accounting put into the same gl transaction.  This makes it easier to relate all the 'activity' of the invoice in one place.
  2. Now, there are many gl transaction types that represent all the areas of the software the user could trigger accounting from.  This will make it easier for accounting reporting to say more exactly what the user did to cause the activity.  For example, a single invoice could have multiple gl transactions over its lifetimeThe following could  be the example transactions for a single SO: "Sales Order Saved", "Sales Order Finalized", "Sales Order Reopened", "Sales Order Finalized", "Sales Order Voided".
* Fixed: an issue where voiding payments was incorrectly attaching the balancing entries to the original transaction, possibly at the original transaction date.  Now this gets a new "Payment Voided" transaction at the current date.


==Appraisals==
==Common Resources==
* Changed: (case 19419) by user request, the 'current quantity on hand' retrieved as part of sales appraisals will now limit the matched results to just items that match the category of the current item (if it is filled out).  Otherwise, all categories are considered.
* Fixed: (case 22440) an issue where the popup attachment dialogs might not correctly add new attachment files to unsaved items.
 
==Approvals==
* Fixed: (case 18952) an issue where the stock category was not correctly being displayed when price rules were being loaded.  The value of All would save but display as Standard on the next load.
* Fixed: an issue where changing the document type of a price rule was not being saved.
* Fixed: another issue that was causing part types from being saved on price rules.


==Crystal Reports Extension==
==Credit Card Processing==
* Added: (case 17915) printing reports now logs successful print information as well as errors to the print queue.
* Added: a new interface for integrating with a some new Heartland credit card hardware.
* Added: proper support for 're-printing' items in the report queue. That way, they won't get another entry in the queue.
* Added: a new 'configure terminal settings' options page.
* Added: print previewing now inserts an 'in progress' entry in the print queue, which is overwritten up by the report viewer screen.
* Added: if the user attempts to process a credit card and no terminal is configured, the user is prompted to configure these settings.
* Added: (Case 18265) the 'choose printer' dialog now has the ability to let the user choose to email a report instead, or archive it on the serverIn addition, the user can have a print get 'delayed' in the queue if they wish to schedule it for later.
* Added: if the user fails to process a credit card because there was a problem connecting to the terminal, they are prompted to retry or configure terminal settings.
* Added: the archived reports subdirectory now has a default value per report type.  This way, all saved reports will automatically be saved into sorted subdirectories.
* Added: the response from a successful credit sale now returns the approved amount.
* Removed: if the user performs an advanced print, the windows printer dialog no longer shows upInstead, we show the ITrack choose printer dialog, which allows choosing to email or archive.
* Changed: the default timeout in the credit card options dialog is now 0 (unlimited) since it seems like the best bet.
* Added: (case 18265) a global hotkey that controls whether to automatically show the advanced print options popup during any print. This defaults to ctrl + left click when printing, but can be rebound in the hotkeys dialog.
* Added: a new page to edit->options that allows the user to configure credit card terminals.
* Added: support for auto-complete options in the email dropdown.
* Added: an 'edit payment from terminal' dialog which is a staging area the user will see that will provide information about the current status of accepting payment from the customer through a credit card terminal.
* Added: if the user enters a new email address in the dropdown, future email operations will 'remember' that option.
* Added: "Test connection settings" button to the configure credit terminal page.  When the user clicks it, it saves the current settings and attempts to connect to the terminal with the current settingsThe user is told whether this succeeded.
* Fixed: newly created report queue entries are now correctly cleaned up, avoiding memory leaks.
* Added: the user can now cancel an in-progress connection to the credit terminal.
* Changed: reprinting a report queue entry no longer updates the 'created by user'.
* Added: better error reporting to the user for failed payment connections.
* Fixed: crash that would occur when cleaning up report queue entries.
* Added: configure credit terminal button to the 'accept credit payment' dialog, this allows a user to easily fix any configuration issues while accepting payment.
* Changed: if the user chooses to email or archive a report, all reporting code is skipped.
* Added: if the customer chooses a tender type, the user interface will be changed to reflect this choice.
* Added: support for delayed printing and emailing. If a print job is going to be printed in the future, the print operation is skipped and logged in the queue.
* Changed: standardized the error messages shown to the user.
* Changed: the error report field in the report queue can now go up to 1000 characters instead of being limited to the previous 250 characters.
* Fixed: an issue where sometimes no status message would be shown if the user cancelled between requests to the terminal.
* Added: there is a new setting ("Printing"->"Advanced print management server installed"). The advanced printing dialog now deactivates various controls if this setting is off. Essentially, any controls that require report commander to be present are disabled.
* Added: many read-only fields returned by the credit card interface are now shown to the user for debugging purposes.
* Added: (case 19676) the advanced print dialog now has a quantity edit so that the user can easily change the print quantity without going into the windows printer dialog.
* Added: there is now a 'automatically close dialog on successful payment'.  This is a user settingWhen checked, it saves the user a click for confirming payment addition after the swipe completes.
* Added: report auto-updater now creates new reports with a category of "Report".
* Added: authorization # to the credit card dialog, as that is a useful piece of information during debugging.
* Added: Configure->reports page now has handling for setting a report category.
* Changed: if a payment finished successfully, the user can no longer edit amount or charge type.
* Fixed: (case 19832) an issue where exporting a report add script with parameter values could cause a query error.
* Added: the user can void a successful payment  now.  This will only work on payments that have not yet been posted.
* Added: the UI is updated in realtime as the customer chooses options on the swipe terminal.
* Added: when a payment is processed successfully, host code, transaction id, authorization #, name on card, and host trace number are all properly saved to the database.
* Added: 'cash back amount' is now returned by a successful payment transaction.
* Added: support for payment method selection.  Also, the payment method of 'auto select' is the default, and an appropriate payment method will be selected based on the card type and tender type.
* Added: store level default payment method for card payments that will be selected if no valid payment methods are found by name.
* Added: payments now save what transaction they were created by, if any.
* Added: payments now save a successful transaction's authorization number into the document/check# field.
* Added: support for SSL for communication over the Ethernet to the terminal.
* Added: support for viewing payments that are not editable.
* Added: short acct number is now always padded out to 4 digits.
* Added: support for negative credit payments (returns).
* Added: voiding a credit transaction now sets the document # field to empty so that it can be populated by a subsequent transaction.
* Added: since returns do not get authorization #'s, we now put host number into the document # field for returns.
* Fixed: an issue where cancelling while the user is being prompted for tender type could result in payments that stayed in an intermediate state.
* Changed: some error messages to be clearer.
* Added: since voiding payments is done by heartland reference #, and that is not as unique as an authorization number, there is now a step where we ask the terminal if the specified payment is still 'open' or not.  If it is not, the void operation is not attempted.
* Added: support for launching the CC payment dialog with the amount locked, which is useful in some cases.
* Added: support for tracking/remembering what type of entry mode was used, as well as whether a signature is required.
* Added: we now retrieve and store several fields required to be printed on receipts when chip and pin (EMV) transactions are made.
* Fixed: a bug where some chip and PIN features were not being correctly read from the terminal response.
* Added: if the customer uses a credit card to pay, they are now prompted to sign digitally.  If this operation fails or is cancelled, the receipt printout will have a signature line.
* Added: support for retrieving HREF (host reference number) from the payment information.
* Fixed: an issue where, when the user was prompted to choose between credit and debit, the prompt was being cut off.
* Added: support for 'PIN Verified' status for debit card transactions.
* Added: support for automated signature collection through the S300 hardware, removed custom signature collection.
* Added: support for automated prompting the customer between credit/debit, removed custom choice.
* Added: we now support the CVM return from the S300 hardware which is the way the customer verified the payment (EMV only).
* Fixed: an issue where 'user choice' tender type wouldn't automatically select Credit if the user chose credit.
* Added: a voided transaction now overwrites the host reference number of the void operation.
* Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds.
* Added: support for 'PIN Verified' status for debit card transactions.
* Added: support for automated signature collection through the S300 hardware, removed custom signature collection.
* Added: support for automated prompting the customer between credit/debit, removed custom choice.
* Added: we now support the CVM return from the S300 hardware which is the way the customer verified the payment (EMV only).
* Fixed: an issue where 'user choice' tender type wouldn't automatically select Credit if the user chose credit.
* Added: a voided transaction now overwrites the host reference number of the void operation.
* Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds.


==Core Management==
==Crystal Reports==
* Fixed: (case 19052) an issue where typing into the part lookup on the customer cores (filter at the top) or returned cores (core bank lookup) tabs, if the user was taken to search, any result they chose would not be returned to the screen correctly.
* Added: (case 20389) the report adder script export now correctly includes the fileid and category in the ON DUPLICATE KEY SET section.
* Changed: the part filter field on customer cores has been modified to work more like the lookups on other screens.  This should make the usage of the screen more obvious than before.
* Fixed: (case 20389) an issue where clicking "Replace" when adding a new report file in it would instead leave the previous report file in the system.
* Changed: (case 17587) the document # column in the customer cores tab has been reformatted to match the format of the returned cores tab.
* Fixed: (case 20389) the report adder script export now has a query that attempts to find 'empty' AU reports and replace them instead of inserting a duplicate.  This will no longer be necessary once report.filename becomes unique.
* Removed: (case 17587) the document # columns no longer show document line item #.
* Fixed: an issue where, if the user showed the advanced print dialog, previewing the report would not work.
* Changed: new reports created from the auto-updater are now created as not user visible so that they wont' show in the report viewer until the database update is run.


==Customer==
==Customer==
* Fixed: (case 18861) an issue where the user could type in an invalid tax item name and the value would not be cleared before saving, leading users to believe a valid value would be saved.
* Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
* Fixed: (case 18861) an issue where no tax item selected was being saved with an invalid value (now it is correctly set to NULL).
* Fixed: (case 20872) an issue where the customer option list wasn't displaying the options it should show.
* Added: (case 18825) creating finance charges now falls under a gl transaction type of "Finance Charges Finalized".
* Added: the payment dialog now shows the external payment transaction's reference number if the payment was entered through a payment terminal.
* Fixed: (case 18961) an issue where the Save & New button did not clear the screen after saving, making it seem as though nothing had happened.
* Added: a 'card' button that launches a payment terminal interface dialog for accepting credit and debit payments on account.
* Fixed: (case 19108) if a new customer was created without the user going to the tax/payment info tab, the default invoice terms would not be saved correctly.
* Added: if the user changes the amount of a payment such that it no longer matches the amount of the external transaction, they are presented with a warning popup that they are causing the values to mismatch between original transaction and customer credit/accounting.
* Fixed: (case 18794) an issue where hitting Save and Clear on a customer with attachments, then creating a new customer could 'move' those attachments to the new customer.
* Fixed: (case 21196) an issue where customer default invoice terms were not being selected correctly when a customer was loaded.
* Added: the credit card payment button is hidden if the credit card module is not loaded.
* Fixed: (case 22484) an issue where a user without permission to edit customers might get an erroneous change detected message when they open the customer screen.
* Added: (case 20883) the print statement dialog now has an advanced print option for specifying print options.
* Added: (case 20883) the print statement dialog now has an email button.  Hitting that button automatically fills out the print dialog with the customer's email address.
* Added: (case 21379) there is now a permission that controls whether the user can change the total of an existing payment.  This is to restrict situations in which the user can accidentally do something to a saved payment that changes the accounting impact after the fact.
* Fixed: (case 23012) an issue where the user could possibly cancel a payment after accepting payment from the credit card terminal.


==Customer List==
==Customer List==
* Fixed: an issue where searching by customer website would throw a database error.
* Changed: position of controls on the screen has been standardized with other screens.
* Fixed: (case 18945) a database error that would occur if the user was searching for customers at a specific store ("Customers For All Stores" is unchecked) and they were searching by an address field (due to the recent additions allowing the system to simultaneously search alternate addresses).
* Added: date based searches now use a date-time picker to avoid ambiguity of date formatting.
* Performance: date based searches should now be slightly faster.
* Fixed: an issue where printing the customer list wouldn't work if the user chose to preview the report.
* Changed: (case 21158) some recent changes added searching alternate addresses and significantly slowed down customer smart searches.  The customer smart search has been rewritten to be much faster.  Also, if the user performs a smart search, the results are ordered by how well they match the user's input.  Smart searches are now 'full text' searches meaning words can appear in any order.  However, this has the downside that searching for words that start with wildcards will not work ("*obert" will not match "Robert").  Also, the order of the results of a smart search will not carry over to printing the customer list.
* Fixed: some issues where hitting "Show All" would not work correctly.
* Fixed: (case 15426) an issue where the user's column order and widths were not saved when the user closed the screen.
* Added: (case 12093) there is now a permission that controls whether the user can merge customer accounts.  It defaults to off for all users.
* Changed: (case 23171) customer smart searches with multiple words will now automatically require all words to be present in the results.
* Fixed: customer smart searches now correctly order results with the 'best' matches at the top.


==Database==
==Database==
* Added: support for new 'time elapsed' column in the reportqueue table.
* Added: (case 19307) a new table for tracking what default printers should be used for various report type categories.  These entries can be per-user, per-plant, or per-productcode (or any mix of those 3).
* Added: (case 18727) support for delayed print operations in the print queue (reportqueue.waituntil).  There is also now an index on the fields that the report server scripts uses to find printable jobs.
* Added: f_get_report_printer returns the printer to be printed to for a specific report type based on input criterion.
* Fixed: the triggers and functions that keep locations up to date no longer use a value of -1 to represent 'no location'This was causing issues on some databases that were in strict modeNow, the system always uses NULL.
* Removed: a couple indices on the salesorderdocument tableThey are not very selective and were preventing more useful indices from being used in some scenarios, such as core management loadingThis table is so small, indices will probably not improve load speed any anyways.
* Added: (case 18825) several previous gl transaction types have been retired and many new ones have been added.  This is part of a push to make gl transactions a descriptive and useful way to review accounting.
* Fixed: (case 20389) report.filename is now unique.  This resolves issues where duplicate reports could could exist on the system due to the auto-updater.  In order to do this, duplicate reports got their filename modified to have a "_DUP_<reportid>" added to the endThese duplicates should get cleaned up at some point, as the auto-updater won't maintain them.
* Removed: the old comments field in gl transactionsIt was generally just used for the same purpose that we now use type for.
* Changed: renamed interchangepricing to DEPRECATED_interchangepricing, as this table is not referenced by the application.
* Fixed: (case 18861) customer.taxitemid has been corrected to have a value of NULL instead of -1 for those rows where -1 was being inserted.
* Fixed: an issue where an inventorysetting record that could cause an error on part modification (part of the version 12 update).
* Fixed: (Case 18852) PO adjustments that were created before version 11 wouldn't show up on their posting correctly anymore because of the innodb changes.  This fixes it.
* Fixed: an issue where the popularity code was not editable on the part modification screen.
* Added: (case 18001) salesorderline.customerprice, which is a transactionalized copy of the price the salesman was presented with by default.  All historical sales have had their value set retroactively for future reporting.
* Added: a new table: paymentterminaltransaction which will contain information about all credit card transactions handled by the system, including all fields that must be printed on the receipts.
* Fixed: (case 19027) the f_invoicepaid function had different versions on different databases.  This should standardize and speed up the function slightly.
* Added: Voided status for payment terminal transactions.
* Performance: (case 19032) customer balance calculating functions were being too specific about what index to use.  Now, they will use whichever one is best.  This showed some minor speed improvements on very large customer activity.
* Added: payment terminal transactions now save host code, which is apparently required to be on the receipt, where appropriate.
* Changed: maximum make length increased from 15 to 50 characters.
* Added: payments now remember the terminal transaction that spawned them, when appropriate.
* Changed: inventory make length increased to match the 50 character limit of other tables.
* Added: an index to inventoryserial for looking rows up by status.
* Fixed: (Case 19047) an issue the user would get a database error when deleting locations.
* Added: (case 21158) a full text index to customerlist, which allows us to speed up customer smart searches significantly.
* Added: (case 17859) a new permission to control whether the user can print documents that have outstanding price violations.  By default, this is on for all users who could normally edit a SO.
* Added: (case 7280) a new table for associating attachments to sales orders.
* Added: (case 17070) support for a user-entered 'return reason/code' that can track 'why' an item was returned.
* Added: support for attachments on POs, TOs, and WOs.
* Removed: a view that was created for a previous report.  It is no longer in use and it not well optimized.  All reports should use f_get_attachment_id instead.
* Added: support for a verification status of PIN Verified for debit card transactions.
* Removed: (case 3886) the after update trigger on vehicles has been removed.  This had been a previous way to keep year, make, model, etc synchronized between vehicle and inventory.
* Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refundsBoth default to on for any user who could previously void payments in the system.
* Added: (case 6507) a search option to inventorysetting to allow the user to search for parts by the tag # of any collections that item is in.  This makes printing tags for all collection members easy.
* Changed: the right click list graph template to no longer show scrollbars when rendered inside an embedded IE window.
* Fixed: (case 17943) selling/deleting a whole unit should reject all open bids.  This solves issues where users would accept bids after the vehicle was sold, marking the vehicle as available againThis should trigger if the user sells the whole unit on a SO, consumes it on a WO, or returns it to the vendor on a return PO.
* Fixed: (case 22371) an issue where clicking to show/hide series on a stacked column graph without trendlines would not work correctly.
* Changed: column order rearranged in the inventory table to make more sense.
* Fixed: an issue where showing an hiding a series with a point type other than Circle would cause the newly unhidden points to be circular.
* Added: (case 6656) there is now a 'singlequantity' flag on inventory.  This flag will track items that should never have a quantity greater than 1 and should never have more than one valid location.
* removed: an unused setting.
* Updated: all previous vehicle whole units set to 'Single Quantity' Parts.
* Added: (case 22332) Sales Order transaction list search now has a "Condition" option for both search filter and results.
* Fixed: an issue where inventory.isacore allowed NULL.
* Fixed: an issue where the parts screen might continuously say that the location id was being changed and the user had to log a reason why even though it was not changing anymore.
* Added: (case 18391) vehicle bids now store an 'assigned to' user as well as the date they were closed and what user closed them.  All closed bids have had their date closed set retroactively, where possible.
* Fixed: the chart template now supports aggregate column charts.
* Added: (case 17070) a new table where users can define a list of 'return codes/reasons'.  These can be chosen between when performing returns on an invoice.
* Fixed: chart data with invalid X axis values is now ignored.
* Added: (case 17070) a new permission controlling who can manage return codes.
* Added: (case 20434) support for a new table (charttemplate) that stores shared chart templates.
* Added: 3 initial return reasons to handle the common cases.
* Added: a new permission controlling whether a user can manage saved chart templates.
* Fixed: the right-clicking graphing template has been modified so that if the user uses a string column as the x axis of a scatter graph (but the strings contain numbers), the graph should look correct.
* Added: (case 22811) a new status to inventoryserial called 'On Order', for unreceived PO serials.
* Added: (Case 19658) Schema for logging search times to log_search.
* Changed: all unreceived serials on open purchase orders have had their status moved from In Transit to On Order.
* Changed: (case 19042) the previous part search column "Entered By (user id)" is now no longer searchable and has been replaced with "Entered By User" which allows the user to search by user name.
* Fixed: (case 22824) an issue where the model lookup on the inbounding import might throw a database error.
* Added: comments to report table columns.
* Added: (case 12093) a new permission for merging customers.
* Added: new column for tracking a report's category, separate from its type.
* Fixed: (Case 21613) Added support for auction cancellations.
* Added: speed index to the report table based on name.
* Added: support for a verification status of PIN Verified for debit card transactions.
* Fixed: (case 12267) an issue where v_pickable_jobpart was not defined correctly, causing most items to be unpickable.
* Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds.  Both default to on for any user who could previously void payments in the system.
* Added: (case 19865) report.name is now enforced unique per report type.
* Fixed: a misspelled column name in a location delete trigger.
* Fixed: (19810) an issue where several sales order job fields wouldn't aggregate correctly on the totals tab of the transaction list.
* Added: (case 19467) notes for why a report subscription exists


==Deliveries==
==Deliveries:==
* Changed: by customer request, the 'Skip Delivery' button on the picking tab has been renamed to Skip Pick/Delivery to more clearly denote that the items will not be picked.
* Fixed: (case 4926) a crash that would happen if the user removed the last item from a run sheet.
* Fixed: an issue where the first time the user clicked on the document list would be ignored.
* Fixed: the document list would load more times than necessary, slowing things down.
* Fixed: a crash that could be caused if the user clicked the checkboxes in the document list too fast.
* Added: (case 14353) the picking page now has a shipping method filter.  Choosing something in this dropdown will filter to match just SOs, POs, and TOs with that shipping method.  Only the shipping methods the user has set up on the configuration tab will be shown here.
* Added: (case 14353) the shipping method column in the list can now be used to quickly change the shipping method of the selected document without opening that document on the document screen.  If the user switches to a shipping method that is auto-picked, they will be alerted that this will cause the items to be picked automatically and that the list should be refreshed.
* Changed: all the dropdowns on the picking tab now allow auto-complete as the user types.
* Added: 3 new permissions that control whether the user can edit the shipping method on TOs/POs/SOs that the user loads onto the screen.


==Ebay Extension==
==EBay Extension==
* Added: (Case 17835) There is now a last updated date displayed on the auctions page of the eBay module
* Fixed: (Case 21050) ebay image uploads option hidden.
* Added: (Case 17835) Invoicing from eBay will now create a basic customer record if no customer with a matching email exists and the Setting "Ebay Create Customer" is set to true and receive at least the email from the ebay transaction. 
* Fixed: (Case 21047) Listing durations now save correctly and show correctly.
* Added: (Case 17835) Added a column "Invoiceable" that shows the count of completed transactions with no invoiceids associated(an invoice id is not added until ebay is closed and re-opened, so this value will not either)
* Fixed: (Case 21245) The auction and transaction tab now both load auctions based on auction start time.
* Fixed: (Case 17835) Fixed an sql error when updating ebay auctions.
* Fixed: (Case 21246) Freight shipping cost is no longer 8,000,000,000, but is 0.00 as intended.
* Fixed: (Case 17328) Added 'Freight' as a shipping option.
* Fixed: (Case 17479) Image counts on the listing screen of eBay should now be accurate regardless of whether the image is a url or a file.
* Fixed: (Case 17945) Fixed a crash when launching ebay without a user account.
* Fixed: (Case 21212) Global Shipping now has a global default.  a checkbox is added to the global config screen, as well as to the edit dialog for a specific listing.
* Added: (Case 19012) Added a transaction tab
* Fixed: (Case 21210) We can now add up to 12 images to an ebay listing, not just in the description anymore!
* Fixed: (Case 19012) Filtering now works correctly.
* Fixed: (Case 21036) Empty dropdowns in the edit dialog no longer cause crashes on okMissing items are bolded, but are obviously still not being noticed.  If the user tries to list an item with empty dropdowns, it will throw up an ebay error dialog like it does for other things (like a missing description) instead of crashing. 
* Fixed: (Case 18840) Freight shipping now overrides any cost or free shipping settings
* Fixed: (Case 21210) Fixed a bug where listings with more than twelve images would upload no images instead of just being limited to the first twelve.
* Fixed: (Case 19012) Now hiding the ItemID column, since users have no use for it.
* Fixed: (Case 21475) Now with support for auctions in addition to the already supported fixedpriceitem listings.
* Fixed: (Case 19012) Initial load speed dramatically improved.
* Fixed: (Case 21613) Added support for auction cancellations as well as the necessary database column for this feature.
* Fixed: (Case 19305) Open Screen permission is now correctly followed.
* Fixed: (Case 21613) Error handling added for auction listings.
* Fixed: A query error was corrected regarding invoices.
* Fixed: (Case 21611) Implemented error handling from sales and quotes screen.
* Fixed: (Case 18603) eBay can now create new customers with the standard defaults.
* Fixed: (Case 18035) Added a setting, configurable from the config screen, for whether the BuyItNow price is retail + core or just retail.
* Fixed: (Case 22231) Global Shipping setting now pulls into the edit details screen and the listing.
* Fixed: (Case 21971) Free shipping now correctly disables cost and sets it to 0 in the edit dialog. Unchecking re-enables the cost column for modification, but does not revert the cost change.


==Common Resources==
==General==
* Added: a generalized version of the picture viewer dialog used on search.  This will be usable by other screens that would like to show image attachments for parts and vehicles.
* Added: the user can now drag items to the edge of all list controls that support drag and drop to scroll the list.
* Moved: the view pictures dialog from search has been moved to common resources so it can be shared between screens.
* Fixed: if the user drags anything other than files into an attachment area, the 'no drop' icon is shown.
* Added: the title text of the pictures dialog is now more descriptive, and shows total number of images in the title.
* Added: if the user drags a file over an attachment area, the list's attachment system is disabled so that the user can drop files into the list as well.
* Changed: the last location of the pictures dialog is no longer stored in the ini file.
* Changed: when the user drags items within a list control, they are stored in a special clipboard format so that other applications don't think they can get them.
* Added: the picture view dialog now uses a type of image cache that holds onto previously loaded file information.  This should make load operations faster if the user goes back and forth between items.
* Fixed: the page up/page down buttons seemed to do the opposite of what was expected when scrolling through images.
* Added: support for showing images on unsaved parts and vehicles.


==Global Settings Extension==
==Global Settings==
* Fixed: an issue where the print queue page on the report viewer screen would incorrectly ignore the 'show printed' checkbox.
* Added: (case 20434) support for saved chart templates in right-click graphs.
* Added: support for print logging in the report queue.
* Added: support for mouse buttons in key bindings.
* Added: doubleclicking a keybinding now allows the user to immediately rebind that action.
* Added: an auto-complete handler that looks up all historical email addresses of users, customers, customer alternate addresses, and previous emailed reports.
* Changed: to support the new way that search results are sent between screens, the ebay handler had to be updated.
* Added: support for various new report viewer features.
* Performance: when a user closes a screen, column order is now saved with an INSERT ON DUPLICATE KEY UPDATE instead of REPLACE INTO, which will reduce traffic and disk writes.
* Fixed: (case 19255) an issue where user settings would not save any changes if the user logged out and logged back in before closing the application.


==Home==
==Graphing==
* Fixed: an issue where, if WO type of "All" wasn't first in the list alphabetically, it would not correctly look at all types.
* Changed: (case 21229) to make the graph options dialog easier to use, the chart type dropdown is now a list with graph icons.  Also, many of the controls in the dialog now have tooltips and clearer names.
* Changed: (case 18791) the work orders tab now uses tagnumber instead of vendorcode and partnumber for all work order master parts.  This should resolve issues where some users would get inconsistent labeling for master parts
* Added: (case 14508) the graph options dialog now has a preview chart pane next to the chart options.  This allows the user to see what the graph will look like without having to generate the final graph.  The chart automatically refreshes whenever anything changes that affects it.
* Added: tooltips to all columns headers as well as the body of the work orders tab.
* Added: a 'preview in external browser' button that shows the chart in an external browser window without having to close the dialog.
* Added: the user can now click into the description and notes fields on the work orders tab, making it easier to read multiline entries and copy text out.
* Added: an instructions field that tells the user what they still need to do before the current options can generate a chart.
* Added: (case 16389) 2 new columns to the work order tab: % Done and Job Status% Done shows a value that represents what % of the jobs on the WO are now at status Done.  The Job Status field shows the status detail of all jobs on the WOThese fields show VOID if the WO is void and the status shows as FINALIZED if the WO is closed. In all other cases, the columns receive the most appropriate status colorization to match the colors used for statuses on the WO screen.
* Added: a series point shape column so that the user could choose what shape the points will be.
* Added: trendline dropdown where the user can choose what degree of trendline they'd like to add to the graph for each series.
* Added: the right click graphing dialog now has the following new features:
** Advanced mode: the user can go into 'advanced mode' when building a chartThis shows various extra options that may not always be required when generating a basic graph.  The user's selected mode will be remembered.
** Trendlines: the user can choose to display trendlines for each data series on the graphIf the user is in advanced mode, they can choose the type of trendline as well as whether the trendline's formula and fitness should be displayed in the legend.
** Point shape: (Advanced mode only) the user can choose the shape of the points in a line/scatter chart for better black&white printout or colorblind accessibility.
** Cumulative series: (Advanced mode only) the user can choose to make a data series cumulative, making it so that all values will include all previous values in the same series.
* Changed: current graph template has been modified to no longer show scrollbars in embedded IE windows (required a slightly bigger buffer around all sides).  The way the graph resizes has been optimized slightly to better use available screenspace.
* Changed: current graph template has been modified to properly handle cumulative data series, trendlines, point shape selections, etc.
* Added: an error message to chart generation that will stop the user if they choose a discrete (non-numeric, non-date) x axis for a line or scatter graph.  While these graphs technically work, they are not very useful.
* Added: (case 20434) support for saving chart templates as well as using saved chart templates.
* Fixed: an issue where the right click graph template would show unnecessary 0.00 points in line charts if the series was cumulative.
* Fixed: line charts with missing points are now smoother and interpolate between those points.
* Fixed: a crash when adding new saved chart templates.


==ITrack Online==
==Interchange==
* Added: any javascript errors encountered on any pages being navigated to will now be automatically suppressed on client systems, but not in testing.
* Fixed: if the user hits enter when they're in the 'search area' of the interchange screen, a search will be performed, but hitting enter when entering interchange records down below will treat the 'enter' as a spreadsheet enter.
 
* Fixed: a crash that could occur if someone doubleclicked an item with a dropdown where an invalid model was in a dropdown.
==libITSQLFramework==
* Removed: the sales meta-data no longer looks at non-stocked item sales.
* Fixed: the timestamps in the query log now use local times instead of UTC times.  Also, the values are formatted a bit more logically.
* Added: the sales meta-data now also looks at work order usage history.
* Fixed: (case 21159) an issue where changing the sub-interchange # of an application might not correctly change all other applications in the group if the rows were new.
* Added: tooltips to various controls on the screen to make it easier to use.
* Changed: the minimum size of the choose interchange # popup has been increased to attempt to solve issues where some of hte information was not visible initially.


==Login==
==Login:==
* Fixed: a minor flickering issue when opening up the configure->users dialog causing it to load slower.
* Added: support for a new permission for managing chart templates in right-click graphing.


==Options==
==Master==
* Added: the configure->Stores dialog now has an area for a remittance address and phone #.  By default, this is the same as the street address of that store, but the user can make them differ.  Soon, this information will show up on billing statements and invoices.
* Fixed: an issue where the thread progress dialog that showed "X/Y processes still running" would sometimes show an incorrect # of elapsed seconds if some of the tasks took a long time.
* Added: the configure stores dialog now uses a state auto-complete to populate the state dropdowns, which will speed up loading slightly.
* Added: changes to configure stores dialog to copy address information to the remittance area if the 'use same address' checkbox is checked.


==Parts==
==Parts==
* Fixed: (case 18858) an issue where the parts screen was setting locationid as part of its insert/update queries, when this field was supposed to be omitted.  It is handled elsewhere, and this was causing errors on databases with strict mode on (as virtual locations used a value of -1 which is no longer an allowed value.
* Fixed: (case 20163) clearing the parts screen now correctly sets the available and hold quantity.
* Fixed: (case 6663) the refresh button on the parts transactions tab now refreshes the transaction cache, so any newly created transactions will be found.  For speed purposes, the previous/next page buttons will not rebuild the cache.
* Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
* Performance: the process of building the cache of transaction history for the transactions tab has been sped up. This will make loading this information faster, especially on slower networks.
* Fixed: (case 20860) several issues related to tab order on various tabs.
* Changed: attachment management has been upgraded to a newer methodology that will be compatible with a new picture viewer pane.
* Performance: saving large collections/breakdowns can now be as much as 3 times faster, especially on slow connections. Many queries that were being run to see if inventory on the collection had been modified since it had been loaded has been combined or eliminated.
* Changed: several things about the header of the parts screen have been modified to introduce consistency between the parts and vehicles screens.
* Fixed: (case 20728) an issue where sending parts from the parts screen to the part modification screen wouldn't load anything up.
* Removed: the advanced page no longer checks to see if the enter key should work like tab.  This is to establish consistency with other areas.
* Changed: the save confirmation dialogs that are launched from many of the buttons and functions on the parts screen now look like the ones in use on the vehicle screen and some others (where the pages that changed are displayed)Also, the buttons have more specific verbs.
* Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screen.  It will allow the user to view part and vehicle images for the currently loaded part at a glance.  The dialog is the same one that has been in use on the search screen since version 1.  The user may position the dialog on another monitor or in unused spaceThe dialog is automatically hidden if the user goes to another screen.
* Changed: the save confirmation dialogs have had their phrasing adjusted to be more concise.
* Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
* Fixed: (case 20896) an issue where parts wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
* Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
* Fixed: (case 21206) an issue where the location dropdown was not wide enough.
* Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialog.  The default is "Ctrl + P".
* Changed: the change log dialog now puts newer entries at the top, like all historical logs in ITrack.
* Added: new tool tips for all header controls.
* Added: the change log dialog now puts the user's focus into the first new item, and uneditable items show their comment in a multi-line readonly edit.
* Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
* Fixed: an issue causing variance locations to be created when the user opened a part that had unreceived serials 'In Transit' on a PO.
* Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
* Added: (case 11280) the store dropdown at the top is no longer read-only.  This dropdown has 2 functions:
* Added: (case 6507) a button to the links page that performs a search for all members in the current collection.  This makes printing tags for all collections members easy.
** 1. on new (unsaved) parts, this allows the user to choose what store to create the part at.
* Fixed: an issue where, if there was an error while saving collection components, the user might not be able to correct the issue and save again.
** 2. on existing parts, this loads the part at the other store.  This makes it so that the user doesn't need to use the search screen to look at a part record at other stores.
* Added: (case 17595) as part of saving new collection component items (such as for assemblies), the user is warned if the tag #'s they enter match any existing items in inventory.
* Changed: (case 11280) the parts screen now only puts the user onto the aftermarket page when the user clicks the Replenishable stock type radio, and not when they load a part or switch plants on a part.
* Fixed: an issue where inventory tagnumber was saving only 20 characters, when it was supposed to be 50 characters.
* Added: (case 6656) a new checkbox on the advanced tab called "Single Quantity Part".  Parts with this checked attempt to enforce that their quantity never goes above 1 and they never have more than 1 valid location.  This represents 'discrete' parts that only exist once in any store (such as vehicles and most parts created from teardown).
* Added: (case 6656) 2 new errors on save if the user has 'Single Quantity Part' checked and the quantity on hand is greater than 1 or there is more than one valid location.
* Added: (case 6656) any 'new' collection components created as part of a collection (usually an assembly) will create all 'child' parts as 'Single Quantity Items' if their quantity is 1 or less.  This should make it so that most of these parts won't ever have to end up in a state where they have multiple locations when that doesn't make sense for such 'simple' parts.
* Fixed: (case 19678) an issue where Q&A on new serials was not saving correctly.
* Fixed: (case 19663) an issue where clearing the parts screen after loading a part with a single serial # would not clear the "Serial #" field on the part info tab.


==Part Configuration==
==Part Configuration==
* Fixed: a possible database error that could happen if the user entered a make longer than the maximum allowed make.
* Fixed: (case 16267) an issue where the user could see a database error if a part type had a category that didn't match the displayed category name by case only. Now the interface shows which categories are in use, ignoring case.
* Fixed: the user could not 'uncheck' the start/end date on part type messages.


==Payment Entry==
==Purchase Orders==
* Added: (case 18825) when payments/discounts/credits are saved, they are now put under a GL transaction type of 'Payment Batch Updated'.
* Added: (case 20388) if a purchased item has a price different than the replenishment cost on inventory, an attention icon is shown.  If the user double-clicks this icon, the inventory record will be updated.
* Fixed: (case 20857) an issue where the 'core exchange' column in the POs return dialog was hidden, making it impossible for the user to specify that a return associated with an inherent core charge was an exchange instead of just a credit.  This issue was introduced in version 12.
* Fixed: an issue where the return dialog defaulted to just showing purchases from today instead of the last 90 days, as intended.
* Fixed: (case 20893) an issue where some of the right click options in the return dialog were not working.
* Fixed: (case 21052) a crash that could be caused by returning an item to a vendor.
* Added: (case 7280) support for attachments on purchase orders.  The attachments dialog is automatically shown to the user if the document has any attachments.  Whether the user wants to view this dialog can be toggled with the attachment button, this preference is remembered.
* Added: attachment support to transfer orders.
* Fixed: attachment dialogs now correctly close on POs/TOs if the user switches screens.
* Added: the PO and TO attachment dialogs now properly hide themselves when the user switches document pages.
* Added: (case 21768) if the user added an inherent core line to a non-stocked purchase line that had an order fulfillment on it no longer copies that order fulfillment to the inherent core line.
* Fixed: (case 21865) an issue where POs would automatically be marked as done receiving when a user without permission to receive inventory would save them after all quantity was received.
* Fixed: (case 22419) an issue where transfer orders that were created due to a multi-store purchase from inventory overview would not properly update the 'on order' and 'on hold' quantities.
* Fixed: an issue where, if the user's current store doesn't match the store inventory is being received into (POs and TOs both), the wrong store's settings might be used for the default inventory location and the receiving location.
* Changed: the location column in the choose serial popup is now labeled Dest. Location to make its purpose clearer.
* Added: (case 11065) the user can now set a 'Receiving location' for the entire PO posting.  This sets all quantity/serials being received on a posting to got to the specified location.  This can be accessed through the advanced operations button or the right click menu.
* Fixed: (case 22811) an issue where unreceived purchase order serials were causing the parts screen to creating variance locations.  Now, those serials are marked as On Order instead of In Transit, and On Order serials are not considered as part of the on hand quantity.


==Print Queue==
==Reports==
* Fixed: (Case 17810) All errors are now written to file and an exception has been added for writing errors to the database.
===Billing===
* Fixed: (Case 18665) Added timers, written to db. It should also update lastsenton.
* Added: (case 20164) settings for displaying "CONTINUED ON NEXT PAGE....." at the bottom of multiple-paged documents, except on the last page and displaying balance at the top of the document (per customer).
* Fixed: (Case 18160) Now has an enterprise handler that should pull in printers using f_get_setting.
* Fixed: (case 21515) updated period applied payment logic to include invoices with date = End DateIt was a < previously, not a <=, so it was possible for some payments to show incorrectly as unallocated.
* Fixed: (Case 19360) Syntax errors and handling for when no parameters are passed.
* Fixed: (Case 19360) removed an errant else clause possibly causing failure loops
===Billing OIA===
* Fixed: (Case 19360) execution time now correctly quoted.
Removed: (case 20888) deprecating the report. Functionality is now covered by the OIA setting on standard Billing report.
* Fixed: (Case 19360) PrintQueue now handles missing reports instead of crashing
* Added: (Case 18528) error reporting emails
===Credit Summary===
* Fixed: (Case 18430) Now enabled report commander's native error logging-v flag effects it.  To set a custom logfile, a new config setting 'reportcommanderlogfile' exists.  
* Fixed: (case 20780) the subreport and fixed the single values not showing up sometimes because the query used joins instead of left joins +  aesthetic improvements.
* Fixed: Printing reports no longer makes a pdf
* Fixed: (case 20780) the graph was flipped horizontally.
* Fixed: Saving files to folders no longer deletes them
* Fixed: (Case 18727) Now supports a waituntil date/time which specifies when a report should print.  
* Fixed: (Case 19605) Printing to the selected printer now works for reports that have No Printer checkbox checked in the crystal report file.
* Fixed: (Case 19718) Python now corrects the product config setting from ITrack Enterprise to ITrackEnterprise
* Fixed: (Case 19406) We now group_concat on | for parameters to avoid splitting off and ignoring subquery parameters.
* Fixed: (Case 19484) Printqueue now uses f_set_setting to let the other products know that the Advanced Print Management Server is installed.
* Added: a bunch of comments to make PrintQueue.py simpler to understand, as well as a convenience method for query error handling.
* Fixed: (Case 19850) Added some error handling for when queries return no results.
* Added: (Case 19850) Added a setting emailerroron, which when set to False will turn off email error reporting
* Fixed: (Case 19850) Allowed not specifying a printer.
* Fixed: (Case 19878) Fixed another crash


==Purchase Orders==
===Customers Added By Date===
* Added: (case 18825) future PO/TO accounting will now be done under GL transaction types of 'Purchase Order Received', 'Transfer Order Received', 'Purchase Order Voided', and 'Transfer Order Voided'.
* Added: (case 22261) customer emailAlso tidied the report.
* Changed: the returns dialog on the SO screen now shares resources with the PO return dialog, this should help them have the same features in the future.
* Added: by user request, the PO returns dialog now has many features that were only in the SO return dialog up until now:
** Previous/next page buttons
* Added: PO return dialog now has a document # filter edit.  The user can enter a document # (wildcards supported), or enter something in the "store #-document #" format.
* Changed: (case 6656) the error attention icon/popup related to receiving a vehicle a second time has been generalized to include any parts that are 'Single QUantity Items' (whole units count).
* Added: a new warning attention icon/popup related to whether it looks like a PO will cause a single quantity part to go above 1 QoHThis is a warning because the user is not actually receiving the stock right now.
* Fixed: an issue where a user with permission to edit POs after they have been marked as Done Receiving wouldn't see attention icons/warnings regarding changes they were making.  Now, the presence of the warnings is based on whether the user can fix the issue.
* Fixed: an issue where the 'too many locations chosen' pop up dialog on PO save would sometimes show the incorrect number of 'bad lines'.
* Changed: error/warning attention icon hover text has been changed to be more consistent with other screens.
* Added: when the system shows warnings/errors that 'Single Quantity' items (such as vehicles) will get a quantity above 1, it now checks quantity across all stores, as single quantity items can only have a single quantity at any location at any store.


==Reports==
===Customers With No Purchases After Date===
===Billing Statement===
* Added: (case 20048) a sortby parameter, tidied the report
* Added: (case 18402) a setting to hide terms.  They will show by default.
* Changed:(case 18218) mode setting name and options.
* Fixed: (case 19138) specified sort order in Activity and OIA sections: date, store, salesorder.
* Added: (case 17516) settings for alternate address and logo layouts at the top of the document for lining up with envelope windows and preference.  This was also done to the SO report.  Billing calls a global setting.  SO calls a store setting.
* Changed:(case 18805) replaced store address info in the tearoff with remittance info.
* Fixed:(case 19932) suppressed the Finance Charge line in OIA mode when it is 0.00.
   
   
===GL Activity===
===GL Activity===
* Changed: (case 18134) renamed GL Sales Activity report to GL Activity. Improved the report to include glentries from all types of documents, sorted by the document and transaction that generated the entries.
*Added: (case 22063) a new parameter that lets you sort by Associated Customer, then Document Type instead of the standard Document Type if desired.
 
===GL Entires By GL Account===
* Added: (case 20733) set the Document and GL Entry level group header to repeat with " continued..." suffix if applicable.
   
   
===GL Entries By GL Account===
===Inventory By Part Type & GL Category===
* Changed: (case 18138) Combined GL Entry Detail By Account and GL Entry Summary By Account functionality into a new report: GL Entires By GL AccountYou can summarize by GL Account, GL Entry, or Document of Origin.
* Added: (case 18417) the ability to sort by the part type total columns (In Stock, Sales, Percent Profit) and an option to exclude the GL Category totals if you just want a summary.  The ordering functionality required a substantial change to the report structure.   
   
   
===GL Entry Detail By Account===
===Inventory Detail By Part Type===
* Removed: (case 18138) functionality has been folded into GL Entries By GL Account.
* Added: (case 8217) vehicles with cost remaining even if they are not status A or H (noted on report).
* Added: (case 2086) a column for average core cost.
 
===Inventory Summary===
* Fixed: (case 22572) now includes vehicles with overallocated cost regardless of status and quantity in addition to vehicles with cost remaining regardless of status and quantity. (updated condition from > 0 to <> 0)
   
   
===GL Entry Summary By Account===
===Inventory Summary By Source===
* Removed: (case 18138) functionality has been folded into GL Entries By GL Account.
* Added: (case 20507) a new third summary option, which will show each unique inventoryid/inventorystoreid item by tagnumber, store, and part type.  Summarize option is no longer True or False; it is Part, Part Type, or Source.  Tidied the report.
   
   
===GL Entry Verification===
===Inventory Exhausted===
* Removed: (case 18140) Deprecated report.
* Changed: (case 2086) updated the way average cost is calculated
   
   
===Inventory Age===
===Inventory Misc===  
* Added:(case 16912) this is a new FIFO report that figures out average age and oldest per SKU.  Requires FIFO.
* Changed: updated the way average cost is calculated, added a column for average core cost, and tidied the report.
   
   
===Labor Summary By Employee===
===Inventory Summary===
* Changed: (case 18671) renamed some column headers.
* Added: (case 8217) vehicles with cost remaining even if they are not status A or H (noted on report).
* Fixed: (case 19135) non uservisible activity were rows showing upNow they are not.
* Added: (case 20172) the thousands comma separator to store quantity totalIt was missing.
   
   
===Packing Slip===
===Inventory Summary With Cores===
* Fixed: (case 19347) the report was showing date closed instead of date, which was sometimes showing 1899 for open SOs.  This now matches Sales Order 11in.  I also hid shipping information when appropriate the for Ship Method.
* Removed: (case 8217) deprecated. Inventory Summary includes cores, so this is not needed.
   
   
===Purchase Order Posting===
==Label==
* Changed: (case 18137) now displays postingnumber instead of purhcaseorderhistoryid.
* Added: (case 22257) Category.  Category was on the standard inventory section of the report, but not the whole unit section.
 
===Label Delivery Picking===
* Added: (case 21160) a new report for printing picking labels from the delivery screen.
 
===Labor Detail By Employee===
* Fixed: (case 20315) report query; removed the JOIN to wagerate.  user.wagerateid can be NULL.
   
   
===Received Items===
===Labor Log By Employee===
* Changed: (case 18137) now displays postingnumber instead of purhcaseorderhistoryid.
* Fixed: (case 20315) report query; removed the JOIN to wagerate.  user.wagerateid can be NULL.
* Fixed:(case 20738) hours rounding so decimals would always line up.
   
   
===Received Items By Source===
===Labor Summary By Employee===
* Changed: (case 18137) now displays postingnumber instead of purhcaseorderhistoryid.
* Fixed: (case 20315) report query; removed the JOIN to wagerate.  user.wagerateid can be NULL.
* Added: (case 20165) estimated labor hours billed and labor charge for fixedlabor charge jobs using default workordertype rate or customer's custom labor rate.  
   
   
===Received POs With Unapproved Postings===
===Payment Receipt===
* Changed: (case 18137) now displays postingnumber instead of purhcaseorderhistoryid.
* Added: (case 21365) payment terminal transaction fields for credit card payments through the terminal.
* Changed: (case 21365) some formatting in the terminal transaction section to make things more clear, added ----- header and footer and suppression on the authorizationcode line when it is absent
* Added: (case 21365) terminal-captured customer name and lines for PIN VERIFIED, SIGNATURE CAPTURED ELECTRONICALLY, and SIGNATURE NOT REQUIRED as applicable
   
   
===Sales By GL Category===
===Pick List===
* Fixed: (case 19370) this was referencing an old view, recently deprecated for being inefficient.  Updated the report query to use the UNION salesorder line and salesorder adjustment information like other SO reports.  Note that adjustments do not have a glcategory.  They are still included in the report under "unassigned"
* Removed: (case 22486) cores.
* Changed: (case 18133) combined Sales By GL Category, Sales By GL Department, and Sales By GL Department And Category into one report with multiple summary levels.
   
   
===Sales By GL Department===
===Purchases From Vendor===
* Removed: (case 18133) functionality has been folded into Sales By GL Category.
* Changed: (case 22456) expanded grand totals, splitting them across two lines and giving them more horizontal room to grow and don't show the number mask.
   
   
===Sales By GL Department And Category===
===Purchase Order Posting Report===
* Removed: (case 18133) functionality has been folded into Sales By GL Category.
* Changed: (case 22435) updated Posting # at the top to show actual Posting #, not purchaseorderhistoryid.
   
   
===Sales By Invoice===
===Purchase Order Receiving List===
* Changed: (case 18360) updated with a new mode parameter to view the information at different levels: lineitem, salesorder, or daySales By Invoice Extended and Sales By Invoice Extended Detailed can now be removed.  Tidied the report.
* Changed: (case 22430) location orderingIt now considers rank.
* Fixed: (case 19361) a bug where the report would ignore the store ID parameter.
   
   
===Sales By Invoice Extended===
===Received Items===
* Removed: (case 18360) functionality has been folded into Sales By Invoice.
* Added: (case 21793) the ability to group by source, if desired.  Tidied the report and added back in Misc items, which were excluded previously.  This report is absorbing the functionality of Received Items By Source.
   
   
===Sales By Invoice Extended Detailed===
===Received Items By Source===
* Removed: (case 18360) functionality has been folded into Sales By Invoice.
* Removed: (case 21793) deprecating the report.  Use the Receieved Items report instead.
 
==Sales By GL Category==
* Fixed: (case 22063) switched to using salesorderline.averagecost instead of salesorderline.cost for the cost column.  Changed column header for clarity.
* Fixed: (case 21976) changed the UNION to a UNION ALL in the query.
 
==Sales By Category, Detailed==
* Removed: (case 21549) deprecating the report.
 
==Sales By Invoice==
* Added: (case 22489) a top level store grouping with tiered subtotals.
 
==Sales By Lookup==
* Removed: (case 21549) references to an old view, v_salesorderitem.
* Added: (case 21549) cleaned up the report, and added wildcard support to the lookup parameter.
 
==Sales By State==
* Fixed: (case 22692) a bad JOIN in the query that had been throwing off the totals due to row duplication.
 
==Sales By Store Region==
* Added: (case 21507) adjustments, which were missing. 
* Fixed: (case 21507) Got rid of a superfluous JOIN to state in the query.  Totals match against Sales By Invoice in testing.
 
===Sales GL Entry Reconciliation===
* Added: (case 20640) adjustments and a comment header.
 
==Sales Insights==
* Added: (case 21078) more options.  Report now has an interval parameter that lets you pick Weekly, Montly, or Quarterly.  A week is now considered Sunday-Saturday.  Report is smart enough to know if an interval is incomplete and prints "so far" with the values.  Widened bars in the bar graph.  Improved all the queries with the new approach.  Added customer # and part type # to the second and third sections respectively.  Got pagenumber and N of M back in there in the page footer. 
* Removed: (case 22139) decimals on the invoice and line count on the Sales Insights section.
* Added: (case 22139) partnumbers to top parts list.
* Fixed: (case 22139) Job Lines and Misc Lines grouping together in the part list and pie graph; they are separate now.
   
   
===Sales Order 11in===
===Sales Order 11in===
* Fixed: (case 18857) jobpart quantity rounding.  
* Fixed: (case 20831) replaced customerunit.customerunitid with customerunit.unitnumber when present.
* Fixed: (case 18941) shipping address fields on Sales Order 11in to hide if there is no ship method.
* Added: (case 20164) setting for displaying "CONTINUED ON NEXT PAGE....." at the bottom of multiple-paged documents, except on the last page
* Added: (case 17516) settings for alternate address and logo layouts at the top of the document for lining up with envelope windows and preference.  This was also done to the Billing report.  Billing calls a global setting.  SO calls a store setting.
* Fixed:(case 21122) fixed labor charge not showing up when there was no workclock activity
* Fixed:(case 17517) jobpart quantity rounding formulas, made the report react to "print labor detail", and cleaned up the job sections in generalThe part and labor subreports are now combined, and I moved things to look cleaner.
* Changed: (case 21122) firstname + lastname to just user name when printing labor detail.
* Performance: (case 19738) removed an unnecisary JOIN.
* Added: (case 21365) payment terminal transaction fields for credit card payments through the terminalAn SO can have multiple payments, and therefore multiple paymentterminaltransaction sections - and there is handling for that.
* Replaced customer unit id with customer unit number.
* Changed: (case 21365) some formatting in the terminal transaction section to make things more clear, added ----- header and footer and suppression on the authorizationcode line when it is NULL. Added a section in the footer for when paymentterminaltransaction.amount * -1 <> paymentline.amountI don't want to misrepresent the credit card transaction amount, but we can't apply the wrong amount to the balance.
* Added: (case 21365) terminal-captured customer name and lines for PIN VERIFIED, SIGNATURE CAPTURED ELECTRONICALLY, and SIGNATURE NOT REQUIRED as applicable
* Changed: (case 21762) job part and labor sections to show separate group totals when showing details.


===Sales Order Return===
==Sales Order Lines==
* Added: (case 19542) added return reason column.
* Removed: (case 21976) deprecating this report.
   
   
===Teardown===
===Tag===
* Added: (case 18638) vehicle stocknumber to the footer of every page.
* Added: (case 18604) a QR Code that links to the part on HTP if it is public/worldviewable.  This can be disabled with a setting, but is on by default.
* Changed: (case 18219) report layout to look cleaner, swapped it to Landscape.
* Fixed: (case 20780) company product code in the QR Code - it was still hardcoded with a fake for testing.
* Added: (case 20967) dynamic formatting to Category so up to 50 characters can fit, with resizing.
* Removed: (case 20967) QR code functionality.  This is temporary and will be added again when we can improve speed.
* Changed: (case 21794) updated barcode format for serialized parts to *D<inventoryserialid>*
* Added: (case 21668) serial number below barcode when present and when the setting to show tag below barcode allows it (same setting affects both).
   
   
===Top Customers Trending===
===Top Parts Age Trending===
* Added: (case 16724) a new parameter that allows you to specify how "top" is determined, by counts or sums.  It was added to all "Top...Trending" reports.
* Added: (case 20780) a part type parameter. 
* Fixed: (case 20780) the line graph data not populating correctly for the Make/Man grouping.
 
==Top Part Sales==
* Added: (case 21551) a new report showing top part sales, renamed "Top Sales Per Part Type" to "Top Part Sales" and cleaned up the report.
   
   
===Top Customer Types Trending===
==Top Sales Per Part Type==
* Added: (case 16724) a new parameter that allows you to specify how "top" is determined, by counts or sumsIt was added to all "Top...Trending" reports.
* Removed: (case 21551) deprecated the report, the updated and renamed version is "Top Part Sales"
 
==Transfer Order==
* Changed: (case 22436) the way serials are displayed, showing which serials go with which locations in the source and destination location columns
 
===Vehicle Profitability===
* Removed: (case 8217) deprecatingVehicle Value Analysis is a superior report that covers this functionality.
 
===Vehicle Upside Down===
* Removed: (case 8217) deprecating. Vehicle Value Analysis is a superior report that covers this functionality.
   
   
===Top Part Type Age Trending===
==Vehicle Value Analysis==
* Added: (case 16724) a new parameter that allows you to specify how "top" is determined, by counts or sumsIt was added to all "Top...Trending" reports.
* Changed: (case 15147) replaced f_vehicle_cost_alloated with the new function f_vehicle_cost_consumed, which cuts out manual costing, pre-allocations, etc...
* Fixed:(case 18891) Make/Man grouping when 'Make/Man' is selected on on Top Part Type Age Trending.
 
* Fixed: (case 19708) a rare divide by 0 error that happened when the grand sum (of sales or quantity, depending on what you picked for the based on parameter) = 0.
===Weekly Sales Insights===
* Added: (case 20780) percentages to the bottom 2 charts and added a 5th column to the top chart for averagesSwapped "Other" color from purple to gray to match all the other Trending reports.
* Changed:(case 20836) broke jobs out of "Misc Line Items" to have their own line.
   
   
===Top Part Type Sales Trending===
==Work Clock Times==
* Added: (case 16724) a new parameter that allows you to specify how "top" is determined, by counts or sumsIt was added to all "Top...Trending" reports.
* Fixed: (case 22255) a time duplication issueThe Internal Entries section now excludes activities tied to a work order type to prevent duplication of time clocked on a workorder and an activity.
 
===Top Salespeople Trending===
===Work Order Internal===
* Added: (case 16724) a new parameter that allows you to specify how "top" is determined, by counts or sums.  It was added to all "Top...Trending" reports.
* Fixed: (case 20909) updated margins, verfified database for every subreport, and fixed subreport parameter link for storeid - which may have been causing an "error formatting field object" issue.
===Transfer Order===
* Fixed: (case 18863) barcode format.  Previously, if it included commas, which would make the barcode unreadable (transferorderid > 999).
===Vehicle Photos 2x3===
* Added: (case 17695) Vehicle Photos 2x3 is a new report that prints one photo per vehicle 6 per page, 2 across, 3 down.  It also prints year, make, model, and stocknumber.  If there is no image, it prints the text "no photo".
* Performance: (case 17695) made photo selection better by using 2 functions instead of a function and a bad view.  Updated report type to "Vehicle Search" so it can print from the Search screen Vehicle Search tab Results button.
* Changed: (case 17695) set printer to 'Photos' so people can set a different default printer than the majority of the reports.  Since the report is mostly images, they may want higher quality printing.
===Vehicle Spec Sheet===
* Performance: (case 17695) removed the join to a old view.
* Added: (case 18976) added vehicle notes and description, both suppressible via setting.  Tidied the report.
===Vehicle Value Analyis===
* Added: (case 11433) an age column - resized the fields to make room and tidied.  
* Added: (case 8706) closed, non-void jobpart values into the parts sold section.
===Work Clock Times===
* Changed: (case 18291) renamed Time Clock Work Clock to Work Clock Times and improved the report.  It shows Work Clock Time on the left and the division of that time (Time spent on WOs + Time spent on Internal Activities) on the right with percentages + efficiency and lost hours calculations.
* Fixed: (case 18545) default user parameter for showing all users ('All Users').  It was previously entered incorrectly as ''.
===Work Order, External===
* Fixed: (case 18857) jobpart quantity rounding.
===Work Order, Internal===
* Fixed: (case 18857) jobpart quantity rounding.
===Work Orders===
* Added: (case 18690) additional information to the summary section.


==Report Viewer==
==Report Viewer==
* Added: print queue page now has columns for report type as well as report name.
* Fixed: (case 20702) an issue where some fixed report parameter value defaults would act strangely when the user selected them.
* Added: column for the new execution time value.
* Fixed: an issue where date pickers for report parameters might show the year 1899 as the default value.
* Added: the print status column is now bolded and color coded.
* Fixed: an issue where date report parameters with fixed values might not get formatted correctly.
* Added: notes and error info columns are now multiline edits for easier reading.
* Added: the user can now edit notes on each queue entry.
* Added: support for reprinting items in the queue now updates the execution time as well as parameter values for the existing entry.
* Added: clicking the 'cancel' button (little red x) while a preview job is running now cancels the job completely.
* Added: cancelling a preview either with the little red x or by closing the screen now updates the print queue with a status of Cancelled.
* Added: previewing reports now correctly saves the execution time in the repot queue as well as when it was previewed.
* Added: errors that occur during print preview are now reported with the same error reporting box as all other printing errors.  These errors are also saved in the print queue.
* Fixed: any queued report that is sent to the previewer will now correctly save "Preview" as the destination for the report.
* Fixed: an issue where reprinting reports by sending them to preview would cause a new queue entry to be created.
* Changed: the report viewer tab now shows report categories and report names in a tree instead of 2 lists.
* Added: report categories can now contain multiple levels and are no longer attached to the report type (what button it prints from).
* Added: buttons for setting which reports are a user's favorites.
* Changed: deselecting a report now makes various parts of the screen read only.
* Added: the report and parameter lists now save and load their column order and widths.
* Added: when reports are first loaded up (or they are reprinted) various pieces of meta-data are loaded for the report, including average execution time, who ran the report last, a well as how often it is run.
* Added: (case 19808) support for adding reports to the user's favorite reports.  All favorite reports show up in a special "* Favorites" area.


==Sales Orders==
==Sales Orders==
* Changed: default document type has been changed from Quote to Invoice.  This won't affect existing users, just new ones.
* Added: (case 19339) if the user voids a closed invoice and chooses to not void the payments, those payments are now unattached from the SOThis is to make it easier to find those payments in the future to associate them with another invoice.
* Changed: (case 18354) the way 'default' document types work has been reworked.  There is still a setting that controls this value, but it is no longer saved when the user closes the screenNow, the user must choose to set it manually by right-clicking on the document type dropdown.
* Added: if the user switches *from* a document type that locks prices to $0 to one that doesn't, the lineitem prices automatically go back to the default customer prices.
* Fixed: the 'send items to location map' option in the right click menu will now show the user's current key binding.
* Fixed: switching customers on an inventory adjustment document should no longer recompute the prices to not be $0.
* Changed: the email to salesman and email to customer options now print an invoice to PDF and emails it instead of building a text email.  This will be much more accurate to the print outs.
* Fixed: (case 10321) manually adding items to an inventory adjustment document should no longer load prices that are not $0.
* Added: the context menu (right click) now has options for emailing to customer and emailing to salesperson.
* Fixed: a recent regression where unnecessary popups were appearing when a SO was being voided (these warnings/errors don't matter if a document is being voided).
* Added: (case 18825) when an invoice is saved, finalized, reopened, or voided, all attached payments and work orders will now have their accounting inserted under the same GL category as the invoice itself instead of separate ones.
* Fixed: an issue where switching to a document type that doesn't care about price violations might not correctly clear price warnings.
* Changed: accounting now happens under the gl transaction types of "Sales Order Updated", "Sales Order Finalized", "Sales Order Reopened", and "Sales Order Voided" to make the transaction log easier to understand.
* Added: a new "Card" payment button that allows the user to add a new payment from an external credit card terminal.
* Added: (case 18001) the 'customer price' the salesman is presented with is now saved with all lineitems for historical reporting.
* Fixed: (case 20854) an issue where opening the return dialog for a saved SO might show the saved line items on that SO twice.
* Fixed: saving new lineitems will now be slightly faster, especially on very slow connections.
* Fixed: an issue where adding a new manual payment wouldn't always put focus into the first editable field in the list.
* Fixed: (case 19013) an issue where loading an item onto a SO without any locations could cause the part to be opened on the parts screen instead if the search sent it over by location. Now the item will be loaded onto the SO with no location.
* Fixed: (case 20893) an issue where some of the right click options in the return dialog were not working.
* Added: (case 17859) support for a new permission to control whether the user can print documents that have outstanding price violations.  By default, this is on for all users who could normally edit a SO.
* Fixed: hitting add payment buttons on the SO now properly puts the user into the payment list for immediate editing.
* Changed: the returns dialog on the SO screen now shares resources with the PO return dialog, this should help them have the same features in the future.
* Fixed: (case 21102) a query error that would be thrown when the user sent an item from the warehouse management screen to an inventory adjustment document if that item had been written down more than once previously.
* Added: by user request, the SO returns dialog now has many features that were only in the PO return dialog up until now:
* Fixed: (case 21157) edit closed SOs permission is now checked for whether the user can edit return reason on a closed document.
** Date range filter
* Fixed: an issue where saving changes on a closed SO (required a special permission) would not save any changes on the last item.
** Remembering what documents were expanded when the user changes pages or filters
* Added: if the user double-clicks a payment on the SO, the payment detail/external transaction dialog is brought up againThis allows voiding a payment that was accepted by mistake as well as viewing info about the transaction that created it.
* Added: SO return dialog now has a document # filter editThe user can enter a document # (wildcards supported), or enter something in the "store #-document #" format.
* Added: the credit card payment buttons are hidden if the credit card module is not loaded.
* Added: (case 17070) when the user opens the perform returns dialog, there is now a 'reason for return' dropdown.  The user will be shown all previous reasons in an auto-complete, but they can enter new reasons as well.  This 'reason' will be applied to all items returned at that time and is remembered for future returns.
* Fixed: (case 23012) an issue where the user could possibly delete a payment after accepting payment from the credit card terminalAlso, the user can no longer close a SO with an unsaved payment from the credit card terminal, as that would lose the transactionThe user must either void the transaction or save.
* Added: if the user opens the edit item dialog for an item and that item is a return, the return reason will be shown in a special auto-complete dropdown (and can be modified)This is useful for situations where many items need to be returned, but only one or two have a different 'reason'.
* Added: (case 7280) a non-modal attachments pop-up dialog for the user to manage attachments withThis dialog appears by default, but can be toggled on and off with the attachment button.  If the user opens a document with attachments on it, the dialog is automatically opened.
* Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into oneThis change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
* Fixed: an issue where text blinking stopped working due to a change in 2014.
* Added: (case 17070) a new configure->Documents->Return Codes configuration dialog.  Users with the appropriate permission can open this dialog to add/edit/remove 'return codes/reasons' which can be chosen between when performing a return on an invoice.
* Fixed: (case 18835) an issue where sales orders for customers who required PO #'s wouldn't pop up the requirement dialog if they weren't buying at least 2 items.  Now, the PO # field blinks and the warnings pop up if the invoice subtotal is greater than $0.
* Changed: (case 17070) the 'return reason' in the perform returns dialog (as well as the edit items dialog) now load entries from the new returncode tableIn addition, they now display both the code and name of the return reason.  This should give administrators a tighter control over what options can be chosen by users when performing returns.
* Fixed: (case 22490) an issue where the "None Selected" option in the choose serial # popup wasn't working.
* Added: return reasons that the user can choose between now show in 'rank' ordering.  This allows yards to customize the order that return reasons are displayed in (instead of alphabetical).
* Fixed: the "In use" checkbox in the configure adjustment types dialog now correctly accounts for sales order adjustments and fees on bids.
* Added: the return dialog now has a Configure button next to the return reasons dropdown.  Users with permission to manage this list can click this button to be taken to the configure->return codes dialog.
* Fixed: (case 22090) an issue where all modified job parts would always set the inventory id on save, overwriting any 'in-progress' action a user might be doing on the core management screen.
* Added: configure->return codes now has support for showing which items are in use, and deleting an in-use return code will prompt the user to choose a replacement.
* Fixed: (case 19505) an issue where, if an invoice had payments on it that had a payment method that was not a valid option for the current customer, nothing would show in the payment method column.
* Added: (case 19551) when items are sent to a inventory adjustment document from warehouse management, 'found' items now attempt to find previously written down documents to 'return'.  Essentially, if the item in question was ever written down with sufficient quantity, that original write down cost will be used instead.  If no appropriate write downs are found, then the item is 'found' with a cost of $0 like before.  This helps with yards who would like 'found' inventory to not come back in at $0 average cost.


==Search==
==Search==
* Added: (case 8668) if a search returns no results, the popup now has a 'search on HTP' button which will attempt to perform the same search (when possible) on HeavyTruckParts.net.
* Changed: (Case 18642) Smart Search now replaces $STORES with a list of OR statements specifying inventoryid. Not required, but can easily limit searches when using search modules.
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Changed: (Case 13005) Smart Search Module list now uses checkboxes instead of a sticky list, and its right-click menu allows for selecting or deselecting everything.
* Fixed: (case 18899) a crash that could occur if the user deselected all vehicles and then clicked on any header to sort the list. This was a long-occuring bug that had been difficult to track down, credit to Ryan@Active for reproduction information.
* Fixed: Search Defaults Page was not restoring Smart Search Module default selection when clicked (it did nothing instead).
* Changed: when the user sends search results to other screens, they are now sent in just a single format, instead of 3 or 4. This will make communication between screens easier and more consistent, but breaks compatibility with old versions of other screens.
* Fixed: (case 20517) an issue where doubleclicking a vehicle attachment icon on the vehicle search could cause an application crash.
* Removed: some code that might re-order results being sent from search to other screens.  Now items should arrive at other screens in the same order they were viewed on search.
* Added: a 'lookup VIN' button next to the VIN field, similar to the vehicles screen.
* Moved: the picture viewer dialog that the screen used has been moved to common resources to be shared with other screens.
* Changed: stock # field is now slightly larger, to facilitate longer stock #'s.
* Changed: (case 1545) the view pictures dialog is now shared with the parts and vehicles screens.  For this reason, some adjustments have been made to the icons and title text to be more useful.
* Fixed: several places where dismantled date was incorrectly labeled teardown date.
* Added: any images shown in the image viewer dialog are now cached locally, so going quickly between parts will force items to be loaded the first time, but on subsequent visits, the images will already be available.  This should make going back forth between search results with images faster, especially on slow connections.
* Removed: dismantled date from the dropdown searches since its already in the date picker search, which is a bit easier to use.
* Added: (Case 19658) Search logging now records execution time, so we set it here.
* Fixed: the dropdown search for 'dismantled' now correctly looks at the dismantled date.
* Fixed: (case 23108) an issue where image data from previous searches were not cleared when the user performed a new search.
* Fixed: (case 23136) an issue where the model lists were based on the id of the currently selected part type instead of the type set id of the currently selected part type.
* Fixed: (case 21654) an issue where the vehicle search page did not remember the user's selected store(s) to search.  This system now works identically to the part search stores.


==Transaction List==
==Transaction List==
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Added: (case 11402) all date and date/time filters  now have a 'date range' dropdown column where the user can choose options like 'Last 90 Days' or 'This Month'.  When one of these is chosen, re-running the report again later will automatically move the dates forward.
* Added: (case 11402) support for "Custom: Relative" date ranges.  These are like fixed date ranges (the user chooses the start and the end) except that the dates are remembered as offsets from the current date (such as 120 days ago or 3 days in the future).  This gives users the ability to save search templates that have date filters that 'move' as the user runs the filter in the future without having to use one of the specific date ranges supplied by the system (such as "This Month" or "Last Year").
 
==Utilities==
===Print Queue===
*Fixed: (Case 21424) Configuration Default settings have been improved
*Fixed: (Case 20820) Support for default parameters has been added.
*Fixed: (Case 20582) Network connection loss should no longer crash PrintQueue
*Fixed: (Case 19307) Support has been added for custom report titles
*Fixed: (Case 20144) Error reporting has been improved.


==Vehicles==
==Vehicles==
* Changed: the user interface of the main vehicles screen has been significantly reworked.  Its layout should now much more correctly match the parts screen.
* Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
* Fixed: an issue where the tracking # field at the top of the screen was not emptying when clearing the vehicle.
* Fixed: (case 19111) vehicle costs could be incorrect if any POs had invalid vendors.
* Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screenIt will allow the user to view part and vehicle images for the currently loaded part at a glance.  The dialog is the same one that has been in use on the search screen since version 1.  The user may position the dialog on another monitor or in unused space.  The dialog is automatically hidden if the user goes to another screen.
* Performance: saving large teardowns can now be as much as 3 times faster, especially on slow connectionsMany queries that were being run to see if inventory on the teardown had been modified since it had been loaded has been combined or eliminated.
* Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
* Fixed: (case 20849) an issue where, if the user changed a vehicle's status, user status, or (especially) location, then choosing to cascade that change to all associated inventory records, that change might get rolled back if there were changes to the same items on the bids/teardowns tab.
* Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
* Added: if the user cascades location changes from a vehicle to parts on a teardown, that change is now immediately reflected on the teardown screen without having to reload.
* Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialog.  The default is "Ctrl + P".
* Added: the retail price in the location/status cascade dialog is now right aligned and sorts correctly.
* Added: new tool tips for all header controls.
* Fixed: (case 20896) an issue where vehicles wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
* Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
* Fixed: (case 20955) an issue where the hidden field vehicle.dismantled was incorrectly being set by the 'purchase date' field instead of the dismantled date.
* Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
* Fixed: (Case 16989) make sure any new quantity on teardown items doesn't go into the variance location.
* Added: (case 3886) when the user saves a vehicle, whole unit records now correctly save changes to year, make, model, VIN, body style, etc.
* Added: (case 23034) misc parts on a vehicle teardown will no longer copy the year/make/model/VIN/body style from the vehicle when it is changedOnly Standard parts will automatically copy that information to all associated parts.
* Added: the vehicle's whole unit now correctly copies the user status, similar to the vehicle status, which was already working.
* Fixed: (case 21953) a rare issue where a teardown/bid item with a bad inventory type might cause a crash when loading the vehicle.
* Fixed: (case 19419) the local sales/usage column in the vehicle bid/teardown area was always 0.
* Added: (Case 21416) Added a new graphing tab to the vehicles screen.  This area shows a vehicle 'break even' graph showing cost and revenue over time.
* Added: (case 17595) as part of saving new teardown component items, the user is warned if the tag #'s they enter match any existing items in inventory.
 
* Added: (case 6656) whole units now are always created as 'single quantity items'.  This can be manually overridden on the parts screen, but this should be correct for all cases.
==Vendor==
* Added: parts created on a teardown now are created as single quantity items if the quantity of the item on the teardown is 1 or lessTHis should cover the default case, where most vehicle parts only exist in one place at all stores.  For any parts where this is not true, they will have to be edited on the parts screen.
* Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
* Fixed: a possible infinite loop that could occur when the user attempted to add another bid when the current bid's name ended in "(1)", as it was being interpreted as -1 instead of 1.
* Fixed: if a price class doesn't have a store-specifc override, the "Default" entry is automatically selected.
* Added: (case 18391) columns to the bid document list:
* Fixed: (case 10091) an issue where selecting a new store to create store-specific price class overrides might save all the values as 0.
** Created By (set automatically when bid is created)
* Fixed: a possible crash when editing a price class and switching whether it is global.
** Closed by (set automatically during accept/reject)
* Fixed: (case 21814) an issue where loading a vendor, then loading another vendor without clearing the screen in between might cause attachments to move between the vendors.
** Closed date (set automatically during accept/reject)
* Fixed: minor issues with button sizing.
** Assigned to (set with a new dropdown of user names)
* Fixed: an issue where vehicle bids were no longer saving a 'last modified' time.
* Fixed: sorting by the 'date' column should now work correctly, no matter the user's locale date format.
* Added: (case 18987) a store-specific "Minimum gross margin" value on the bid screen.
* Added: a maximum bid amount based on the minimum gross margin.
* Changed: moved various controls around in order to ensure that all controls are visible at minimum resolution.
* Fixed: (case 19950) part type column in the bids/teardown list is now sortable by part type name.
* Added: made sure that part types in the bid/teardown list order by part type # if they all have the same cost impact (items with high cost impact will still be at the top).


==Warehouse Management==
==Vendor List==
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Changed: position of controls on the screen has been standardized with other screens.
* Changed: (case 19551) 'found' items now show an approximate cost impact in grey (similar to how vehicle items were shown in grey before). This is to represent the fact that 'found' items now sometimes come back in at the cost that they were last written down at (when possible).  Since this is based on the availability of previously written down inventory, it is only an approximation, but is probably more accurate than always showing $0 like before.
* Fixed: (case 15015) phone/fax searches now allow the user to search correctly instead of treating the input as a number.
* Added: date based searches now use a date-time picker to avoid ambiguity of date formatting.
* Performance: date based searches should now be slightly faster.
* Changed: (case 23171) vendor smart searches with multiple words will now automatically require all words to be present in the results.
* Performance: removed some unnecessary searching that happened as part of a vendor smart search that may have added slowness to these searches, especially when no results were found.


==Work Orders==
==Work Orders==
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Fixed: (Case 20339) a crash when sending items from search to a WO from the right-click menu.
* Added: (case 18825) when an internal WO is saved, finalized, or voided the gl transaction now uses one of the new types "Work Order In Progress", "Work Order Finalized", and "Work Order Voided".  External WOs will use the same "Work Order In Progress" and "Work Order Voided" type, but they are finalized as part of "Sales Order Finalized".
* Fixed: (case 20023) an issue where inventory on WOs would use retail price instead of customer pricing for jobs set to use customer pricing.
* Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into one.  This change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
* Fixed: some minor display issues causing some controls to not be placed like on other screens.
* Fixed: If the user sent search results from search to the current WO (without clicking the add item button first), if there were items loaded on the job, they would be replaced by the results.
* Performance: deleted parts now run a single query to delete locations/order routing/etc.  This will make saving a little faster when items are deleted.
* Fixed: several situations where sending multiple search results to the job on the current WO would load all items onto the same line, causing only the last one to be shown.
* Fixed: (case 18878) estimate WOs no longer prompt the user for serial #'s for master parts or job parts.
* Fixed: (case 19180) an issue where items deleted off of a job could still cause a "Warning: it appears that the item '<this item>' is already on the WO, would you like to continue adding it again?" popup to appear.
* Added: if the user changes the 'estimate' checkbox, all serial # related attention icons are refreshed, so that if a WO leaves estimate state, the user will see that they need to choose a serial #.
* Fixed: (case 2401) if the user unchecks the 'override cost' button, the cost value will now go back to the correct calculated average cost instead of $0.
* Fixed: an issue where the user could not view the part requests on voided or closed WOs.
* Fixed: a reversion in one of the recent versions where the context menus in the parts list stopped working.
* Added: (case 7280) work orders now support attachments.  Drag and drop attachments into the new popup to attach things to a WO.  Use the attachments button to show/hide the popup.
* Fixed: an issue where clearing a WO wouldn't refresh the job list footer totals.
* Added: (case 21878) if the user attempts to load an inactive work order type, the work order will now load correctly.
* Added: when doing an internal WO, the WO master part list now has an attention column similar to many other document lists.
* Fixed: several crashes related to work order types that were inactive.
* Added: master part attention icons for empty item and 'insufficient serials selected'.
* Fixed: if the user edits the current work order type and renames it, it will be renamed in the dropdown correctly.
* Added: (case 6656) master parts now have an attention icon for when a build order would exceed the maximum quantity of a single quantity item.
* Fixed: (case 21883) an issue where the user could delete or add items to a closed WO.
* Added: pop-up on save regarding single quantity items having their quantity driven above 1.
* Fixed: if the user sends items from search to a closed WO, those items will be ignored.
* Performance: WO save/refresh process now runs a single query to refresh GL info instead of one query per master part.  This should make saving WOs with many master parts much faster.
* Fixed: the 'core returned' checkbox in the edit item dialog no longer can be toggled if the work order is closed or voided.
* Performance: various things are only calculated when the user changes values in the work order master part list, instead of just when they tab around.
* Fixed: an issue where blank, empty items would be unnecessarily added to the bottom of a WO if the user added an inherent core or dirty core exchange to an item on a WO.
* Fixed: (Case 19722) potential crash when saving a WO where one or more core charges were ordered to be 'before' the item they are attached to.
* Fixed: (case 22090) an issue where all modified job parts would always set the inventory id on save, overwriting any 'in-progress' action a user might be doing on the core management screen.
* Fixed: (case 19971) an issue where loading a WO template would not correctly load up non-stocked items that were saved on that template.
* Fixed: non-stocked items added to jobs from a template now correctly get a storeid, keeping them from showing the "Empty" icon.
* Fixed: several issues where inherent or dirty cores added from a template would not have the correct lookup column.


= Release Candidate Change Log =
= Release Candidate Change Log =

Revision as of 15:25, 26 October 2016

Release 14.0

Highlights

  • Brand new ability to accept payments through external credit card swipe terminals. Talk to ISoft for more information about compatible swipe terminals. Integrates with the sales order and customer screens.
  • Better support for duplicate attachments on all attachment interfaces.
  • Customer and vendor searches are faster and date based searches are much easier.
  • Tooltips and easier flow on the interchange interface
  • Ability to quickly update inventory to the last price it was purchased for on POs
  • Some speed improvements to part smart searches
  • Transaction list date filters can now move forward when they are run later, as well as support for date ranges like 'This month', 'Last Year', etc.
  • Attachments can now be added to documents

Accounting

  • Changed: removed the code that disabled the ability to set recreated gl entries to a previous date. This was disabled due to complexities between SOs and WOs.

Common Resources

  • Fixed: (case 22440) an issue where the popup attachment dialogs might not correctly add new attachment files to unsaved items.

Credit Card Processing

  • Added: a new interface for integrating with a some new Heartland credit card hardware.
  • Added: a new 'configure terminal settings' options page.
  • Added: if the user attempts to process a credit card and no terminal is configured, the user is prompted to configure these settings.
  • Added: if the user fails to process a credit card because there was a problem connecting to the terminal, they are prompted to retry or configure terminal settings.
  • Added: the response from a successful credit sale now returns the approved amount.
  • Changed: the default timeout in the credit card options dialog is now 0 (unlimited) since it seems like the best bet.
  • Added: a new page to edit->options that allows the user to configure credit card terminals.
  • Added: an 'edit payment from terminal' dialog which is a staging area the user will see that will provide information about the current status of accepting payment from the customer through a credit card terminal.
  • Added: "Test connection settings" button to the configure credit terminal page. When the user clicks it, it saves the current settings and attempts to connect to the terminal with the current settings. The user is told whether this succeeded.
  • Added: the user can now cancel an in-progress connection to the credit terminal.
  • Added: better error reporting to the user for failed payment connections.
  • Added: configure credit terminal button to the 'accept credit payment' dialog, this allows a user to easily fix any configuration issues while accepting payment.
  • Added: if the customer chooses a tender type, the user interface will be changed to reflect this choice.
  • Changed: standardized the error messages shown to the user.
  • Fixed: an issue where sometimes no status message would be shown if the user cancelled between requests to the terminal.
  • Added: many read-only fields returned by the credit card interface are now shown to the user for debugging purposes.
  • Added: there is now a 'automatically close dialog on successful payment'. This is a user setting. When checked, it saves the user a click for confirming payment addition after the swipe completes.
  • Added: authorization # to the credit card dialog, as that is a useful piece of information during debugging.
  • Changed: if a payment finished successfully, the user can no longer edit amount or charge type.
  • Added: the user can void a successful payment now. This will only work on payments that have not yet been posted.
  • Added: the UI is updated in realtime as the customer chooses options on the swipe terminal.
  • Added: when a payment is processed successfully, host code, transaction id, authorization #, name on card, and host trace number are all properly saved to the database.
  • Added: 'cash back amount' is now returned by a successful payment transaction.
  • Added: support for payment method selection. Also, the payment method of 'auto select' is the default, and an appropriate payment method will be selected based on the card type and tender type.
  • Added: store level default payment method for card payments that will be selected if no valid payment methods are found by name.
  • Added: payments now save what transaction they were created by, if any.
  • Added: payments now save a successful transaction's authorization number into the document/check# field.
  • Added: support for SSL for communication over the Ethernet to the terminal.
  • Added: support for viewing payments that are not editable.
  • Added: short acct number is now always padded out to 4 digits.
  • Added: support for negative credit payments (returns).
  • Added: voiding a credit transaction now sets the document # field to empty so that it can be populated by a subsequent transaction.
  • Added: since returns do not get authorization #'s, we now put host number into the document # field for returns.
  • Fixed: an issue where cancelling while the user is being prompted for tender type could result in payments that stayed in an intermediate state.
  • Changed: some error messages to be clearer.
  • Added: since voiding payments is done by heartland reference #, and that is not as unique as an authorization number, there is now a step where we ask the terminal if the specified payment is still 'open' or not. If it is not, the void operation is not attempted.
  • Added: support for launching the CC payment dialog with the amount locked, which is useful in some cases.
  • Added: support for tracking/remembering what type of entry mode was used, as well as whether a signature is required.
  • Added: we now retrieve and store several fields required to be printed on receipts when chip and pin (EMV) transactions are made.
  • Fixed: a bug where some chip and PIN features were not being correctly read from the terminal response.
  • Added: if the customer uses a credit card to pay, they are now prompted to sign digitally. If this operation fails or is cancelled, the receipt printout will have a signature line.
  • Added: support for retrieving HREF (host reference number) from the payment information.
  • Fixed: an issue where, when the user was prompted to choose between credit and debit, the prompt was being cut off.
  • Added: support for 'PIN Verified' status for debit card transactions.
  • Added: support for automated signature collection through the S300 hardware, removed custom signature collection.
  • Added: support for automated prompting the customer between credit/debit, removed custom choice.
  • Added: we now support the CVM return from the S300 hardware which is the way the customer verified the payment (EMV only).
  • Fixed: an issue where 'user choice' tender type wouldn't automatically select Credit if the user chose credit.
  • Added: a voided transaction now overwrites the host reference number of the void operation.
  • Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds.
  • Added: support for 'PIN Verified' status for debit card transactions.
  • Added: support for automated signature collection through the S300 hardware, removed custom signature collection.
  • Added: support for automated prompting the customer between credit/debit, removed custom choice.
  • Added: we now support the CVM return from the S300 hardware which is the way the customer verified the payment (EMV only).
  • Fixed: an issue where 'user choice' tender type wouldn't automatically select Credit if the user chose credit.
  • Added: a voided transaction now overwrites the host reference number of the void operation.
  • Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds.

Crystal Reports

  • Added: (case 20389) the report adder script export now correctly includes the fileid and category in the ON DUPLICATE KEY SET section.
  • Fixed: (case 20389) an issue where clicking "Replace" when adding a new report file in it would instead leave the previous report file in the system.
  • Fixed: (case 20389) the report adder script export now has a query that attempts to find 'empty' AU reports and replace them instead of inserting a duplicate. This will no longer be necessary once report.filename becomes unique.
  • Fixed: an issue where, if the user showed the advanced print dialog, previewing the report would not work.
  • Changed: new reports created from the auto-updater are now created as not user visible so that they wont' show in the report viewer until the database update is run.

Customer

  • Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
  • Fixed: (case 20872) an issue where the customer option list wasn't displaying the options it should show.
  • Added: the payment dialog now shows the external payment transaction's reference number if the payment was entered through a payment terminal.
  • Added: a 'card' button that launches a payment terminal interface dialog for accepting credit and debit payments on account.
  • Added: if the user changes the amount of a payment such that it no longer matches the amount of the external transaction, they are presented with a warning popup that they are causing the values to mismatch between original transaction and customer credit/accounting.
  • Fixed: (case 21196) an issue where customer default invoice terms were not being selected correctly when a customer was loaded.
  • Added: the credit card payment button is hidden if the credit card module is not loaded.
  • Fixed: (case 22484) an issue where a user without permission to edit customers might get an erroneous change detected message when they open the customer screen.
  • Added: (case 20883) the print statement dialog now has an advanced print option for specifying print options.
  • Added: (case 20883) the print statement dialog now has an email button. Hitting that button automatically fills out the print dialog with the customer's email address.
  • Added: (case 21379) there is now a permission that controls whether the user can change the total of an existing payment. This is to restrict situations in which the user can accidentally do something to a saved payment that changes the accounting impact after the fact.
  • Fixed: (case 23012) an issue where the user could possibly cancel a payment after accepting payment from the credit card terminal.

Customer List

  • Changed: position of controls on the screen has been standardized with other screens.
  • Added: date based searches now use a date-time picker to avoid ambiguity of date formatting.
  • Performance: date based searches should now be slightly faster.
  • Fixed: an issue where printing the customer list wouldn't work if the user chose to preview the report.
  • Changed: (case 21158) some recent changes added searching alternate addresses and significantly slowed down customer smart searches. The customer smart search has been rewritten to be much faster. Also, if the user performs a smart search, the results are ordered by how well they match the user's input. Smart searches are now 'full text' searches meaning words can appear in any order. However, this has the downside that searching for words that start with wildcards will not work ("*obert" will not match "Robert"). Also, the order of the results of a smart search will not carry over to printing the customer list.
  • Fixed: some issues where hitting "Show All" would not work correctly.
  • Fixed: (case 15426) an issue where the user's column order and widths were not saved when the user closed the screen.
  • Added: (case 12093) there is now a permission that controls whether the user can merge customer accounts. It defaults to off for all users.
  • Changed: (case 23171) customer smart searches with multiple words will now automatically require all words to be present in the results.
  • Fixed: customer smart searches now correctly order results with the 'best' matches at the top.

Database

  • Added: (case 19307) a new table for tracking what default printers should be used for various report type categories. These entries can be per-user, per-plant, or per-productcode (or any mix of those 3).
  • Added: f_get_report_printer returns the printer to be printed to for a specific report type based on input criterion.
  • Removed: a couple indices on the salesorderdocument table. They are not very selective and were preventing more useful indices from being used in some scenarios, such as core management loading. This table is so small, indices will probably not improve load speed any anyways.
  • Fixed: (case 20389) report.filename is now unique. This resolves issues where duplicate reports could could exist on the system due to the auto-updater. In order to do this, duplicate reports got their filename modified to have a "_DUP_<reportid>" added to the end. These duplicates should get cleaned up at some point, as the auto-updater won't maintain them.
  • Changed: renamed interchangepricing to DEPRECATED_interchangepricing, as this table is not referenced by the application.
  • Fixed: an issue where an inventorysetting record that could cause an error on part modification (part of the version 12 update).
  • Fixed: an issue where the popularity code was not editable on the part modification screen.
  • Added: a new table: paymentterminaltransaction which will contain information about all credit card transactions handled by the system, including all fields that must be printed on the receipts.
  • Added: Voided status for payment terminal transactions.
  • Added: payment terminal transactions now save host code, which is apparently required to be on the receipt, where appropriate.
  • Added: payments now remember the terminal transaction that spawned them, when appropriate.
  • Added: an index to inventoryserial for looking rows up by status.
  • Added: (case 21158) a full text index to customerlist, which allows us to speed up customer smart searches significantly.
  • Added: (case 7280) a new table for associating attachments to sales orders.
  • Added: support for attachments on POs, TOs, and WOs.
  • Added: support for a verification status of PIN Verified for debit card transactions.
  • Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds. Both default to on for any user who could previously void payments in the system.
  • Changed: the right click list graph template to no longer show scrollbars when rendered inside an embedded IE window.
  • Fixed: (case 22371) an issue where clicking to show/hide series on a stacked column graph without trendlines would not work correctly.
  • Fixed: an issue where showing an hiding a series with a point type other than Circle would cause the newly unhidden points to be circular.
  • removed: an unused setting.
  • Added: (case 22332) Sales Order transaction list search now has a "Condition" option for both search filter and results.
  • Fixed: an issue where the parts screen might continuously say that the location id was being changed and the user had to log a reason why even though it was not changing anymore.
  • Fixed: the chart template now supports aggregate column charts.
  • Fixed: chart data with invalid X axis values is now ignored.
  • Added: (case 20434) support for a new table (charttemplate) that stores shared chart templates.
  • Added: a new permission controlling whether a user can manage saved chart templates.
  • Added: (case 22811) a new status to inventoryserial called 'On Order', for unreceived PO serials.
  • Changed: all unreceived serials on open purchase orders have had their status moved from In Transit to On Order.
  • Fixed: (case 22824) an issue where the model lookup on the inbounding import might throw a database error.
  • Added: (case 12093) a new permission for merging customers.
  • Fixed: (Case 21613) Added support for auction cancellations.
  • Added: support for a verification status of PIN Verified for debit card transactions.
  • Added: 2 new permissions, controlling whether the user can void transactions and whether the user can perform refunds. Both default to on for any user who could previously void payments in the system.

Deliveries:

  • Fixed: (case 4926) a crash that would happen if the user removed the last item from a run sheet.
  • Fixed: an issue where the first time the user clicked on the document list would be ignored.
  • Fixed: the document list would load more times than necessary, slowing things down.
  • Fixed: a crash that could be caused if the user clicked the checkboxes in the document list too fast.
  • Added: (case 14353) the picking page now has a shipping method filter. Choosing something in this dropdown will filter to match just SOs, POs, and TOs with that shipping method. Only the shipping methods the user has set up on the configuration tab will be shown here.
  • Added: (case 14353) the shipping method column in the list can now be used to quickly change the shipping method of the selected document without opening that document on the document screen. If the user switches to a shipping method that is auto-picked, they will be alerted that this will cause the items to be picked automatically and that the list should be refreshed.
  • Changed: all the dropdowns on the picking tab now allow auto-complete as the user types.
  • Added: 3 new permissions that control whether the user can edit the shipping method on TOs/POs/SOs that the user loads onto the screen.

EBay Extension

  • Fixed: (Case 21050) ebay image uploads option hidden.
  • Fixed: (Case 21047) Listing durations now save correctly and show correctly.
  • Fixed: (Case 21245) The auction and transaction tab now both load auctions based on auction start time.
  • Fixed: (Case 21246) Freight shipping cost is no longer 8,000,000,000, but is 0.00 as intended.
  • Fixed: (Case 17479) Image counts on the listing screen of eBay should now be accurate regardless of whether the image is a url or a file.
  • Fixed: (Case 21212) Global Shipping now has a global default. a checkbox is added to the global config screen, as well as to the edit dialog for a specific listing.
  • Fixed: (Case 21210) We can now add up to 12 images to an ebay listing, not just in the description anymore!
  • Fixed: (Case 21036) Empty dropdowns in the edit dialog no longer cause crashes on ok. Missing items are bolded, but are obviously still not being noticed. If the user tries to list an item with empty dropdowns, it will throw up an ebay error dialog like it does for other things (like a missing description) instead of crashing.
  • Fixed: (Case 21210) Fixed a bug where listings with more than twelve images would upload no images instead of just being limited to the first twelve.
  • Fixed: (Case 21475) Now with support for auctions in addition to the already supported fixedpriceitem listings.
  • Fixed: (Case 21613) Added support for auction cancellations as well as the necessary database column for this feature.
  • Fixed: (Case 21613) Error handling added for auction listings.
  • Fixed: (Case 21611) Implemented error handling from sales and quotes screen.
  • Fixed: (Case 18603) eBay can now create new customers with the standard defaults.
  • Fixed: (Case 18035) Added a setting, configurable from the config screen, for whether the BuyItNow price is retail + core or just retail.
  • Fixed: (Case 22231) Global Shipping setting now pulls into the edit details screen and the listing.
  • Fixed: (Case 21971) Free shipping now correctly disables cost and sets it to 0 in the edit dialog. Unchecking re-enables the cost column for modification, but does not revert the cost change.

General

  • Added: the user can now drag items to the edge of all list controls that support drag and drop to scroll the list.
  • Fixed: if the user drags anything other than files into an attachment area, the 'no drop' icon is shown.
  • Added: if the user drags a file over an attachment area, the list's attachment system is disabled so that the user can drop files into the list as well.
  • Changed: when the user drags items within a list control, they are stored in a special clipboard format so that other applications don't think they can get them.

Global Settings

  • Added: (case 20434) support for saved chart templates in right-click graphs.

Graphing

  • Changed: (case 21229) to make the graph options dialog easier to use, the chart type dropdown is now a list with graph icons. Also, many of the controls in the dialog now have tooltips and clearer names.
  • Added: (case 14508) the graph options dialog now has a preview chart pane next to the chart options. This allows the user to see what the graph will look like without having to generate the final graph. The chart automatically refreshes whenever anything changes that affects it.
  • Added: a 'preview in external browser' button that shows the chart in an external browser window without having to close the dialog.
  • Added: an instructions field that tells the user what they still need to do before the current options can generate a chart.
  • Added: a series point shape column so that the user could choose what shape the points will be.
  • Added: trendline dropdown where the user can choose what degree of trendline they'd like to add to the graph for each series.
  • Added: the right click graphing dialog now has the following new features:
    • Advanced mode: the user can go into 'advanced mode' when building a chart. This shows various extra options that may not always be required when generating a basic graph. The user's selected mode will be remembered.
    • Trendlines: the user can choose to display trendlines for each data series on the graph. If the user is in advanced mode, they can choose the type of trendline as well as whether the trendline's formula and fitness should be displayed in the legend.
    • Point shape: (Advanced mode only) the user can choose the shape of the points in a line/scatter chart for better black&white printout or colorblind accessibility.
    • Cumulative series: (Advanced mode only) the user can choose to make a data series cumulative, making it so that all values will include all previous values in the same series.
  • Changed: current graph template has been modified to no longer show scrollbars in embedded IE windows (required a slightly bigger buffer around all sides). The way the graph resizes has been optimized slightly to better use available screenspace.
  • Changed: current graph template has been modified to properly handle cumulative data series, trendlines, point shape selections, etc.
  • Added: an error message to chart generation that will stop the user if they choose a discrete (non-numeric, non-date) x axis for a line or scatter graph. While these graphs technically work, they are not very useful.
  • Added: (case 20434) support for saving chart templates as well as using saved chart templates.
  • Fixed: an issue where the right click graph template would show unnecessary 0.00 points in line charts if the series was cumulative.
  • Fixed: line charts with missing points are now smoother and interpolate between those points.
  • Fixed: a crash when adding new saved chart templates.

Interchange

  • Fixed: if the user hits enter when they're in the 'search area' of the interchange screen, a search will be performed, but hitting enter when entering interchange records down below will treat the 'enter' as a spreadsheet enter.
  • Fixed: a crash that could occur if someone doubleclicked an item with a dropdown where an invalid model was in a dropdown.
  • Removed: the sales meta-data no longer looks at non-stocked item sales.
  • Added: the sales meta-data now also looks at work order usage history.
  • Fixed: (case 21159) an issue where changing the sub-interchange # of an application might not correctly change all other applications in the group if the rows were new.
  • Added: tooltips to various controls on the screen to make it easier to use.
  • Changed: the minimum size of the choose interchange # popup has been increased to attempt to solve issues where some of hte information was not visible initially.

Login:

  • Added: support for a new permission for managing chart templates in right-click graphing.

Master

  • Fixed: an issue where the thread progress dialog that showed "X/Y processes still running" would sometimes show an incorrect # of elapsed seconds if some of the tasks took a long time.

Parts

  • Fixed: (case 20163) clearing the parts screen now correctly sets the available and hold quantity.
  • Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
  • Fixed: (case 20860) several issues related to tab order on various tabs.
  • Performance: saving large collections/breakdowns can now be as much as 3 times faster, especially on slow connections. Many queries that were being run to see if inventory on the collection had been modified since it had been loaded has been combined or eliminated.
  • Fixed: (case 20728) an issue where sending parts from the parts screen to the part modification screen wouldn't load anything up.
  • Changed: the save confirmation dialogs that are launched from many of the buttons and functions on the parts screen now look like the ones in use on the vehicle screen and some others (where the pages that changed are displayed). Also, the buttons have more specific verbs.
  • Changed: the save confirmation dialogs have had their phrasing adjusted to be more concise.
  • Fixed: (case 20896) an issue where parts wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
  • Fixed: (case 21206) an issue where the location dropdown was not wide enough.
  • Changed: the change log dialog now puts newer entries at the top, like all historical logs in ITrack.
  • Added: the change log dialog now puts the user's focus into the first new item, and uneditable items show their comment in a multi-line readonly edit.
  • Fixed: an issue causing variance locations to be created when the user opened a part that had unreceived serials 'In Transit' on a PO.
  • Added: (case 11280) the store dropdown at the top is no longer read-only. This dropdown has 2 functions:
    • 1. on new (unsaved) parts, this allows the user to choose what store to create the part at.
    • 2. on existing parts, this loads the part at the other store. This makes it so that the user doesn't need to use the search screen to look at a part record at other stores.
  • Changed: (case 11280) the parts screen now only puts the user onto the aftermarket page when the user clicks the Replenishable stock type radio, and not when they load a part or switch plants on a part.

Part Configuration

  • Fixed: (case 16267) an issue where the user could see a database error if a part type had a category that didn't match the displayed category name by case only. Now the interface shows which categories are in use, ignoring case.

Purchase Orders

  • Added: (case 20388) if a purchased item has a price different than the replenishment cost on inventory, an attention icon is shown. If the user double-clicks this icon, the inventory record will be updated.
  • Fixed: (case 20857) an issue where the 'core exchange' column in the POs return dialog was hidden, making it impossible for the user to specify that a return associated with an inherent core charge was an exchange instead of just a credit. This issue was introduced in version 12.
  • Fixed: an issue where the return dialog defaulted to just showing purchases from today instead of the last 90 days, as intended.
  • Fixed: (case 20893) an issue where some of the right click options in the return dialog were not working.
  • Fixed: (case 21052) a crash that could be caused by returning an item to a vendor.
  • Added: (case 7280) support for attachments on purchase orders. The attachments dialog is automatically shown to the user if the document has any attachments. Whether the user wants to view this dialog can be toggled with the attachment button, this preference is remembered.
  • Added: attachment support to transfer orders.
  • Fixed: attachment dialogs now correctly close on POs/TOs if the user switches screens.
  • Added: the PO and TO attachment dialogs now properly hide themselves when the user switches document pages.
  • Added: (case 21768) if the user added an inherent core line to a non-stocked purchase line that had an order fulfillment on it no longer copies that order fulfillment to the inherent core line.
  • Fixed: (case 21865) an issue where POs would automatically be marked as done receiving when a user without permission to receive inventory would save them after all quantity was received.
  • Fixed: (case 22419) an issue where transfer orders that were created due to a multi-store purchase from inventory overview would not properly update the 'on order' and 'on hold' quantities.
  • Fixed: an issue where, if the user's current store doesn't match the store inventory is being received into (POs and TOs both), the wrong store's settings might be used for the default inventory location and the receiving location.
  • Changed: the location column in the choose serial popup is now labeled Dest. Location to make its purpose clearer.
  • Added: (case 11065) the user can now set a 'Receiving location' for the entire PO posting. This sets all quantity/serials being received on a posting to got to the specified location. This can be accessed through the advanced operations button or the right click menu.
  • Fixed: (case 22811) an issue where unreceived purchase order serials were causing the parts screen to creating variance locations. Now, those serials are marked as On Order instead of In Transit, and On Order serials are not considered as part of the on hand quantity.

Reports

Billing

  • Added: (case 20164) settings for displaying "CONTINUED ON NEXT PAGE....." at the bottom of multiple-paged documents, except on the last page and displaying balance at the top of the document (per customer).
  • Fixed: (case 21515) updated period applied payment logic to include invoices with date = End Date. It was a < previously, not a <=, so it was possible for some payments to show incorrectly as unallocated.

Billing OIA

Removed: (case 20888) deprecating the report. Functionality is now covered by the OIA setting on standard Billing report.

Credit Summary

  • Fixed: (case 20780) the subreport and fixed the single values not showing up sometimes because the query used joins instead of left joins + aesthetic improvements.
  • Fixed: (case 20780) the graph was flipped horizontally.

Customers Added By Date

  • Added: (case 22261) customer email. Also tidied the report.

Customers With No Purchases After Date

  • Added: (case 20048) a sortby parameter, tidied the report

GL Activity

  • Added: (case 22063) a new parameter that lets you sort by Associated Customer, then Document Type instead of the standard Document Type if desired.

GL Entires By GL Account

  • Added: (case 20733) set the Document and GL Entry level group header to repeat with " continued..." suffix if applicable.

Inventory By Part Type & GL Category

  • Added: (case 18417) the ability to sort by the part type total columns (In Stock, Sales, Percent Profit) and an option to exclude the GL Category totals if you just want a summary. The ordering functionality required a substantial change to the report structure.

Inventory Detail By Part Type

  • Added: (case 8217) vehicles with cost remaining even if they are not status A or H (noted on report).
  • Added: (case 2086) a column for average core cost.

Inventory Summary

  • Fixed: (case 22572) now includes vehicles with overallocated cost regardless of status and quantity in addition to vehicles with cost remaining regardless of status and quantity. (updated condition from > 0 to <> 0)

Inventory Summary By Source

  • Added: (case 20507) a new third summary option, which will show each unique inventoryid/inventorystoreid item by tagnumber, store, and part type. Summarize option is no longer True or False; it is Part, Part Type, or Source. Tidied the report.

Inventory Exhausted

  • Changed: (case 2086) updated the way average cost is calculated

Inventory Misc

  • Changed: updated the way average cost is calculated, added a column for average core cost, and tidied the report.

Inventory Summary

  • Added: (case 8217) vehicles with cost remaining even if they are not status A or H (noted on report).
  • Added: (case 20172) the thousands comma separator to store quantity total. It was missing.

Inventory Summary With Cores

  • Removed: (case 8217) deprecated. Inventory Summary includes cores, so this is not needed.

Label

  • Added: (case 22257) Category. Category was on the standard inventory section of the report, but not the whole unit section.

Label Delivery Picking

  • Added: (case 21160) a new report for printing picking labels from the delivery screen.

Labor Detail By Employee

  • Fixed: (case 20315) report query; removed the JOIN to wagerate. user.wagerateid can be NULL.

Labor Log By Employee

  • Fixed: (case 20315) report query; removed the JOIN to wagerate. user.wagerateid can be NULL.
  • Fixed:(case 20738) hours rounding so decimals would always line up.

Labor Summary By Employee

  • Fixed: (case 20315) report query; removed the JOIN to wagerate. user.wagerateid can be NULL.
  • Added: (case 20165) estimated labor hours billed and labor charge for fixedlabor charge jobs using default workordertype rate or customer's custom labor rate.

Payment Receipt

  • Added: (case 21365) payment terminal transaction fields for credit card payments through the terminal.
  • Changed: (case 21365) some formatting in the terminal transaction section to make things more clear, added ----- header and footer and suppression on the authorizationcode line when it is absent
  • Added: (case 21365) terminal-captured customer name and lines for PIN VERIFIED, SIGNATURE CAPTURED ELECTRONICALLY, and SIGNATURE NOT REQUIRED as applicable

Pick List

  • Removed: (case 22486) cores.

Purchases From Vendor

  • Changed: (case 22456) expanded grand totals, splitting them across two lines and giving them more horizontal room to grow and don't show the number mask.

Purchase Order Posting Report

  • Changed: (case 22435) updated Posting # at the top to show actual Posting #, not purchaseorderhistoryid.

Purchase Order Receiving List

  • Changed: (case 22430) location ordering. It now considers rank.

Received Items

  • Added: (case 21793) the ability to group by source, if desired. Tidied the report and added back in Misc items, which were excluded previously. This report is absorbing the functionality of Received Items By Source.

Received Items By Source

  • Removed: (case 21793) deprecating the report. Use the Receieved Items report instead.

Sales By GL Category

  • Fixed: (case 22063) switched to using salesorderline.averagecost instead of salesorderline.cost for the cost column. Changed column header for clarity.
  • Fixed: (case 21976) changed the UNION to a UNION ALL in the query.

Sales By Category, Detailed

  • Removed: (case 21549) deprecating the report.

Sales By Invoice

  • Added: (case 22489) a top level store grouping with tiered subtotals.

Sales By Lookup

  • Removed: (case 21549) references to an old view, v_salesorderitem.
  • Added: (case 21549) cleaned up the report, and added wildcard support to the lookup parameter.

Sales By State

  • Fixed: (case 22692) a bad JOIN in the query that had been throwing off the totals due to row duplication.

Sales By Store Region

  • Added: (case 21507) adjustments, which were missing.
  • Fixed: (case 21507) Got rid of a superfluous JOIN to state in the query. Totals match against Sales By Invoice in testing.

Sales GL Entry Reconciliation

  • Added: (case 20640) adjustments and a comment header.

Sales Insights

  • Added: (case 21078) more options. Report now has an interval parameter that lets you pick Weekly, Montly, or Quarterly. A week is now considered Sunday-Saturday. Report is smart enough to know if an interval is incomplete and prints "so far" with the values. Widened bars in the bar graph. Improved all the queries with the new approach. Added customer # and part type # to the second and third sections respectively. Got pagenumber and N of M back in there in the page footer.
  • Removed: (case 22139) decimals on the invoice and line count on the Sales Insights section.
  • Added: (case 22139) partnumbers to top parts list.
  • Fixed: (case 22139) Job Lines and Misc Lines grouping together in the part list and pie graph; they are separate now.

Sales Order 11in

  • Fixed: (case 20831) replaced customerunit.customerunitid with customerunit.unitnumber when present.
  • Added: (case 20164) setting for displaying "CONTINUED ON NEXT PAGE....." at the bottom of multiple-paged documents, except on the last page
  • Fixed:(case 21122) fixed labor charge not showing up when there was no workclock activity
  • Changed: (case 21122) firstname + lastname to just user name when printing labor detail.
  • Added: (case 21365) payment terminal transaction fields for credit card payments through the terminal. An SO can have multiple payments, and therefore multiple paymentterminaltransaction sections - and there is handling for that.
  • Changed: (case 21365) some formatting in the terminal transaction section to make things more clear, added ----- header and footer and suppression on the authorizationcode line when it is NULL. Added a section in the footer for when paymentterminaltransaction.amount * -1 <> paymentline.amount. I don't want to misrepresent the credit card transaction amount, but we can't apply the wrong amount to the balance.
  • Added: (case 21365) terminal-captured customer name and lines for PIN VERIFIED, SIGNATURE CAPTURED ELECTRONICALLY, and SIGNATURE NOT REQUIRED as applicable
  • Changed: (case 21762) job part and labor sections to show separate group totals when showing details.

Sales Order Lines

  • Removed: (case 21976) deprecating this report.

Tag

  • Added: (case 18604) a QR Code that links to the part on HTP if it is public/worldviewable. This can be disabled with a setting, but is on by default.
  • Fixed: (case 20780) company product code in the QR Code - it was still hardcoded with a fake for testing.
  • Added: (case 20967) dynamic formatting to Category so up to 50 characters can fit, with resizing.
  • Removed: (case 20967) QR code functionality. This is temporary and will be added again when we can improve speed.
  • Changed: (case 21794) updated barcode format for serialized parts to *D<inventoryserialid>*
  • Added: (case 21668) serial number below barcode when present and when the setting to show tag below barcode allows it (same setting affects both).

Top Parts Age Trending

  • Added: (case 20780) a part type parameter.
  • Fixed: (case 20780) the line graph data not populating correctly for the Make/Man grouping.

Top Part Sales

  • Added: (case 21551) a new report showing top part sales, renamed "Top Sales Per Part Type" to "Top Part Sales" and cleaned up the report.

Top Sales Per Part Type

  • Removed: (case 21551) deprecated the report, the updated and renamed version is "Top Part Sales"

Transfer Order

  • Changed: (case 22436) the way serials are displayed, showing which serials go with which locations in the source and destination location columns

Vehicle Profitability

  • Removed: (case 8217) deprecating. Vehicle Value Analysis is a superior report that covers this functionality.

Vehicle Upside Down

  • Removed: (case 8217) deprecating. Vehicle Value Analysis is a superior report that covers this functionality.

Vehicle Value Analysis

  • Changed: (case 15147) replaced f_vehicle_cost_alloated with the new function f_vehicle_cost_consumed, which cuts out manual costing, pre-allocations, etc...

Weekly Sales Insights

  • Added: (case 20780) percentages to the bottom 2 charts and added a 5th column to the top chart for averages. Swapped "Other" color from purple to gray to match all the other Trending reports.
  • Changed:(case 20836) broke jobs out of "Misc Line Items" to have their own line.

Work Clock Times

  • Fixed: (case 22255) a time duplication issue. The Internal Entries section now excludes activities tied to a work order type to prevent duplication of time clocked on a workorder and an activity.

Work Order Internal

  • Fixed: (case 20909) updated margins, verfified database for every subreport, and fixed subreport parameter link for storeid - which may have been causing an "error formatting field object" issue.

Report Viewer

  • Fixed: (case 20702) an issue where some fixed report parameter value defaults would act strangely when the user selected them.
  • Fixed: an issue where date pickers for report parameters might show the year 1899 as the default value.
  • Fixed: an issue where date report parameters with fixed values might not get formatted correctly.

Sales Orders

  • Added: (case 19339) if the user voids a closed invoice and chooses to not void the payments, those payments are now unattached from the SO. This is to make it easier to find those payments in the future to associate them with another invoice.
  • Added: if the user switches *from* a document type that locks prices to $0 to one that doesn't, the lineitem prices automatically go back to the default customer prices.
  • Fixed: switching customers on an inventory adjustment document should no longer recompute the prices to not be $0.
  • Fixed: (case 10321) manually adding items to an inventory adjustment document should no longer load prices that are not $0.
  • Fixed: a recent regression where unnecessary popups were appearing when a SO was being voided (these warnings/errors don't matter if a document is being voided).
  • Fixed: an issue where switching to a document type that doesn't care about price violations might not correctly clear price warnings.
  • Added: a new "Card" payment button that allows the user to add a new payment from an external credit card terminal.
  • Fixed: (case 20854) an issue where opening the return dialog for a saved SO might show the saved line items on that SO twice.
  • Fixed: an issue where adding a new manual payment wouldn't always put focus into the first editable field in the list.
  • Fixed: (case 20893) an issue where some of the right click options in the return dialog were not working.
  • Fixed: hitting add payment buttons on the SO now properly puts the user into the payment list for immediate editing.
  • Fixed: (case 21102) a query error that would be thrown when the user sent an item from the warehouse management screen to an inventory adjustment document if that item had been written down more than once previously.
  • Fixed: (case 21157) edit closed SOs permission is now checked for whether the user can edit return reason on a closed document.
  • Fixed: an issue where saving changes on a closed SO (required a special permission) would not save any changes on the last item.
  • Added: if the user double-clicks a payment on the SO, the payment detail/external transaction dialog is brought up again. This allows voiding a payment that was accepted by mistake as well as viewing info about the transaction that created it.
  • Added: the credit card payment buttons are hidden if the credit card module is not loaded.
  • Fixed: (case 23012) an issue where the user could possibly delete a payment after accepting payment from the credit card terminal. Also, the user can no longer close a SO with an unsaved payment from the credit card terminal, as that would lose the transaction. The user must either void the transaction or save.
  • Added: (case 7280) a non-modal attachments pop-up dialog for the user to manage attachments with. This dialog appears by default, but can be toggled on and off with the attachment button. If the user opens a document with attachments on it, the dialog is automatically opened.
  • Fixed: an issue where text blinking stopped working due to a change in 2014.
  • Fixed: (case 18835) an issue where sales orders for customers who required PO #'s wouldn't pop up the requirement dialog if they weren't buying at least 2 items. Now, the PO # field blinks and the warnings pop up if the invoice subtotal is greater than $0.
  • Fixed: (case 22490) an issue where the "None Selected" option in the choose serial # popup wasn't working.
  • Fixed: the "In use" checkbox in the configure adjustment types dialog now correctly accounts for sales order adjustments and fees on bids.
  • Fixed: (case 22090) an issue where all modified job parts would always set the inventory id on save, overwriting any 'in-progress' action a user might be doing on the core management screen.

Search

  • Changed: (Case 18642) Smart Search now replaces $STORES with a list of OR statements specifying inventoryid. Not required, but can easily limit searches when using search modules.
  • Changed: (Case 13005) Smart Search Module list now uses checkboxes instead of a sticky list, and its right-click menu allows for selecting or deselecting everything.
  • Fixed: Search Defaults Page was not restoring Smart Search Module default selection when clicked (it did nothing instead).
  • Fixed: (case 20517) an issue where doubleclicking a vehicle attachment icon on the vehicle search could cause an application crash.
  • Added: a 'lookup VIN' button next to the VIN field, similar to the vehicles screen.
  • Changed: stock # field is now slightly larger, to facilitate longer stock #'s.
  • Fixed: several places where dismantled date was incorrectly labeled teardown date.
  • Removed: dismantled date from the dropdown searches since its already in the date picker search, which is a bit easier to use.
  • Fixed: the dropdown search for 'dismantled' now correctly looks at the dismantled date.
  • Fixed: (case 23108) an issue where image data from previous searches were not cleared when the user performed a new search.
  • Fixed: (case 23136) an issue where the model lists were based on the id of the currently selected part type instead of the type set id of the currently selected part type.
  • Fixed: (case 21654) an issue where the vehicle search page did not remember the user's selected store(s) to search. This system now works identically to the part search stores.

Transaction List

  • Added: (case 11402) all date and date/time filters now have a 'date range' dropdown column where the user can choose options like 'Last 90 Days' or 'This Month'. When one of these is chosen, re-running the report again later will automatically move the dates forward.
  • Added: (case 11402) support for "Custom: Relative" date ranges. These are like fixed date ranges (the user chooses the start and the end) except that the dates are remembered as offsets from the current date (such as 120 days ago or 3 days in the future). This gives users the ability to save search templates that have date filters that 'move' as the user runs the filter in the future without having to use one of the specific date ranges supplied by the system (such as "This Month" or "Last Year").

Utilities

Print Queue

  • Fixed: (Case 21424) Configuration Default settings have been improved
  • Fixed: (Case 20820) Support for default parameters has been added.
  • Fixed: (Case 20582) Network connection loss should no longer crash PrintQueue
  • Fixed: (Case 19307) Support has been added for custom report titles
  • Fixed: (Case 20144) Error reporting has been improved.

Vehicles

  • Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
  • Fixed: (case 19111) vehicle costs could be incorrect if any POs had invalid vendors.
  • Performance: saving large teardowns can now be as much as 3 times faster, especially on slow connections. Many queries that were being run to see if inventory on the teardown had been modified since it had been loaded has been combined or eliminated.
  • Fixed: (case 20849) an issue where, if the user changed a vehicle's status, user status, or (especially) location, then choosing to cascade that change to all associated inventory records, that change might get rolled back if there were changes to the same items on the bids/teardowns tab.
  • Added: if the user cascades location changes from a vehicle to parts on a teardown, that change is now immediately reflected on the teardown screen without having to reload.
  • Added: the retail price in the location/status cascade dialog is now right aligned and sorts correctly.
  • Fixed: (case 20896) an issue where vehicles wouldn't save reordered attachment ranks if they hit the save button instead of the close button.
  • Fixed: (case 20955) an issue where the hidden field vehicle.dismantled was incorrectly being set by the 'purchase date' field instead of the dismantled date.
  • Fixed: (Case 16989) make sure any new quantity on teardown items doesn't go into the variance location.
  • Added: (case 23034) misc parts on a vehicle teardown will no longer copy the year/make/model/VIN/body style from the vehicle when it is changed. Only Standard parts will automatically copy that information to all associated parts.
  • Fixed: (case 21953) a rare issue where a teardown/bid item with a bad inventory type might cause a crash when loading the vehicle.
  • Added: (Case 21416) Added a new graphing tab to the vehicles screen. This area shows a vehicle 'break even' graph showing cost and revenue over time.

Vendor

  • Fixed: (case 14034) if the user attaches a duplicate file, they will now see a user-friendly error message with a button to quickly remove the duplicate file.
  • Fixed: if a price class doesn't have a store-specifc override, the "Default" entry is automatically selected.
  • Fixed: (case 10091) an issue where selecting a new store to create store-specific price class overrides might save all the values as 0.
  • Fixed: a possible crash when editing a price class and switching whether it is global.
  • Fixed: (case 21814) an issue where loading a vendor, then loading another vendor without clearing the screen in between might cause attachments to move between the vendors.
  • Fixed: minor issues with button sizing.

Vendor List

  • Changed: position of controls on the screen has been standardized with other screens.
  • Fixed: (case 15015) phone/fax searches now allow the user to search correctly instead of treating the input as a number.
  • Added: date based searches now use a date-time picker to avoid ambiguity of date formatting.
  • Performance: date based searches should now be slightly faster.
  • Changed: (case 23171) vendor smart searches with multiple words will now automatically require all words to be present in the results.
  • Performance: removed some unnecessary searching that happened as part of a vendor smart search that may have added slowness to these searches, especially when no results were found.

Work Orders

  • Fixed: (Case 20339) a crash when sending items from search to a WO from the right-click menu.
  • Fixed: (case 20023) an issue where inventory on WOs would use retail price instead of customer pricing for jobs set to use customer pricing.
  • Fixed: some minor display issues causing some controls to not be placed like on other screens.
  • Performance: deleted parts now run a single query to delete locations/order routing/etc. This will make saving a little faster when items are deleted.
  • Fixed: (case 18878) estimate WOs no longer prompt the user for serial #'s for master parts or job parts.
  • Added: if the user changes the 'estimate' checkbox, all serial # related attention icons are refreshed, so that if a WO leaves estimate state, the user will see that they need to choose a serial #.
  • Fixed: an issue where the user could not view the part requests on voided or closed WOs.
  • Added: (case 7280) work orders now support attachments. Drag and drop attachments into the new popup to attach things to a WO. Use the attachments button to show/hide the popup.
  • Added: (case 21878) if the user attempts to load an inactive work order type, the work order will now load correctly.
  • Fixed: several crashes related to work order types that were inactive.
  • Fixed: if the user edits the current work order type and renames it, it will be renamed in the dropdown correctly.
  • Fixed: (case 21883) an issue where the user could delete or add items to a closed WO.
  • Fixed: if the user sends items from search to a closed WO, those items will be ignored.
  • Fixed: the 'core returned' checkbox in the edit item dialog no longer can be toggled if the work order is closed or voided.
  • Fixed: an issue where blank, empty items would be unnecessarily added to the bottom of a WO if the user added an inherent core or dirty core exchange to an item on a WO.
  • Fixed: (case 22090) an issue where all modified job parts would always set the inventory id on save, overwriting any 'in-progress' action a user might be doing on the core management screen.

Release Candidate Change Log

Changelog Archives