Changelog

Enterprise Desktop
4/8/2026

Installer

  • Changed: the ODBC driver now uses the unicode version instead of ANSI.

e-commerce

  • Fixed: an issue where remote purchases that need inherent core lines were not correctly creating the inherent core line and were throwing an error.

Configure Shipping Integrations

  • Added: a product specific permission is now checked as part of seeing if the user can edit values on the shipping integration page.

CreditCardProcessing

  • Fixed: (case 60966) an issue where trailing spaces in a customer zip code might cause the PAX S300 credit card terminal to throw an error.

Customer

  • Added: (case 57533) per user request, invoice truck # is now displayed on document history on the customer screen.
  • Fixed: an issue where, for the last couple versions, new customers were not correctly being given a valid set of invoice terms from the list of available options.
  • Fixed: an issue where, when creating a new customer, if the user did not go to the payments tab, the checks that ensured a valid set of invoice terms or payment method would not be validated. Now they are tested whether the user goes to that tab or not.
  • Added: (case 58333) there is now a store level setting "Customer"->"Payments page: default invoice terms for new customers" which controls the automatically selected invoice terms for a new customer account. Previously, the first non-blank option would be automatically chosen. This setting defaults to nothing, keeping previous behavior where the first set of valid terms were auto-assigned to new customers.

Database

  • Added: (Case 60324) Add Alternate Part Number to Transaction List for the Inventory Source
  • Added: (Cases 57741/58920 and 57739) Add a store selector to all dashboard reports and charts, and fix the queries of all charts to reference v_invoice instead of specific sales order document id
  • Fixed: an issue where finalizing an inventory adjustment SO would mark serials as Lost, but reopening a SO with Lost serials didn't make them available again. Now it does.
  • Added: (Case 60348) Add Status H and C to Status Filter in Transaction List for the Inventory Source
  • Added: as per a suggestion by a user, we now log changes to the setting table as well as the setting values for global and store level settings (not user level settings). This gives power users the ability to track why important settings have changed over time.
  • Changed: (case 60632) reportsubscription and reportsubscriptionparameter tables to be able to handle a scheduled report that will run a query and either email or save it to a directory.
  • Changed: reportqueue and reportqueueparameter tables now have a sourcetype and sourcequery columns to handle distinguishing between reports that just run a query and send a CSV or those that run a crystal report and send a PDF. All existing entries with a destinationtype of CSV have been converted to sourcetype Query and have had their query value moved from the reportqueueparameter table to the reportqueue.sourcequery field.
  • Changed: the event eschedulereports that generates reportqueue records from reportsubscription records now knows how to handle the new sourcetype field. Error handling is now specific to the sourcetype.

Integrations

  • Added: if a tax jar request fails due to an HTTP connectivity error, that error will be shown. Before, an empty error was displayed.
  • Fixed: an issue where the API POST requests would not follow 301/302/303 redirects. Now they will.

Inventory Overview

  • Changed: (case 60710) switching the "load informational stock levels" setting's default from False to True, since users who had it off complained about wanting the information that it provides. My guess is this is now a useless feature and should be removed to simplify things.

ITMySQLConnection

  • Fixed: (case 53807) an issue where, if a mysql connection was closed due to inactivity or server shutdown, the connection would silently auto-reconnect, but the first query run on the fresh connection would return no results.

Master

  • Fixed: an issue where the logout vs close value wasn't being sent correctly. This was causing weird popups in some screens.

Parts

  • Changed: the 'created on' and 'last used on' columns in the serial # list will now always show "Sales/Work/Transfer/Purchase Order" instead of "Sales/Work/Transfer/Purchase Order Line"

Part Configuration

  • Fixed: (case 60924) an issue where entering multiple 'new' part types at the same time would erroneously claim that two or more part types shared the type # of 0.
  • Fixed: (case 60924) an issue where duplicate part type names would not correctly be shown to the user as an issue. Now they will see a popup telling them that every part type must have a unique name.
  • Fixed: (case 60924) a rare crash that could occur when creating a part type with a manually entered part type # that matches an existing part type, then deleting it before save.

Purchase Orders

  • Changed: the 'source' column in the 'choose serial' popup now displays more compact source document information.
  • Changed: the edit item dialog has been widened to make it easier to see all information about a serial.

Sales Orders

  • Fixed: (case 60089) an issue where the popup that would tell the user "this item is on an ebay auction, do you want to remove that listing" would not correctly cancel the save operation if the user didn't have permission to cancel ebay auctions and/or if the ebay API call failed.
  • Fixed: (case 60089) an issue where choosing "remove items from document" in the "item is on an ebay auction" popup would remove the items temporarily but they would not be saved.
  • Changed: serials created from/used on a sales order document now save their 'source' and 'used on' document type as Sales Order Line instead of Sales Order. This is to match all the other documents that support serials.
  • Changed: the 'source' column in the 'choose serial' popup now displays more compact source document information.
  • Changed: the edit item dialog has been widened to make it easier to see all information about a serial and its Q&A.

Transaction List

  • Fixed: an issue where choice dropdown filters would not let the user type in a 'new' value, including wildcards.

Vehicles

  • Added: (case 59678) two new settings that control how vehicles are cloned via the "Copy Veh" button. The first setting "Vehicles"->"Copy Settings: copy vehicle bids when copying vehicle" (default: False) controls whether bids get copied to the new vehicle. The other setting, "Vehicles"->"Copy Settings: copy vehicle teardown when copying vehicle" (default: True) controls whether to copy the teardown and its items as a default template to the new vehicle.

Work Orders

  • Fixed: a minor issue on save, where a WO with no jobs might not validate save correctly.

EE Reports Change log version 37 REVISION 23821-24048

Reports

Inventory Count Sheet - LXW (InventoryCountSheetLXW.rpt)

  • Fixed: (case 61378) an grouping issue where rows would not display correctly when the last item from one location was the same as the first item from the next location.

Packing Slip (PackingSlip.rpt)

  • Fixed: (case 58639) salesorderdocument specific memos
  • Changed: (case 59157) modified a new version of PackingSlip.rpt from revision 23876 of SalesOrder11in.rpt by removing prices and making minor adjustments. This should happen periodically.

Sales Order (SalesOrder11in.rpt)

  • Added: (case 58640) new setting to label partnumber serials
  • Added: (case 58390) a setting to include expirations when applicable
  • Fixed: (case 59406) expired tax exemption IDs appearing on SOs while non-expired exemption IDs with an expiration date did not
  • Changed: (case 59483) header option optimization
  • Fixed: (case 59658) alternate line shading was always on and did not respect the new setting

V37.0.1 (12/5/2023)

Vehicles

  • Fixed: (EE-484) an issue where vehicles that were imported into the system as status C or D would not show its teardown any more. Now, a teardown should be visible even on a status C or D vehicle, though components that are status C or D are still hidden from the teardown sheet.
4/8/2026

Highlights

  • Support for advanced Q&A on the work orders screen when filling out Q&A on new serials.
  • Improved serial # support on many screens, including their locations and Q&A values
  • Clarified and improved loading large numbers of customers or vendors via search to avoid crashes some users were having when running out of memory
  • More support for PO accounting
  • Signficant improvements to the eBay screen including speed-ups, crash fixes, added tooltips, better keyboard navigation, better naming of ebay shipping types, support for free or charged local pickup, the ability to map listings to local inventory, support for setting listings' Brand and MPN, copying part type templates, and more

General

  • Fixed: an issue where lists could not save column order/column widths in lists with a lot of columns.
  • Changed: users with very large list controls were finding it very slow to drag and drop items. To improve this behavior without removing precision, the longer the user drags a row in a list in the same direction, the faster the scroll will be.
  • Fixed: there was a report that tooltips were not working inside popups. The tooltips would only show if you alt+tabbed away and back, forcing the main window to be focused instead of the popup. This has been fixed
  • Fixed: several improvements made to screen based tooltips, including piercing through transparent overlapping windows.
  • Added: all top level windows in the application will now respect the windows user's 'darkmode' vs 'lightmode' setting with regards to the title bar.

eCommerce Synchronizer

  • Fixed: a crash/error that could occur if there was no local online sales history, which would happen on first run.
  • Added: (case 57564) when creating new sales orders, the same default shipping method that would be used by the desktop will now be set on the new document. This is based on a setting in ITrack Enterprise ("Sales Orders"->"Default Ship Method") and hard-coded to None in ITrack Pro.
  • Fixed: Store id of 0 is now treated as 'unset', since that is never a valid store id in the system and would trigger foreign key errors.
  • Fixed: an issue where if the remote transaction table was missing the paid attribute, it would crash instead of importing documents. Now it should just consider those documents never paid.
  • Fixed: (Case 58672) When a new customer is created in ITrack, the customer should now get all payment methods marked as being for new customers assigned to them as available payment methods. Previously, no payment methods were assigned to newly created customers. Additionally, for Enterprise deployments, the customer will inherit the same storeid as the document.
  • Added: handling for when the storeid in the config file is invalid. In that case, the newcustomer.storeid value is not set, allowing it to remain NULL in the database.

Database

  • Changed: (case 56724) support for inventory conditions to be up to 50 characters long.
  • Added: (Case 57393) ability to look up Payments by the invoice # they are applied to, OR if they aren't applied
  • Fixed: Case 56776 Fast moving "work in progress" serials no longer changes the status to found.
  • Added: Case 57967 Recreated WOMP Tag# Filter for the Work Order Source, delete old Master Part Tag# Filter
  • Changed: (case 57704) Clarify WORKCLOCKADMINISTRATOR permission must be set at global level
  • Added: (case 55752) a new stored procedure for replicating job templates between stores.
  • Deleted: several user settings that no longer matter because they have been replaced by global settings that do similar things. Since these settings may be recreated by other users that don't update in time, they'll be deleted again next version.
  • Changed: (case 57916) the logcustomermerge table, which logs all customer merge operations has been expanded to keep track of two new flags for tax exemptions and messages.
  • Added: logcustomermerge now has a 'set' type column to make what merge operations were performed more obvious than a sequence of binary flags. The previous mergeflags column has been kept for backwards compatibility, but will be deprecated in a future version. A trigger has been added to keep the old merge flag bits in sync with the new mergeoptions set. An insert can reference either one and the other will be updated.
  • Added: (case 57916) a new stored procedure pcustomermergebyid. This procedure will merge one customer into another. The third argument is a set of operations to perform during the merge; if left NULL, all merge operations will be performed.
  • Fixed: pvendormergebyid did not notify the user if an error occurred during merge. Now any error that occurs will be sent, making it easier to use.
  • Added: (case 56723) when creating core banks for a part, instead of assuming a category of 'Core' a global setting will now be checked to see what new cores' category should be. This defaults to Core for backwards compatibility.
  • Added: (case 58702) the ability to filter payment transaction list searches by payment #
  • Added: a unique key on ebayshippingtype.
  • Added: "Local Pickup" shipping type for ebay.

Accounting

  • Added: (case 30385) the user can now rebuild Purchase Order accounting in the "Recreate GL Entries" advanced popup. To facilitate this, the recreate dialog now warns the user if they attempt to rebuild PO accounting with the 'delete old entries' checkbox checked, since POs don't support partial rebuilds.
  • Fixed: several bugs with the PO accounting rebuild dialog.
  • Added: icons to several buttons on the Activity Detail page.
  • Added: support for PO accounting with a different effective transaction date than 'now'. Document date will use the PO date, and "date closed" will use the posting date.
  • Fixed: (case 58334) performing PO accounting for void documents should now work correctly.

CrystalReportsExtension

  • Changed: to avoid confusion, the "Favorite" checkbox in the "Choose report to print" popup has been replaced with a star icon. This dialog appears if there is more than one report option when performing a print job. This will make it clearer that the user is simply choosing a favorite, not checking which report to print.

Customer List

  • Changed: it was possible the user could search for so many customers that windows would run out of memory to display items in the list. I tried to make this possibility smoother and less likely to crash. Also, if huge numbers of customers are loaded, their Q&A values will be loaded in batches to avoid query errors.
  • Changed: there was a user setting called "Maximum # of results to display". It did not actually control a maximum set of results, but instead caused a warning to appear. This user setting has been removed and replaced with two new global settings: Search result maximum size (defaults to 5000) Search result warning threshold (defaults to 1000) These two settings control the number of search results to trigger a warning popup and the hard cap on how many results a user can load. This enables an administrator to keep users from doing searches so large that they run out of memory.
  • Added: the warning dialog that would appear if the user's search would return too many results has been better formatted and it now tells them the hard cap on number of items to load if their search result will exceed that limit.
  • Added: (case 57916) the merge customers dialog now has two new checkboxes for controlling whether to migrate custom messages and tax exemptions as part of a customer merge.
  • Added: the merge customers dialog will now merge customer contact tickets if the "Contacts" check is checked. Historically this merged a different kind of customer contact data, but it is rarely used.
  • Fixed: (case 59110) a crash that could occur during assessing finance charges when the screen would attempt to calculate the previously assessed month if that month rolled over into a previous year.

eBay

  • Fixed: an issue where the default ebay customer might show as a blank if the selected customer had no company contact name. Now the company name is shown, if present, otherwise it falls back on the contact name, and then the customer ID #.
  • Changed: (case 56609) double-clicking an auction will now always open in an external browser instead of the internal browser built into ITrack. This is because eBay does not support Internet Explorer anymore and shows an incorrect message that the auction could not be found.
  • Fixed: an issue where the user's focus would always come back to 'date range' whenever the user left the auctions page and came back.
  • Added: focus is automatically put into the auction list if the default search finds at least one auction. This allows better keyboard navigation.
  • Fixed: an issue where sending items from search to a new ebay auction might put the user's focus into the wrong page. This makes it so that the user can immediately arrow through the items sent to the screen.
  • Added: hitting enter on the new listings page will automatically pop up the edit item dialog. This makes editing new listings easier.
  • Added: (case 42573) support for brand and manufacturer part number on all new listings. These used to always be passed as "Unbranded" and "Not Applicable", but the user can now edit them on any given listing before sending it.
  • Fixed: a rare crash when using the enter key to open the currently selected listing.
  • Fixed: a display issue that could occur in the rare case that quantity on hand for a SKU was negative.
  • Fixed: an issue where a dropdown on the config page wasn't working right. Also, rearrange several default fields to closer match the edit list dialog.
  • Fixed: tooltips were not working on the config page. Also added some tool tips to new controls.
  • Added: (case 42573) brand and manufacturer part number default fields. These defaults accept template syntax so that a company can decide what format of data they'd like to put in these fields on listings. By default, we ship with a mapping to inventory Manufacturer and Model, but the user can switch to vehicle make or OEM number as desired.
  • Added: help buttons next to brand and manuf part # fields to teach the user about templates.
  • Changed: shipping type of "Not Specified" and "Calculated Freight" no longer require any shipping methods to be specified, as they don't make sense in these scenarios.
  • Changed: renamed the "Not Specified" shipping type to be "Not Specified/Local pickup only" to more accurately reflect its use.
  • Added: if "Not Specified/Local pickup only" is selected, the shipping method area will be grayed out and none of the defaults will be transmitted, as ebay doesn't allow shipping methods in this scenario.
  • Fixed: a misspelling in "Other Freight service" shipping type.
  • Added: (case 58537) it was found that local pickup was not working correctly in some ebay categories. To resolve this, if no shipping methods are passed, a special 'no delivery' option is passed that seems to make those listings work. In addition, a more obvious shipping type of "Not Specified/Local pickup only" has been fixed for those scenarios.
  • Added: "Local Pickup" shipping type to ebay screens. This is useful for scenarios where local pickup is available in addition to domestic shipping. Local pickup can be free or not. Some examples have been added to the wiki article at (https://wikido.isoftdata.com//index.php?title=Internal:Ebayshippingoptions#ShippingMethod%2FOptionCombinations) to outline pickup mixed with shipping.
  • Removed: a deprecated field in the ebay API ("NoHitCounter"). It isn't causing an error, but it causes an unnecessary warning.
  • Added: the part type dropdown in the ebay listing template dialog now shows part type name and number and is an auto-complete for easier selection.
  • Added: the ebay template list now shows both part type # and name in the template list. Also, the description field is resized to fill the list and can be clicked into to view all text in a scrollable window.
  • Added: keyboard navigation to the ebay template list. Enter edits the selected item, arrows to move around.
  • Added: (case 50557) a copy button to ebay template list. When clicked, the selected template and all of its data is made as a new copy and opened for editing.
  • Added: when the user adds, copies, or edits a template, their selection will no longer be lost.
  • Fixed: if there was an error during template saving, the dialog will no longer close, allowing the user to make changes and retry the save.
  • Fixed: an issue where opening the same template multiple times might lead to duplicate shipping options.
  • Fixed: broken tooltips in the template list and template edit dialog.
  • Added: deleting templates now has a confirmation popup.
  • Fixed: a couple potential crashes related to documents and eBay.
  • Fixed: tooltips on the auctions page, and added more tooltips.
  • Fixed: an issue where loading auctions from ebay with no SKU set at all might incorrectly pull the SKU of a previous auction listing.
  • Added: (case 57713) a Map Inventory button. This button allows the user to associate a local inventory record to a remote eBay listing. This is particularly useful when dealing with auctions created outside of ITrack. When this operation is run, ITrack will attempt to revise the SKU stored on the auction listing. If that is impossible (because the auction is closed/ended) the mapping will be created on the ITrack side only.
  • Added: doubleclicking a red "" cell for items not found in inventory will automatically perform the Map Inventory function for faster inventory mapping.

Locations

  • Fixed: a crash that could occur if the user selected a box not associated with a Location
  • Fixed: an issue where clicking boxes would not select the correct location unless the user clicked the location tree first.
  • Fixed: an issue where deleting a top-level box or text would not save due to order of operations during the delete.
  • Fixed: (case 57653) an issue where location codes were being cut off at 10 characters when it was supposed to cut off at 50.
  • Fixed: (case 58167) the code that checks whether the system has 'virtual' locations enabled or not will now check both "Enforce Location Heirarchy" as well as "Enforce Location Hierarchy". This will allow us to rename the setting in a future version without causing any issues with users checking different settings for this value.

Login

  • Changed: the password recovery popup has had several labels reworked to make the password recovery process more obvious.

Parts

  • Fixed: (case 57402) an issue where cloning a part would move all alternate part lookup rows to the newly created part instead of copying them to the new part. Now they are correctly copied.
  • Added: (case 56724) support for inventory conditions up to 50 characters long.
  • Changed: (case 57369) if the user changes part types, if any of the 4 'flex' fields are filled out, if the new part type has any fields with the same names, the values will automatically 'carry forward' instead of being thrown out. If the flex field titles don't match, the value will still be lost.
  • Added: (case 56778) a print tag button next to the serial # list.
  • Fixed: the 'choose tags to print' popup should no longer select items other than the suggested serials on first load. This was leading to the wrong serial tag printing in some scenarios.
  • Fixed: an issue where printing serial tags might not uncheck the 'print tag' checkbox on the Q&A tab correctly.
  • Added: the 'choose tags to print' popup will now load unavailable serials if specific serial #'s are being passed in to print.
  • Changed: if the user closes a serialized part and all that has changed is the 'locations' tab, the user will not be shown any change detection popup. This was happening because the system was rebuilding location quantities based on serial #'s whenever the user opened the screen. Now they won't be bothered by this automatic recovery process.

Part Configuration

  • Added: support for selecting more than one question in the inventory question list. This makes moving groups of questions easier as well as mass-deleting.
  • Added: (case 57354) the inventory options/questions area now has send up/down as well as send to top/bottom icons next to the question list. These buttons allows the user to send one or more questions up or down in the list easily.
  • Added: tooltips to inventory question edit area.
  • Added: the inventory question filter box now filters by part type, part type number, category, manufacturer, and model in addition to the question text.
  • Fixed: an issue where using the up/down arrows to move Q&A options around would not keep those items in view. Now the user will be scrolled to follow the item.
  • Added: improved moving Q&A options around in the list using drag & drop. Namely, if the user has a very large list, the longer they drag an item, the faster the list will scroll, making large lists easier to manage.

Part Modification

  • Fixed: (case 57882) a minor issue where deleting a column in the part mod screen on the right would not redraw the main list content to the right of that. This would lead to weird display issues until the user caused the list to redraw again.

Purchase Orders

  • Fixed: an issue where 'created by user' box would be blank on newly created serials on the TO tab.
  • Changed: serials will now show "NONE" for the created on document instead of "NONE 0-0 #0"
  • Changed: serials created on the currently document will now show "Transfer Order N/A" instead of "Transfer Order -1"
  • Fixed: a bug where transferred serials would get the wrong locationid at the destination store if the location name the serial was being received into matched a location at the source store.
  • Fixed: (case 58009) several minor issues that could occur if the user loaded an inventory item onto a PO, then went back into the lookup field and loaded a miscellaneous item from the vendor catalog. Some of the behind-the-scenes info from the inventory record would end up saved on the misc item, most notably the tag number. This could lead to some confusion about which item was being purchased.
  • Fixed: (case 58334) voiding a PO now properly reverses all previous accounting activity. This adjustment will show as "purchase order voided" event on the accounting history screen.
  • Fixed: (case 58380) an issue where attempting to search for a vendor by the vendor number would only use the first digit, leading to incorrect results. Now looking up vendor by # should work correctly. This issue affected vendor lookups on the Inventory Overview and Vehicles screens as well.

Quickbooks

  • Added: (case 58828) previously, PO accounting was not included in QB exports. Now PO accounting is allowed in exporting, as the company has a separate setting for controlling whether to generate PO accounting if they wish to skip PO accounting.

Sales Orders

  • Fixed: (case 57556) the gl accounting for adjustments is now refreshed when the user saves an open sales order. This fixes issues where adjustment types have had their gl account changed and open SOs did not grab the new account when finalized.
  • Fixed: (case 57835) an issue where return documents using a two-tier tax item would not correctly tax the amount above the break point.
  • Fixed: if a tax quote failed because the ITrackOnline module was not loaded, the screen would show "Calculating…" forever instead of showing an "ERROR" output. Now the user is shown an error correctly.
  • Added: (case 57699) "range search" options on the part search such as "Quantity Through" now show up in the search defaults tab so that users can choose to save range based options as a default.
  • Fixed: (case 58057) an issue where the user-assignable hotkey for "send selected items to part modification" could not be set in the configure hotkeys dialog. The default hotkey was also incorrect and collided with the POs hotkey, it now defaults to Ctrl + D.

Vendor

  • Fixed: (case 58096) an issue where the user was allowed to enter vendor codes up to 10 characters long, but only 8 were allowed to save. Now the user is restricted to 8 characters correctly.

Vendor List

  • Fixed: (case 58258) a couple edge cases where the vendor search results might show vendors not assigned to the current user as a purchase agent. Namely, smart searches that found a result by alternate address were ignoring this restriction as well as searching for vendor by vendor id.
  • Changed: it was possible the user could search for so many vendors that windows would run out of memory to display items in the list. I tried to make this possibility smoother and less likely to crash. Also, if huge numbers of vendors are loaded, their Q&A values will be loaded in batches to avoid query errors.
  • Changed: there was a user setting called "Maximum number of vendors to display". It did not actually control a maximum set of results, but instead caused a warning to appear. This user setting has been removed and replaced with two new global settings: Search result maximum size (defaults to 5000) Search result warning threshold (defaults to 1000) These two settings control the number of search results to trigger a warning popup and the hard cap on how many results a user can load. This enables an administrator to keep users from doing searches so large that they run out of memory.
  • Added: the warning dialog that would appear if the user's search would return too many results has been better formatted and it now tells them the hard cap on number of items to load if their search result will exceed that limit.
  • Fixed: (case 58385) a regression where vendor smart searches for using vendor code were not working. This was originally caused by a desire to make vendor list match customer list search, which searches by # only. To match the PO screen's vendor lookup and the previous behavior, vendor smart search will now look for exact matches on vendor code (if any are found, stop searching and show results), if that finds nothing, the normal smart search will be performed. To facilitate 'new' style searches by vendor #, the vendor # is now part of the main smart search. This should bring vendor list smart search behavior into parity with the PO screen's smart search box.

Vehicles

  • Added: per user request, the vehicle email dialog now has the Odometer reading as an option.
  • Changed: (case 57369) if the user changes vehicle whole unit types, if any of the 4 'flex' fields are filled out, if the new type has any fields with the same names, the values will automatically 'carry forward' instead of being thrown out. If the flex field titles don't match, the value will still be lost.
  • Fixed: (case 57530) a bug where loading a vehicle with no purchase date would change the purchase date to 'today' which would be saved if the user hit save. This was only true if the "Purchase date automatically set to title received date" setting was set to False.
  • Fixed: (case 56489) an issue where really long categories (longer than 20 characters) would not be saved on bid items. This could cause issues when converting the bids into a teardown and that teardown into inventory records.
  • Added: (case 58265) when the user builds an email from the vehicle screen, vehicle type name (labeled Vehicle Type) is now an available piece of information to put into the email.
  • Fixed: an issue where accepting a bid, even if the user unchecked the 'change user status', the user status would still be updated.

Work Orders

  • Added: (case 57692) previously, it was possible to reopen a WO that had already sent its jobs to an open invoice, add more jobs, and re-finalize. The new job(s) would not be invoiced, so accounting would not complete, leading to confusion. Now, if the user re-finalizes a WO after sending its jobs to a SO, any new jobs will also be sent to that same invoice automatically. If a historical WO is in this state, the user can click the 'open associated invoice' button on the WO screen, and any missing jobs will be sent to the current open SO. Then, upon finalization of the invoice, all jobs will be present and accounting will be created correctly.
  • Fixed: an issue where the icon on the edit unit/master part button was very small.
  • Fixed: an issue where editing a master part, then clicking cancel would lead to an incorrect attention icon.
  • Fixed: tab order in choose serial # popup.
  • Fixed: some weirdness that could occur if the user created a new serial # on an item that already had a serial # chosen.
  • Fixed: new serial #'s should get default Q&A correctly.
  • Fixed: the user should be able to edit Q&A on the selected serial # correctly now. This uses the new dynamic Q&A system added recently. Per-serial option defaults, modified value indicators, required value indicators, choice lists, etc should all work now.
  • Fixed: changing Q&A values for the selected serial # should save correctly now.
  • Changed: (case 55753) significantly reworked the 'choose serial' pop-up. Now, there is a serial location dropdown above the Q&A and it lets the user set the location of the chosen serial #. This makes it so that a serial being created or consumed on a WO can have its location changed even after the serial was first created. This is useful for setting a final location on serials created by a WO master part.
  • Fixed: several issues where changing the location or Q&A of a serial on a job part would not save or display correctly.
  • Fixed: several issues where the 'locations' on a job part would not recalculate correctly if the user changed the location of the serial that was chosen.
  • Fixed: an issue where changing the location of a serial on a WO master part would not work correctly during the finalization process.
  • Fixed: an issue where the 'add multiple jobs' button was clickable even on closed WOs.
  • Fixed: tool tips were not showing up in the new job/edit job popup. This has been fixed and several tooltips have been expanded and clarified, especially around the function of the shop fees box to make it clearer it can be either a fixed $ amount or a %.

Reports

Internal Work Order (WorkOrderInternal.rpt)

  • Added: (case 56998) a option to print the report in French

Inventory Detail By Part Type (InventoryDetailByPartType.rpt)

  • Added: (case 57090) a new setting to show part record date entered above location(s)

Inventory Summary By Source (InventorySummaryBySource.rpt)

  • Changed: (case 57552) this report now respects the Inventory Summary + setting to exclude cost remaining on non-inventory vehicles.

External Work Order (WorkOrderExternal.rpt)

  • Fixed: (case 57528) unit notes overlaying options below, and an issue where parameter values displayed.
  • Added: (case 57680) two new settings to not grayshade the job headers and choose whether parts or labor print first.

Label (Label.rpt)

  • Added: (case 57148) a new setting to include user status

Sales Order (SalesOrder11in.rpt)

  • Fixed: (case 57456) parameter link for font in the PartMessages sub report
  • Fixed: (case 57679) nested formatting causing payment amounts to hide
  • Added: (case 58183) a new header option (7) that is like option 5, but with full billing address.
  • Changed: (case 58253) made detail line description field longer when quantities are set to not show
  • Fixed: (case 57413) issue causing missing tax label when no tax item is present
  • Fixed: (case 58555) part type messages not respecting additional category parameters when present
  • Added: (case 58836, case 57678) 6 new settings to configure how jobs display and whether or not to shade alternate lines

Purchase Order (PurchaseOrder.rpt)

  • Added: (case 57562) a new store setting for PO memos
  • Added: (case 57562) a new store setting for html interpretation of PO memos

Received Items (ReceivedItems.rpt)

  • Added: (case 57599) a new setting option to include internal PO comments on detail mode
  • Fixed: (case 57599) issue with PO Internal comments not showing up

Tag (Tag.rpt)

  • Added: (case 57148) a new setting to include user status

Teardown (Teardown.rpt)

  • Added: (case 56715) new option to include user status description in addition to user status, based on a setting
  • Fixed: (case 56715) user status display when setting is 'True&Sort'

Work Clock Times (WorkClockTimes.rpt)

  • Fixed: (case 58107) entry hours not showing up

v36.0.1

Changes:

  • Fixed: (case 59367) an issue where deleting a serial with Q&A answers might make the "Default Q&A answers" list get cleared out. Also, fixed an issue where deleted serials might complain about missing required fields.
  • Fixed: (case 59383) an issue on sales orders where inventory adjustments that 'found' inventory would sometimes not get cost assigned from the original 'loss' if something from the original adjustment document had already been found. Now every line quantity is able to be claimed and returned separately, fixing a situation where found items would come back in with $0 cost even though a valid previous loss existed.

v36.0.2

Changes:

  • Fixed: (case 59529) an issue where the order of the workorders on the home screen was not newest first like all the other home screens.

V36.1.0 (3/9/2023)

Customer Contact

  • Fixed: (case 59137) an issue where attempting to close a customer correspondence ticket would not work correctly.

Home

  • Added: If the user clicks a link to open in a new window, it will now be opened in their preferred browser instead of internet explorer.
  • Fixed: an issue where sometimes the user would be redirected to a facebook URL when viewing the home page.
  • Fixed: suppressed certain tracking pixels from causing a blank ITrack online window to appear.

Master

  • Added: a file with additional manifest settings to be merged into the application manifest. This added explicit compatibility sections, which is supposed to enable some windows features.
  • Fixed: windows high contrast themes now display correctly on certain buttons.

Options

  • Fixed: Delete store button's text didn't fit on the button very well.

Parts

  • Fixed: (case 59228) a potential crash that could occur if the breakdown popup was launched from any screen other than parts. This could occur if the user sold an assembly component on a sales order and wanted to a breakdown from that screen.
  • Fixed: (case 59367) an issue where deleting a serial with Q&A answers might make the "Default Q&A answers" list get cleared out. Also, fixed an issue where deleted serials might complain about missing required fields.

Sales Orders

  • Fixed: (case 59191) an issue where a user without the 'can edit closed documents' permission could not void SOs even if they had the 'can void SOs' permission. Now, the 'can void' permission is sufficient to void a closed SO. Also fixed an issue where the two places the user could void (right side and in the advanced button dropdown) did not match when they were grayed out.
  • Fixed: (case 59383) an issue where inventory adjustments that 'found' inventory would sometimes not get cost assigned from the original 'loss' if something from the original adjustment document had already been found. Now every line quantity is able to be claimed and returned separately, fixing a situation where found items would come back in with $0 cost even though a valid previous loss existed.

Search

  • Fixed: an issue where the user could see a database error in some scenarios if they did a search, then doubleclicked the 'header' item in the collections info pane on the right to open the assembly parent item. Now that parent item will be loaded correctly.

Transaction List/Global Settings

  • Fixed: an issue where double-clicking vehicle results would not open those vehicles on the vehicles screen.

Updater

  • Added: the Updater.exe is now built with the same manifest settings as ITrack.exe, namely assembly identity and explicit operating system compatibilities.
  • Added: (case 59196) the updater now detects the current windows operating system version as part of updating to detect available windows features.

Vehicles

  • Fixed: (case 59388) an issue where the user had to hit ctrl + enter to add newlines to the seller info and pickup location fields. Now the user can just hit enter since it has no other function on this screen.

v36.1.1 (3/14/2023)

  • Fixed: (case 59709) an issue where, if an external tax quote was still in the "Calculating…" state, the current invoice balance would be unavailable, throwing off balance tests on save.
  • Removed: an unnecessary recalculation of tax quote on every save operation, as this was interfering with checking tax quote state during save, and was delaying saves.
  • Added: (case 59709) if, for any reason, an external tax quote is still in the "Calculating…" state when the user hits the save button, a special popup will appear letting them know the system is waiting for this to either complete successfully or return an error. This popup has a Cancel button in case they don't want to wait (though the save will be cancelled as well). This will prevent any issues where a slow tax quote might cause a save operation to use out of date information.

v36.2.0 (05/08/2023)

  • Added: support for a new shipping quote service, FPG. There is now a button on the sales orders screen to get FPG shipping quotes, and new configuration fields in edit->Integrations->shipping integrations. Feel free to reach out to us to ask more about this new shipping quote system.

v36.2.1 (05/11/2023)

  • Fixed: (case 60485) an issue where adding a payment to an unsaved invoice via the PAX S300 credit card terminal would create the payment correctly but would not associate it with the invoice in question. Instead it'd be an unassociated payment.
  • Added: new global setting Integrations->"Credit Card Terminal: submit tax information to gateway" which defaults to False. This disables a feature where local taxes are submitted to heartland payment systems. This does not seem to be load-bearing and causes errors in some tax jurisdictions, so this allows a company to opt in to this feature.
4/8/2026

Highlights

  • eCommerce support for payments
  • Completely redone customer and vendor Q&A system. Try it out!
  • Significantly expanded part Q&A system to match the updated vehicle Q&A system. Tons of new features, try it out!
  • Major improvements on the eBay screen
  • Many improvements to vendor list to match features that have been added to customer list over the years.
  • Better accounting error messages

General

  • Minor changes to lists to attempt to work around the crash reported in case 54051.
  • Various improvements to the installer file to modernize and fix many issues with dependencies and SSL certs.
  • Fixed: an issue where clicking the 'close application' box would prevent change detection messages from appearing for any open screens.
  • Removed: an old "Are you sure you want to close" confirmation popup on application close that had been broken for awhile.
  • Added: if the user has windows dark mode turned on, the application title bar will now show dark.

eCommerce Synchronizer

  • Added: when remote documents are marked as paid, the local documents will have payment records created.
  • Added: we now check a setting for default payment method for payments created from the ecommmerce integration. It defaults to Online Payment. If such a payment method can not be found, one will be created.
  • Fixed: an issue where EE integrators would always use the customerid returned by the HTP API, even when the misc local customer is more appropriate.
  • Fixed: a crash when attempting to build a line item description if the inventory record had no description.
  • Removed: temporarily removed code that would create a shipping adjustment on the document based on remote shipping charges. This is because currently shipping charges are decided in the local ITrack system, not on the internet.
  • Added: more log output for work being done to create payments for later reference.
  • Added: (case 53996) ability for web payments to be created and associated with the quotes created as internet sales.

Database

  • Fixed: an issue reported by users where a database error could be thrown if a particularly large list control attempted to save its column order/widths to the columnorder table. Maximum column width increased from 200 to 1024.
  • Removed: a unique index per case 53806
  • Removing some unused settings from the vehicles section
  • Case 54483: Add "Customer Type" as a display field to the Transaction List for the Sales Order Source
  • Fixed: an issue where inventory Q&A choices had a unique index on choice value that was global instead of per-choice.
  • Added: (case 53804) model fields for shipping dimensions
  • Added: inventory fields for tracking weight unit and shipping unit
  • Added: (case 54027) inventory type flag for requiring serialization.
  • Added: (Case 54428) Unit Number column on Transaction List
  • Fixed: a potential divide by zero error in fvendorfill_rate for new vendors when mysql strict mode is on.
  • Added: (Case 55369) vehicle.dateentered to Transaction List as display field and filter for the Vehicle Source
  • Fixing an issue where users could not create two inventory options with the same name but different categories/manufacturers/models.
  • Added: Case 55804 "Vehicle Unit" as filter for the Purchase Order Source to the Transaction List
  • Added: (case 55313) permission "Move All" button in scanner
  • Added: Case 56095: Update WOMP Inventory Join in Transaction List to use unique alias
  • Changed: (case 56507) the customer Q&A table now defines specifically what input types are allowed. Boolean has been added.
  • Changed: vendoroption.type is now an enum of specific, semantic types like customeroption.
  • Added: several indices to the eBay auction/transaction tables to improve loading and search speed.
  • Added: fulltext index to vendor alternate addresses so that we can search them like we do customer alternate addresses in smart searches.
  • Added: a foreign key in vendoroptionvalue to vendor.vendorid for both data integrity and speed. Vendor smart searches were very slow if there were large numbers of option values.
  • Changed: customeroptionvalue has had an index swapped out for a foreign key to match vendoroptionvalue.
  • Fixed: an issue where deleting a job from a workorder might not cause the parts on that job to recalculate their holds. Now deleting a job will cause any job parts to recalculate holds correct
  • Changed: the version of prunforalltables that was deployed was out of date, so deploying it again. This should only effect the weekly optimization of all tables so that they skip any archived or deprecated tables.
  • Added: (case 57022) several indices to common tables to improve the speed of common operations on large databases.
  • Fixed: re-released prunforeachtable because it was missing some considerations for tables named ARCHIVE_ or DEPRECATED_
  • Deleted: attempting to delete any historical columnorder entries with values that are outside of reasonable bounds. This is because there was a small window in which invalid column width information was being saved, leading to users having to reset these values manually.

Accounting

  • Added: (case 56721) while generating accounting for payment(s), if the AR gl account id or payment method specific deposit gl account id are not set, the user will see a specific error (historically they would just get a more general accounting error which was harder to interpret).
  • Added: (case 56721) while generating accounting for a sales order, if tax accounting could not be completed because the Accounts Receivable account was not set, the user will see a more specific error (historically they would just get a more general accounting error which was harder to interpret).
  • Fixed: (case 56946) a rare bug where, if the user modified a GL account, if it was the currently selection in one of the global setting dropdowns at the top of the screen (such as AR or AP), the next time the user closed the screen, that account setting would be reset to blank. This has lead to users getting accounting errors because their AR account got cleared after they made a change to the name or description of the account.
  • Changed: the global settings on the accounts and categories tabs are no longer first in the tab order, this is to help prevent situations where users may accidentally change the values of these dropdowns.

Customer

  • Fixed: (case 54183) an issue where deleting the only price contract would not save correctly.
  • Added: (case 56507) support for boolean/checkbox customer Q&A options. Such options will show a checkbox for filling out data.
  • Changed: all customer Q&A is now formatted to reduce guesswork for users with regards to how to enter 'formatted' values like currency/number/date. Where appropriate, specific controls are now used (date picker, checkbox, etc). There may be some need to convert historical data to comply with new formatted data standards. Please contact ISoft data systems if you have historical customer Q&A that you would like help converting.
  • Fixed: an issue where newly added options would not format their input field correctly based on input type.
  • Fixed: an issue where changing an existing option's type would not format its input field correctly.
  • Fixed: a potential database error that could occur if the customer had a blank value for an option saved, and the user tried to save a new value.

Customer List

  • Fixed: several issues with search vs Show All when the user picked search options that used specialized controls (date pickers/checkboxes/etc).
  • Added: (case 56507) support for boolean/checkbox customer Q&A options. These are displayed in the list as read-only checkboxes and can be sorted by check state. Also, added the ability to search by such fields using a checkbox filter.
  • Fixed: several minor formatting bugs when the user entered a search filter value.
  • Added: 'raw' user values are now formatted using the current user's locale settings when displaying data in the list. IE, dates, numbers, and currency will be formatted to match user preferences in the result list.
  • Fixed: an issue where the button did not change from 'show all' if the user did a smart search.
  • Fixed: a possible bug where searching by checkbox wouldn't perform the search if the user did a different search before that.
  • Fixed: an issue where having an empty value for a custom Q&A search would not show the 'show all' button and would not search for all results.
  • Fixed: an issue where doing a greater than/less than search on numeric or currency Q&A fields would not always compare results correctly.

Core Management

  • Fixed: the date range dropdown on customer cores now has a "Last 6 months" option. Also, ranges are no longer sorted alphabetically, but instead with a more logical order.
  • Added: checks to the from/to date pickers on customer cores to make it easier to have unbounded ranges.
  • Performance: an issue where the customer cores tab would load twice when the screen was opened if the user had the "Automatically refresh" checkbox checked. Now it will only load once on open.
  • Performance: the customer cores date range now defaults to the last 6 months to make loading faster on databases with a lot of sales history. Also, the user's chosen date range will now be saved on screen close.
  • Fixed: a bug where the "Owed to Vendor" checkbox was being ignored. Unchecking this value should now work correctly.
  • Performance: several filters on customer cores were causing reloads every time the user clicked into or out of them. Now it should only happen if a value actually changes.

Data Management

  • Changed: the inventory import now allows non-numbers in the OEM # input field.

eBay

  • Fixed: an issue where typing a new ebay customer in could crash if the user had to be taken to the customer list to choose between multiple matches.
  • Added: a "search" button, which reloads auction and inventory data from the database manually.
  • Added: an "auto-refresh" checkbox, which controls whether making changes to the auction filters will automatically do a search immediately or wait for the user to click search. This will speed up situations where there is a lot of data to load, and the user wants to make many changes to the filters without waiting for the search to complete in between. The user's preference for this check will be saved between sessions.
  • Added: a checkbox that will filter results to just those auctions that have a matching inventory record and hide the rest. This is useful when an ebay account has historical auctions that were not created from within ITrack and the user does not want to see those records. The user's preference on this checkbox will be saved between sessions.
  • Fixed: an issue where searching results might not scroll the selected item into view if the user had an auction selected before hitting search.
  • Added: the user's preference for the "need invoiced" and "w/ebay sales" checkboxes are now saved between sessions.
  • Added: support for the new "w/inventory records" checkbox when searching auction data.

Home

  • Fixed: an issue where the background color of open documents was forced to be white instead of the windows default background color. This conflicted with individuals setting a high-contrast dark theme.
  • Performance: (case 57022) on databases with large numbers of work orders, the WOs tab of the home screen could take a very long time to load the first page of results if the user had "Always" selected for the date range.
  • Performance: (case 57022) an issue where the sales orders tab would search for sales twice on initial open, which was particularly noticeable on slow database connections.

Interchange

  • Fixed: an issue where the model dropdowns in the list were not passing part type in correctly when loading inventory models.
  • Fixed: an issue where manufacturers were not being used to filter model dropdowns correctly for manufacturers that span part types. Now part models from other part types should not show in the model dropdowns.

Inventory Overview

  • Fixed: (case 53762) an issue where the 'last 4 months' columns had the wrong month labels.

Login

  • Fixed: an issue where users were allowed to proceed with password recovery on accounts that had no recovery email set. The grace period on this has ended, if any account has not had a recovery email set at this point, to recover their password they must talk to support or administration at their own company (depending on security settings).
  • Added: the password recovery email template now has information about the computer/install at which the reset attempt was initiated from to make it more trackable if a malicious third party is locking accounts by beginning a recovery attempt on them.
  • Added: if the security setting "Passwords: minimum count of online breaches to restrict passwords at" is set to "N/A" or a negative value, the user will be warned but not restricted on this system.

Manage Warehouse

  • Fixed: (case 56530) an issue where held serials would show "1" in the QA column in the manual count page.

Parts

  • Changed: the Q&A page now hides the serial #'s area if the part is not serialized. This gives much more space to the Q&A which is more important on the majority of inventory items.
  • Added: (case 53650) support for the new, enhanced Q&A system. Questions can now be part type, category, manufacturer, and model specific (or global to all part types). In addition questions can have dynamic defaults, as well as customized dropdowns, checkboxes, date pickers, text boxes, etc.
  • Added: support for reloading questions when part type changes.
  • Fixed: a database error that could occur if the user deleted a serial that was currently lost (in location Variance). This is because any associated inventoryvariance records were deleted with the serial, but then deleting the lost serial tried to 'balance' the loss. Now it will skip that.
  • Added: the dynamic Q&A system on the vehicles screen has been added to the parts screen as well. The questions can be part type, manufacturer, model, and category specific, and the answers can have default values and different data types.
  • Added: changing category, assembly manufacturer/model, and manufacturer/model now updates Q&A in case there are any category specific questions.
  • Fixed: an issue where loading a part might not load Q&A correctly.
  • Added: clearing a part now clears Q&A answers correctly.
  • Fixed: an issue where changing a Q&A value might not save correctly if the user changes serial #'s.
  • Added: support for serial # specific Q&A in the new, dynamic Q&A system. Adding a new serial # inherits defaults from the global defaults on the part.
  • Added: (case 54103) an extra hint on the tooltip for the lead time field to explain the 90 day window.
  • Added: some extra text to the tooltip for the lead time box to make its calculations more obvious
  • Fixed: an issue where changing part type might not migrate the category correctly.
  • Added: serialized Q&A should now work correctly with the new, advanced Q&A system. In addition, making changes to part type/category/manufacturer/model should now be reflected automatically in the answers on all serials.
  • Added: on loading a part, if any new Q&A has been added that has a default, those default values should now be created for each serial # on the part.
  • Fixed: an issue where, if a part had Q&A for serials and the part type or something was changed, serialized answers might inherit from the 'default' serial instead of carrying over previous values for the same serial # to similarly named questions.
  • Fixed: Q&A answers that no longer apply (due to changing part type/category/etc) are now marked for deletion on save.
  • Added: (case 54179) required options must now be filled out now to save. If the part is serialized, the question must be answered for each serial # that is on hand.
  • Fixed: minor issues with Q&A when cloning parts.
  • Fixed: an issue where dropdown based Q&A might show duplicate choice options.
  • Fixed: issues with replicating parts between stores with Q&A.
  • Fixed: an issue where loading a serialized part might copy default Q&A answers onto serials that have no answer for that question.
  • Performance: (case 56823) several overlapping issues that could cause loading or saving a part with >2k serials and several dozen Q&A options to take a very long time (2.5 hours), and is now much faster (12s for load, 2s for save). More improvements to come in the future on load time.
  • Fixed: an issue where the 'default' serial Q&A might not load correctly for a SKU with a large number of serials.
  • Fixed: (case 56847) an issue where the 'show unavailable serials' checkbox on the serials tab of the parts screen might get cleared (unchecked) every time a part is loaded.
  • Fixed: (case 56870) an issue where the 'delete serial #' button would be greyed out until the user toggled the "serialized" checkbox off and then back on. Now this button can be clicked so long as a serial is selected.
  • Fixed: (case 57280) an issue where the "uses serials" checkbox would not be checked correctly when loading a serialized part.
  • Changed: (case 57242) if the user marks a part as serialized that has no serials yet, the primary location of the part will no longer be deleted. This is because when this happened, if the part had quantity on hand but no serials, the quantity would go into Variance, and the user's default primary location choice would be lost. Now this information will be kept so that newly created serials will default to this valid location instead of Variance.

Part Configuration

  • Fixed: an issue where configuring inventory options (Q&A), the user couldn't change required options.
  • Fixing an issue where users could not create two inventory options with the same name but different categories/manufacturers/models.

Sales Orders

  • Fixed: an issue where user preferences in the 'save options' popup would not correctly save if the user cleared the screen after making changes. Now their preferences are saved as soon as they hit Ok in the popup, though preferences are still reloaded on each clear in case preferences had been changed elsewhere in the software.
  • Fixed: a potentially slow query when deleting sales order lines on save on larger databases.
  • Fixed: (case 55462) whether a reopened invoice would change its date on finalization was inconsistent. Now, if the user finalizes an invoice, no matter if it was previously finalized or not, the document date will be automatically changed to 'today'. This provides maximum consistency between open and re-opened invoices.
  • Fixed: a rare issue when saving a new payment and receiving some kind of error, if the user re-attempted the save, the payment might not re-save correctly.
  • Added: (case 56721) whenever attempting to save payments, if the previous gl accounts on the payment are invalid (and accounting is turned on), they will be refreshed from the database before save. This will help users recover accounting misconfigurations by re-saving invalid documents.
  • Fixed: (case 57032) an inconsistent issue where the user might get an error if search logging was turned on (it defaults to off) after doing a search and selecting an item to send to a screen. This information should log correctly now.

Vendor

  • Changed: (case 56507) vendor Q&A section redone to match customer Q&A features, including the new boolean option type.

Vendor List

  • Added: (case 56507) all features regarding Q&A searching and displaying that were added to the customer list screen have been ported to the vendor list screen.
  • Added: smart search now searches alternate addresses, like customer list smart search.
  • Added: many features that have been added to customer list over the years have been ported to the vendor list screen to make the screens have similar features.
  • Fixed: an issue where having an empty value for a custom Q&A search would not show the 'show all' button and would not search for all results.
  • Fixed: an issue where doing a greater than/less than search on numeric or currency Q&A fields would not always compare results correctly.
  • Optimization: the way that vendor Q&A has been improved to match performance optimizations made to the customer list screen.
  • Added: vendor account # as a searchable field.
  • Fixed: an issue where the search method (contains, equals, at least, etc) default to the correct item like the customer list search.

Vehicles

  • Added: (case 51437) a user request to support a new setting: "Vehicles"->"Purchase date automatically set to title received date". This setting defaults to False. If set to True, the purchase date field on a vehicle will be locked, and whenever the user changes the title received date, that value will be put into the vehicle purchase date as well.
  • Added: as per user request, when a vehicle type is chosen, if there is only one category, it is automatically chosen.
  • Fixed: (case 57241) an issue where using the 'Copy item' button on the teardown interface or the assembly breakdown interface might show that the newly created item would exist at quantity 1, but it would actually be created with quantity 0, which could lead to confusion and location discrepancies.
  • Added: (case 57300) the email preview will now rearrange in real time as the user drags and drops data points in the list.
  • Added: (case 57300) the relative order of data points in the build email dialog are now remembered for all non-QA fields. QA fields are dynamic, so they are always added at the end in rank order.

Work Orders

  • Fixed: an issue where the user might see a query error when creating new serials on serialized WO master parts due to a change in how Q&A defaults work. More changes are yet to come in this interface.
  • Fixed: (case 55752) an issue where attempting to add a job template to a WO whose template store is different than the store the user is logged into might load the wrong (or no) template.
  • Fixed: an issue where loading a part template with misc/non-stocked items might cause an error that items with a non-zero price must have a valid gl category. Now items loaded from a template should correctly refresh gl category just like items added from a search.
  • Changed: (case 56693) the WO # box, which can be clicked to load a new WO #, was causing issues in some rare cases where the user would get stuck in a WO load loop. This lookup box now works the same as the same lookups on the other document screens to avoid this issue.

Reports

Billing Statement (Billing.rpt)

  • Added: (case 55807) font setting for customer-facing-reports

External Work Order (WorkOrderExternal.rpt)

  • Added: (case 50885) a setting to change font
  • Fixed: (case 56616) workers who were currently clocked in being left out of hourly labor totals when summarizing labor by worker

Internal Work Order (WorkOrderInternal.rpt)

  • Added: (case 50885) a setting to change font
  • Added: (case 56322) a new setting to show jobtask hour subtotals by user
  • Added: (case 56322) work clock intime and outtime

Inventory Movement (InventoryMovement.rpt)

  • Added: (case 46131) a new report to track inventory usage

Part Search Results (PartSearchResults.rpt)

  • Fixed: (case 56300) NULL handling for flex field labels

Pick List (PickList.rpt)

  • Added: (case 54790) a new setting for hiding comments

Purchase Order (PurchaseOrder.rpt)

  • Added: (case 50885) a setting to change font
  • Added: (case 51984) a new hidden parameter for French mode

Sales Order (SalesOrder11in.rpt)

  • Added: (case 54017) new setting for Truck # field label
  • Added: (case 55110) a new setting to override counterperson label
  • Added: (case 55110) a new setting to override part number column label
  • Fixed: (case 55110) alternate header layouts now respect the new counterperson label override setting
  • Added: (case 55031) font setting
  • Added: (case 56003) new settings to optionally hide quantities and sale price

===Teardown (Teardown.rpt)

  • Added: (case 56715) new setting to show user status column. You can also sort by it.

Transfer Order (TransferOrder.rpt)

  • Added: (case 50885) a setting to change font

Transfer Order Posting Report (TransferOrderPostingReport.rpt)

  • Fixed: (case 57340) parameter issue with the serials subreport

Vehicle Spec Sheet (VehicleSpecSheet.rpt)

  • Added: (case 55031) font setting

Vehicle Detail By Part Type (VehicleDetailByPartType.rpt)

  • Removed: (case 47736) deprecated old report

Vehicle Value Analysis (VehicleValueAnalysis.rpt)

  • Added: (case 56512) status column, user status column, new setting to replace purchase date column with receive date column

Worker Scan Sheet(WorkerScanSheet.rpt)

  • Fixed: (no case) userid formatting to exclude commas on userids at least 4 digits long

v35.1.1

Highlights

  • Major rewrite of how serials are managed on WOs, and to a lesser extent, other documents. Namely, the user can now edit advanced Q&A for serials on the WO screen (both for job parts and master parts) and change the location of a serial number.

Changes

  • When editing a serial # chosen for a job part or a WO master part, the user can now fill out all advanced Q&A, and defaults will correctly apply to newly created serial #'s.
  • Serial numbers selected on a WO can have their location changed, when they are created, edited, and one last time on WO finalization (master parts only).
  • The parts screen will no longer mention change detection for serialized parts if the only change has to do with locations. This was happening because the system was rebuilding location quantities based on serial #'s whenever the user opened the screen. Now they won't be bothered by this automatic recovery process.
  • Fixed several minor issues and weird display issues regarding serial #'s on transfer orders

v35.1.2

Changes

  • The 'add multiple jobs' button was usable on closed WOs. It is now properly grayed out on such documents

v35.1.03

Changes:

  • Fixed: an issue where column order and widths might not save and restore correctly on the customer list and vendor list screens if the user had more than 60 custom Q&A columns

v35.1.04

Changes:

  • Fixed: an issue where very long category names would be cut off when adding items to a bid

This hotfix has also been applied to v32

v35.2.0

Changes:

  • If the user changes the part type of a part, or vehicle type of a vehicle, if any of the 4 flex fields are filled out, those values will 'carry forward' if the new part/vehicle type have a similarly named flex field.

v35.2.1

Changes:

  • Fixed an issue where locations were being cut off at 10 characters per 'level' in the tree, when they were supposed to allow up to 50.

This hotfix has also been applied to v32

v35.2.2

Changes:

  • Fixed: an issue where return invoices with a two-tier tax would not calculate exceeding the breakpoint correctly

This hotfix has also been applied to v32

v35.3.0

Changes:

  • Fixed: an issue where voiding POs would not reverse accounting activity if PO accounting was turned on
  • Added: the ability to rebuild general ledger entries from purchase orders from the accounting screen like with the other document types.

v35.3.1

Changes:

  • Fixed: (case 58422) the accept bid dialog on vehicles now correctly does not change the user status of a vehicle if the 'change user status' box is unchecked.
  • Fixed: (case 58385) a regression on vendor list where vendor smart searches using vendor code were not working.
  • Fixed: (case 58380) a bug where using the vendor lookup on purchase orders/vehicles/inventory overview to search by vendor id was not working correctly.

v35.4.0

Changes:

  • Brought a v36 feature into v35 early to fix issues some users have run into with WOs. Specifically, if the user re-opens a WO after it has been invoiced and add a new job, when the WO gets re-finalized, any newly added jobs will be sent to the associated SO to be invoiced.

Note:

If there are any historical WO documents with jobs that have not been invoiced, they can be corrected by loading the WO, and clicking the "Open/Send to invoice button"

Special/Unversioned

Updated VinPower installer has been released via the Auto-Updater. This will allow VIN decoding in the system in 2023

v35.4.1

Changes

  • The QuickBooks export screen now supports purchase order accounting, if it is turned on in the system. Previously, even if PO accounting was enabled, it could not be exported to QB.

v35.4.2

Changes

  • Fixed an issue where assess finance charges could crash in some situations

This release was also rolled out into Enterprise 34 as v34.1.07

v35.4.3

Changes:

  • Fixed: (case 59228) a potential crash that could occur if the user sold an assembly component on a sales order and wanted to a breakdown from that screen.

v35.4.6 (3/14/2023)

Changes

  • Fixed: (case 59709) an issue where, if an external tax quote was still in the "Calculating…" state, the current invoice balance would be unavailable, throwing off balance tests on save.
  • Removed: an unnecessary recalculation of tax quote on every save operation, as this was interfering with checking tax quote state during save, and was delaying saves.
  • Added: (case 59709) if, for any reason, an external tax quote is still in the "Calculating…" state when the user hits the save button, a special popup will appear letting them know the system is waiting for this to either complete successfully or return an error. This popup has a Cancel button in case they don't want to wait (though the save will be cancelled as well). This will prevent any issues where a slow tax quote might cause a save operation to use out of date information.
4/8/2026

General

  • Added: the parts screen now supports advanced Q&A, just like the vehicles screen in version 33.
  • Added: module versions to each file that is part of the product. This will be used in the future to detect if files are out of date.
  • Added: the help->about box now shows the database version as well as the product version.
  • Added: the help->about box now shows the product version each file in the application were designed for and ones that don't match the product version are shown in red with an attention icon.
  • Changed: the Help->About dialog no longer looks for a file called ITrack.exe and instead reads the product version from the main module itself in memory, in case the application ever uses a renamed entry point file.
  • Changed: if the user closes the application or it fails to load before its visible, the application will no longer overwrite the 'last' size/position of the application in settings.
  • Added: during loading extension modules, the product version of each file is now checked. If the major version of a loaded module does not match the master module, it will be put in a popup for the user to alert them to this (potentially) erroneous state.
  • Added: so that users can avoid seeing this popup on every launch, the popup has a "don't show this message in the future" checkbox. If checked, all those specific files at those versions will be remembered for that user. If any new files (or existing files at new versions) are seen later, they will be shown to the user again. The user can choose to continue loading all modules (previous behavior) despite the version mismatch, load only those modules whose version matches (skip bad files), or close the application.

eCommerce Synchronizer

  • Fixed: an issue where a NULL shipping amount would prevent invoice creation.
  • Fixed: an issue where failing to load a customer would still attempt to create the invoice without a customer. Warning in the logs updated to reflect this.
  • Fixed: misc items (items with no inventoryid) were not correctly creating non-stocked invoice lines.
  • Fixed: an issue where misc items were created for $0 instead of online sale price.
  • Changed: we no longer filter out remote sales that are in Pending or Charge Failed status, as those are no longer used. However, we do filter out status 'closed' as those are 'completed'
  • Changed: if a new remote sale line is found for an invoice that was already downloaded, that line will not be pulled into the system. This will avoid issues with circular creation for new lines created from ITrack.
  • Added: (case 53591) customer approval status is now pulled for all local documents to be compared to remote document information. If any documents have a status that is not correct, they are updated en-masse.

Database

  • Fixed: an issue where, if the user mapped 'bad' data to the field 'Stock Type' during an import using "Inventory" or "Vendor Catalog - Inventory Prices", the inventory would not get a correct stock type set. Now, it falls back on the default of 'Special Order'.
  • Fixed: because of the previous import issue, any inventory record with invalid stock types has been updated to be 'Stocked'.
  • Fixed: bad where clause in update from DLS to TForce permissions
  • Added: mobile teardown database schema
  • Added: city.purchaseregionid, which is a new region type per city similar to sales regions and store regions. This is useful for auto-assigning purchase agents to vendors.
  • Added: foreign keys to some fields in city and region.
  • Added: vendor.purchaseagentuserid which is the current purchase agent for a vendor. More features will be coming related to this association.
  • Added: a new permission for whether a user can search vendors that are assigned to other purchase agents. It is defaulted to on for any users that were able to view POs in the past.

Customer

  • Added: Edit->Regions->Purchase regions. This is a new type of region for associating a user to a group of cities/counties/states for automatically setting a purchase agent on vendors. This is similar to the sales regions and store regions for customers.

Customer Contact

  • Fixed: an issue where initially opening the customer contact home page might take a long time because it loaded all customer names for display. Now, only visible customers will be loaded (for speed) and only when needed.

Inventory Overview

  • Fixed: unnecessary flickering when the user stopped dragging a resize bar.
  • Fixed: weirdly sized buttons in the header.
  • Fixed: (case 52190) footer totals were not showing an ellipsis (…) when numbers were cut off, leading to confusion.
  • Fixed: (case 52190) on every refresh, the cost column was auto-sized to fit the data in the list, but the total in the footer was not considered, so it was often cut off. Now it will be resized to fit the footer as well.

Parts

  • Fixed: (case 52080) an issue where multi-line description or notes entered on the web interface might not display line breaks correctly.
  • Added: support for advanced Q&A, just like the vehicles screen. Questions can now have default answers for questions, required options, and questions that are part type/category/manufacturer/model specific. Also, serial # Q&A should default to being the same as the 'default' serial # answers.

Purchase Orders

  • Changed: vendor lookup is now slightly faster and has been redesigned to match the behavior of the vendor list keyword search.
  • Added: support for a new permission that controls whether a user can search vendors that have not been assigned to them, which now applies to the vendor lookup area.
  • Fixed: an issue where going into the PO return dialog would not correctly show the 'current' document and its items as able to be returned. This required doing core exchanges on a second PO.
  • Added: description and note fields now support linebreaks entered both in the desktop or web interface.

Vehicles

  • Fixed: (case 52269) an issue where, if the user had duplicate model names under multiple manufacturers for the same vehicle type, only one version of that model would show up. Loading a vehicle with an invalid or inactive model should still show that option in the dropdown.

Vendor

  • Added: support for setting a purchase agent for each vendor (optional). More features will be coming related to this in the future, but this is designed to be the user account manager for a given vendor and the designated purchaser.
  • Added: support for showing what purchase region a vendor's address falls in, based on purchase region (if any). This will automatically select a purchase agent based on region, if any. This is similar to customers getting a salesperson assigned based on sales region.

Vendor List

  • Added: (case 52459) support for a new user permission that controls whether a user can search for and find vendors that are not assigned to them as a purchase agent. By default, all vendors have no assignee and can be found by all users. A user with this permission can find all vendors, just like before.
  • Added: the ability to search by and see purchase agent on the vendor list.

Work Orders

  • Fixed: in a previous version, it was intended to allow WOs to add assembly records, but it was not being allowed. Now, assemblies can be added to a WO job, though a status bar warning is shown to the user to make sure they know that some cleanup of components may be required.

Reports

REVISION 23209-23283 FOR EE V34

Billing Statement (Billing.rpt)

  • Fixed: (case 52344) a row duplication issue with different salesorderdocument types in the Period Activity section of the report, when present

Inventory By Tagnumber (InventoryByTagnumber.rpt)

  • Added: (case 51512) an inventory report that can filter and group by tag, similar to the sales by lookup report but for Inventory. Tag parameter supports the wildcard *

Outside Sales Commission (SalespersonCommission.rpt)

  • Added: (case 51726) new group and parameter options
  • Changed: (case 51726) general report cleanup

Pick List (PickList.rpt)

  • Changed: (case 51688) updated report query to account for missing quantity, including partially missing quantity, and added a separate group for this on the report so it stands out
4/8/2026

e-commerce integration

  • Added: support for the customerid attribute missing on new_sales view
  • Added: newlines in web comments are now given carriage returns.
  • Added: the HTP synchronizer application now sets a setting on first launch. This alerts other applications pointed at the database that the synchronizer tool has been installed.

General

  • Fixed: the about box could show an error if the 'credits' url in the host.ini file was blank. This could lead to bad behavior in particularly corrupted or empty ini files. Now the user will be taken to the default URL.
  • Fixed: a possible crash that could occur in a list control if going to the bottom of the current page of results if they didn't fill the screen.
  • Fixed: a crash when Resizing a column outside of the boundary of the column count.
  • Fixed: an issue where release builds were linking against mysql 6.1.5 instead of 6.1.11
  • Fixed: an issue where blank Time-only list control cells would be automatically turned into 'current time'.
  • Fixed: another issue where midnight "12:00 AM" would not be handled correctly in time-only list control cells.
  • Fixed: (case 51470) an issue where popups were being restricted to the primary monitor instead of the monitor of the window that launched them. Now they should be centered by default over the window that created them.
  • Fixed: (case 51470) an issue where popups that 'remember' their last position could not restore a location that was on a secondary monitor correctly.
  • Added: Column Tree Controls now support column header tool tips.
  • Fixed: (case 51708) an issue where dropdowns in a list control on windows 11 might not look quite right. In addition, dropdowns in the first item might flicker unnecessarily.
  • Fixed: a rare issue where, when a list edit/dropdown/date picker/etc disappears, the list cell behind it might not draw correctly.
  • Fixed: date/time controls in list controls would 'revert' their input when the user hit escape, but would not hide correctly. Now the date control will be hidden correctly.
  • Added: the 'filter' box in the configure global settings popup now uses a timer to wait for the user to stop typing before searching.

Graphing

  • Added: some extra code to the right-click graphing template that will keep waiting to render the chart until the google charts library finishes loading.

Database

  • Updated: right-click graphing template should no longer encounter a JS error if loading the google charts library takes too long.
  • Changed: DLS settings and permissions to reference TForce, as per their rebranding.
  • Added: support for shipping types in ebay templates.
  • Fixed: Case 50579: Transaction List: Part Image Count is not written properly
  • Fixed: an issue where duplicate import commands were allowed.
  • Fixed: (case 50817) an issue where an e-commerce field didn't match the corresponding field on HeavyTruckParts.net.
  • Added: Case 50968: Add several fields to Transaction List for the Purchase Order source for Dex
  • Added: several new fields to the salesorder table that will track e-commerce document approval status. One controls whether the local salesman has reviewed and approved (or rejected) the document and the other is for tracking customer approval status.
  • Fixed: re-released the contents for the saleclass table, as they were missing from some recently created databases.
  • Added: (case 51200) the customer pricing function (f_inventoryprice) now considers inventory.cost instead of inventory.averagecost when inventory quantity on hand is 0. This is because inventory with 0 quantity cannot have an average cost, and affects customers set to pay a markup of Average Cost as a price level.
  • Fixed: an issue where pinventorydefault_prices was not computing distributor price correctly.
  • Changed: Several columns on the vehicle table have been increased in size to account more user data. Also rearranged some columns to put the title columns together
  • Case 51643: Add inventory.category to the Transaction List for the Inventory Source
  • Case 51644: Add Total Retail Price of Parts Remaining as display field to the Transaction List for the Vehicle Source
  • Added: (case 51317) new schema to inventory Q&A options. These fields will support new, advanced behavior on vehicle/part Q&A.
  • Added: foreign keys to the inventoryoption table.
  • Added: a unique key to the option value table (to replace the old primary key), some column comments, and limit the value to 500 characters to make operations quicker (TEXT is stored outside of the table)
  • Added: several missing values from the inventorysetting table (used in part modification for mass-editing) that were initially deployed in 2011 but were missing on some databases.
  • Added: vanilla logging triggers to many tables related to workorder and salesorder documents. This should help deep-dive investigations that attempt to track inventory quantity changes or cost changes.

Approvals

  • Changed: it was hard to find the "All Inventory Types" option in the part type dropdown on the price control page, so this item is now at the start of the list.
  • Fixed: memory leak on the credit approval page.

Crystal Reports

  • Added: (case 51309) a popup dialog that appears during printing if the chosen printer does not seem to be valid. The user is told what error windows returned and are presented with the list of valid printers to choose between. The user is allowed to 'remember' this selection for future prints. This is important because previously, if the user had an invalid printer name saved as a default, print jobs might fail, but no error message would be shown.

Customer

  • Added: (case 50736) the tree on the sales tab now has a column for the salesperson that gets credit for the sale as well as the counterperson who wrote the document.

Data Management

  • Fixed: crash when going to a page of results other than the first.

ebayExtension

  • Fixed: a crash when adding new shipping methods on the config page, the template edit popup, or listing edit popup.
  • Added: support for setting a 'shipping type' (global default) on the ebay config page.
  • Added: support for part type specific shipping types on the template config area.
  • Added: (case 40441) the ability to set a shipping type on any listing. This allows the user to choose between Computed, Freight, Flat Rate, etc. This adds support for 3rd party freight.
  • Fixed: an issue where the listing count on the listing tab would not decrease as items get successfully uploaded.
  • Fixed: an issue where adding a new shipping option on a listing would show the dimensions incorrectly.
  • Fixed: an error from eBay that could be shown if the user uploaded an inventory item that had fractional weights. They are now rounded up as per eBay's suggested policy.
  • Changed: the popup that would say every listing needs at least one shipping option is now suppressed if the user chooses "Other Freight service" since it does not require shipping options to be chosen.
  • Changed: if the user lists an auction with a shipping type of 'Calculated' shipping option costs are ignored.
  • Fixed: an issue where sandbox auctions would not open correctly if the user doubleclicks them (because ebay returns bad URLs).
  • Fixed: a crash if the user changed filters that could cause fewer items to be loaded while an item was selected.
  • Added: if the user refreshes auctions from ebay while the 'from' date is blank, they will be told that we can only ask for 4 months from ebay.
  • Added: if the user refreshes auctions from ebay while the date range is > 4 months, now it will loop across that date range and load ebay auctions in 4 month chunks (the most ebay allows us to request) instead of just doing the last 4 months.
  • Added: as auctions are loaded from ebay, the ITrack status bar is refreshed to note how many pages and what date range is being loaded, since a longer date range can now take a long time to refresh from ebay.

Global Settings

  • Added: filter box to the edit tax items popup.

Home

  • Added: icons to tabs
  • Fixed: an issue where the sales order tab might not populate the store list correctly.

Login

  • Fixed: an issue where the login dialog would not correctly follow the main window to other screens.

Parts

  • Changed: a fresh part now shows better information in the area at the bottom of the history tab.
  • Added: if quantity on hand is 0 (or the part is not depletable), average cost/average core cost will now display as "N/A" since those values are not relevant in that scenario.
  • Added: tooltips to the controls on the history tab. Specific tooltips on the average cost/core cost fields to explain why those values may show as N/A.
  • Added: if the quantity of a part changes, the average cost/core cost will recalculate on the history tab in real time to help the user know that manually adjusting quantity will cause the average expense to change and preview this change.
  • Changed (case 30530 and case 51130): if the user loads a part with no gl category assigned, the gl category dropdowns will now be blank. Previously, the default gl category was automatically selected for the user so that they could easily adopt this change and save, but it was confusing people into thinking that the value was already saved. Now the user must click 'auto-assign category' and save.
  • Fixed: an issue where the user would erroneously see a popup whenever they'd click off the status field when status was set to "D". The user would be asked if they wished to delete all attachments even if there were no attachments on the part. Now, the user will only be asked this question once when they click save if the status has just changed to "D". It will now only correctly appear on parts that have at least one attachment. Also, saving after saying yes should now correctly remove those attachments.
  • Fixed: an issue where the user might see a 'change detected' popup for the attachments page if the user deleted attachments and then saved without clearing the screen.
  • Fixed: an issue where the user would be prompted to set quantity to 0 on a part with a status of "D" if they clicked off of the status dropdown, even if nothing had been changed. Now it will only occur if the user changes the status to "D".

Part Configuration

  • Added: in the part type configuration page, there is now an interface to edit a field that has existed for a long time, but only editable by power users. This field is labelled "Model List Type #" and it represents the ability to have one part type inherit its model list from another part type. This is different from how the 'assembly' model list inherits from the part type set #. This field is optional, and if its is blank, a part will use its own type # for its model list.
  • Added: filters to the inventory types page. This allows the user to more quickly find the part type they're looking for.
  • Added: the inventory types page now has a resizable bottom area where inventory options/fields can be configured. Currently, global and part type specific options can be added, edited, reordered, and deleted.
  • Added: support for choice values (for dropdown Q&A options) and default values for part/vehicle Q&A options.
  • Fixed: an issue where the inventory options page did not save column orders correctly for the list.

Purchase Orders

  • Added: icons to tabs

Sales Orders

  • Fixed: (case 52053) an issue where a user who had an invalid default for their 'default sales order document type' could lead to scenarios where the 'show payments' area would be inaccessible.
  • Changed: references of DLS to TForce to match their corporate rebranding.
  • Changed: the customer address dropdown is now wider to facilitate longer address titles.
  • Fixed: tab order for the shipping tracking # field.
  • Added: icons for the pages on the left side of the document screen to make them easier to find.
  • Added: vertical and horizontal scroll bars to some of the side pane pages so that the user can access all information on smaller screens and especially when the payment pane is visible.
  • Added: eCommerce page on the left side of the screen. If the document was created for an online eBay or HeavyTruckParts.net e-commerce transaction, that information will be shown here.
  • Added: eCommerce page now has the status of the transaction and has buttons for approving the final total to be submitted to the customer to pay as well as a button to reject a request.
  • Added: when a document is loaded, if it has e-commerce integration, the e-commerce page will be shown and focused.
  • Added: we now hide the e-commerce integration page if the HTP.net integration application is not installed.
  • Added: e-commerce page now has a 'submit for payment' button that will appear on documents that did not come from heavytruckparts.net originally. Clicking this will submit the document to HTP.net for payment by the customer (if that integration is 'on').
  • Added: the printer bindings are reloaded before each save&print operation now in case the user has changed the printer bindings in the configuration area.
  • Fixed: an issue where the e-commerce tab might show an incorrect state on first load or after clearing the screen.
  • Changed: the vehicle search results will no longer show weird information in the tooltip when hovering over the extra info column.
  • Fixed: (case 51207) an issue where double-clicking document history in the vehicle search screen's info pane would not open that document on the document screen.
  • Fixed: an issue where a vehicle search might send a selected result back to the wrong screen if the user used the "Vehicle Search" global hotkey to look up a vehicle when on a screen that cannot load a vehicle. Now, in such a case, the vehicle will be loaded on the vehicle screen.

Vehicles

  • Fixed: an issue where the user would get a crash when adding a bid to a vehicle with no previous bid or teardown.
  • Fixed: an issue where VIN decoding might not auto-select a vehicle make or model if the case doesn't match the make/model in the system (like VOLVO vs Volvo).
  • Added: (case 51341) a 'copy vehicle' button, which works similarly to the 'copy part' button on the parts screen. The loaded vehicle will be turned into a new, unsaved copy that the user can modify and save. The following fields are automatically cleared on the copy: stock #, VIN, odometer, and the available/on hand flag.
  • Fixed: an issue where the costs page would sometimes show incorrect rows if an unsaved vehicle was loaded.
  • Fixed: a rare case where bad purchase order costs could show up on the break even graph as happening in the year 1900.
  • Added: icons to some of the property pages on the screen to make them easier to distinguish at a glance.
  • Fixed: title received date supported a time component, but the user was not allowed to set it. Now the user can set the date and time.
  • Fixed: a database error that could occur if the user added a new bid to a vehicle (with items or fees), but then deleted it before saving.
  • Fixed: a potential crash if the user added another bid to a vehicle with a single bid.
  • Fixed: an issue where clicking add new fee would not correctly move the user's focus into the fee list.
  • Fixed: an issue where opening the vehicle screen would deselect the application, making keyboard navigation difficult. This was due to the hidden attachment popup.
  • Fixed: re-added the feature where, if the user changes the vehicle status to D, they are asked whether they'd like to delete all attachments at the same time to save space.
  • Fixed: an issue where cloning a vehicle with a teardown selected would not clear out the 'tag #' on teardown components correctly.
  • Added: (case 51317) initial version of the new Q&A page shared with the parts screen. This version supports many new features, such as default answers, checkboxes, date pickers, formatted numeric values, dropdowns, etc.
  • Changed: the user can now type into most of the dropdowns on the basic table to auto-complete to the value they want.
  • Changed: the store dropdown on the basic page now uses a shared auto-complete, this should avoid a query on screen open, speeding up load.
  • Fixed: the user dropdown for 'dismantled by' would not show the user correctly if a previously selected user had been deactivated or marked as not a worker.
  • Changed: the category list on the basic tab and whole unit tab now share a single list to speed up load slightly.
  • Changed: several years ago, we added the ability to set each vehicle unit type to have its own model list, but the vehicle screen showed all vehicle models as choices at all times. Now we support having each whole unit type show only those models that apply to that vehicle type. Because of this, the vehicle type is now earlier in the tab order of the basic tab, as it must be chosen before a make or model can been chosen. The user setting for 'reverse make lookup' (where all models are shown, and choosing one selects a make) is still supported. Year limits the list of vehicle models as well, just like before.
  • Added: The model list now respects the part type's 'Model List Type #' that can be configured on the part configuration screen. This allows the user to have a complete model list under vehicle type 9000, and have another type like 9001 inherit that model list.
  • Fixed: an issue where loading a vehicle with a deactivated/non-mechanic user selected would load that item into the dismantled by dropdown and it would still be available after clearing the vehicle and entering another.
  • Changed: the basic info page now loads its information from a shared set of vehicle data instead of running its own query. This should speed up vehicle loading.
  • Added: if the user loads a vehicle with a (now inactive) whole unit type that can't be found in the dropdown, it will be temporarily re-added to the dropdown so that this info is not lost.
  • Added: if the user loads a vehicle with a (now inactive) make/model that can't be found in the dropdown, it will be temporarily re-added to the dropdown so that this info is not lost. If the make or model has been deleted, the user will be told that this is no longer a valid option and the values will be cleared.
  • Fixed: an issue where category was not being loaded on the basic info tab correctly.
  • Added: when a vehicle model is selected, if no category is chosen, the default category set on that model (if any) will be automatically selected for the vehicle unit.
  • Added: support for a new store setting "Default vehicle type" which defaults to 9000 and represents the id of a vehicle unit to automatically select on the vehicle screen when its opened. Now that make/model lists on the vehicle are vehicle type specific, this will make it easier to start a vehicle by entering a make/model before choosing a vehicle type (as the user could do in previous versions, where the make/model list was global). Since many unit types will share the same make/model list, this entry order will generally work.
  • Added: when loading a vehicle saved in previous versions, the make/model that was entered will be matched up to the vehicle type specific lists (which should generally be the same initially) automatically, and will notify the user if a particular make or model are no longer valid because they've been deleted or renamed so they can choose new values.
  • Fixed: several issues with overactive change detection from Q&A default values on new vehicles.
  • Fixed: blank Q&A values no longer save to the database.
  • Added: support for keeping a Q&A answer between two questions with the same name if the user switches vehicle unit types or other info that causes a question to appear with the same name as a previously filled out value.
  • Added: user Q&A values are now formatted when the user leaves the field.
  • Added: vehicle Q&A should now save and load correctly in the new system.
  • Fixed: an issue where an invalid make might not clear when the user changes vehicle types.
  • Fixed: vehicle Q&A now correctly clears when the user hits new vehicle. Also, Q&A copies correctly when the user clones a vehicle.
  • Fixed: several issues where Q&A was based on vehicle category instead of unit category.
  • Added: required questions now show as bold, and the user will be prompted on save if they are not filled out.
  • Added: modified question values now show a "*" in the label so that the user knows which options are modified from the saved value.

Work Orders

  • Changed: as part of the last big update, the job category list on the WO screen only showed categories with at least one template under it. Now its back to all categories under the current WO type.
  • Fixed: (case 51126) an issue where the user would get a duplicate job category error when they added a job under a category that had no templates but already existed.
  • Added: a performance improvement to the add new job dialog, eliminating a query run every time it loads.
  • Added: filter field to the configure->work order types popup.

Reports

REVISION 22866-23177 FOR EE V33

==Billing Statement (Billing.rpt)

  • Fixed: (case 50051) valid payments on open or void invoices were being excluded in some report modes.

Purchase Order (PurchaseOrder.rpt)

  • Added: (case 50744) PO # to page header on pages after the first

Receiving Tag (TagReceiving.rpt)

  • Fixed: (case 50402) tag sizing

Sales Order Returns (SalesOrderReturn.rpt)

  • Added: (case 51462) a column for Part Type
4/8/2026

General

  • Performance: removed a lot of the 'guard rails' on list control operations. This was taking as much as 40% of the time to load a bunch of stuff onto Presage' sampling history.
  • Performance: skipping some invalidation of the list control when redrawing is locked. This speeds up intensive load operations somewhat.
  • Performance: optimized several high-traffic areas in the list control.
  • Added: support for icons in property sheet tab controls.
  • Added: clipboard support for date, time, and date/time fields in the software. Now the user can copy (ctrl +c) out of or paste (ctrl + v) into date time picker controls in the software and embedded in list controls. This makes it easier to interact with many cells in a list control with many items that have date values.

Attachment Views

  • Fixed: an issue where resizing the application or an attachment view would not resize the currently visible attachment within it.
  • Added: (case 46397) all attachment pages now automatically select the first attachment in the list for display. This matches the behavior that already existed in some attachment 'popups' like on the document screens.
  • Fixed a possible crash that could occur

Common Resources

  • Fixed: a crash that could occur if you close the settings page with nothing selected.

Core Management

  • Changed: (case 46368) the customer core tab's salesperson column now shows the customer salesperson instead of the counterperson. Also, the vendor cores tab's "Salesperson" column has been renamed to "Counterperson" to be more accurate, but the data has not changed.

Credit Card Processing

  • Updated: POSLink integration to 1.9 from 1.6. This was to examine if it improved any features, but no significant changes were detected.
  • Added: (case 49009) support for retrieving and saving GatewayTransactionID from successful payment transactions into the database. This should make refunding payments or looking them up later easier.

Crystal Reports Extension

  • Changed: (Case 48271) the printer name dropdown in the advanced print dialog is wider now to facilitate very long printer names.

Database

  • Fixed: some vendor catalog entries had bad manufacturerids/modelids, leading to bad data and preventing foreign keys. Foreign keys were added to vendorcatalogpermanent to manufacturer, model, and vendor to prevent such bad data in the future.
  • Added: foreign key from model to manufacturer.
  • Added: (case 46069) new stored procedure pinventorydefault_prices, which attempts to calculate the 'default' prices for an inventory record based on vendor catalog and model category pricing. This may be used in more places in the future.
  • Added: (Case 46562) Add Inventory Store filter to Transaction List for the Sales Order Source
  • Fixed: historical purchase order lines that were inherent core charges were not showing up on vendor core management. This is only going back a year to ensure no ancient documents suddenly appear.
  • Added: (Case 46883) Add WO Master Part Quantity to the Transaction List for the Work Order Source
  • Changed: payment batches' document/auth/check# now can store up to 100 characters.
  • Fixed: (case 41114) several issues where duplicate job categories were causing issues on the WO screen. All duplicates have been merged and cleaned up, and a unique index added to prevent it in the future.
  • Removed: orphaned job categories and templates, and foreign keys created to prevent them in the future.
  • Changed: (case 47232) vglentrydocument no longer casts the effective date from a datetime to a date, as this was causing a query to take 4.5 minutes on a large data set instead of 12s.
  • Fixed: (Case 47267) added queries to attempt to 'clean up' as well as possible situations where WOs had invalid work order types, jobs had invalid job categories and job templates, or job categories had invalid WO types. After clearing all this up, foreign keys were added to ensure that if such 'bad data' is attempted in the future, an error will be thrown instead of allowing it. This fixes issues where some WOs could not be correctly loaded on the screen or reported on, and prevents such situations from being created in the future.
  • Changed: removed unnecessary table aliases inside the vehiclemodel view. They were making EXPLAIN queries much harder to parse.
  • Fixed: (case 47249) several queries used in the software to populate make and model dropdowns were taking 10x or more than necessary because of the index model.type_active contained a reference to manufacturerid, which is not used in this query, which was preventing filtering by active models.
  • Added: (Case 47255) Add Date Modified as both Filter and Display Field to the Transaction List for the Inventory Source
  • Added: (Case 47535) Add vehicle.mileage as Display Field to the Transaction List for the Vehicle Source
  • Fixed: (case 47532) an issue where fgetattachment_data would not work for attachments larger than 16 MiB. Now it should work on files up to 4 GiB.
  • Added: as per user request, audit logging has been added to the inventoryserial table.
  • Added: foreign keys to the salesorder table that ensure that entries cannot be created with invalid storeid or salesorderdocumentids. Rows with invalid values in these columns would not show up on all reports, creating an accounting hole. Some queries were added to attempt to migrate these values to a best guess correct value.
  • Added: (Case 48019) Add Payment Date display field to the Transaction List for the Sales Order source
  • Fixed: an enum true/false column was nullable when it was not intended to be.
  • Added: (case 48147) inventorysetting.requiredtosave, a new field for controlling which inventory fields are required to save a new or modified part.
  • Added: for continuity, inventory type, gl category, vendor, part # have all been marked as required to save a part.
  • Added: (Case 48549) Add inventory.inventorytypeid as Display Field to the Transaction List for the Inventory Source
  • Added: (Case 48311) Add Purchaseorder.vendorid, Vendor.name Display Field to the Sales Order Source in the Transaction List
  • Added: (Case 48626) filter by Date Added of attached Inventory images and display them
  • Added: index to the glentry table to make finding unexported accounting rows faster.
  • Fixed: some customer databases had invalid location ids in some historical tables related to inventory and documents. These bad ids have been cleared out so as not to cause errors when reopening or adjusting documents.
  • Added: foreign keys to the location id column in some historical tables related to inventory and documents. This will prevent bad location ids being saved in these tables, causing other issues.
  • Added: (case 49009) paymentterminaltransaction.gatewaytransactionid for storing a unique gateway transaction # for successful payments, which should make looking up and refunding payments later easier.

Data Management

  • Fixed: an issue where, after doing an import, the user might be presented with a negative number of unchanged rows if the number of new/updated rows exceed the number of rows in the input file.
  • Fixed: an issue where doing an import against a table that had a column name or column comment with the reserved word 'constraint' would cause the import to fail.

eBayExtension

  • Fixed: (case 48969) an issue where selecting a date range with an end date several months into the future (such as "This Year") would keep the 'refresh from ebay' button from retrieving auction information. Now, if the end date is in the future, it will be moved back to today.

Graphing

  • Fixed: an issue where right click graphing could display times and date/times in the wrong timezone.

Home

  • Removed: (case 48747) the 'ordered' checkbox, which is based on a PO feature that has been hidden from the user for several years.

Location Visualization

  • Changed: the middle mouse entered a standard 'pan' view mode before, but it was flakey, so it has been suppressed. Now, while the user depresses the middle mouse, they temporarily enter the 'move/pan' mode and can drag the window, no matter which mode they're in.
  • Fixed: an issue where right clicking and moving the mouse while in zoom mode might break the ability to zoom out with right click.
  • Fixed: an issue where the zoom cursor was not displaying correctly.
  • Changed: if the draw view is in readonly mode, the 'tracker' boxes around an object will no longer display resize boxes on the corners.
  • Added: if the draw view is in readonly mode, the pop up edit box for clicking into a text object will no longer be editable.
  • Fixed: an issue where first open of the screen would be slower than necessary for very large location lists.
  • Fixed: an issue where selecting locations in the list on the right would not correctly select the right object in the map.

Report Viewer

  • Fixed: an issue where the parameter list would annoyingly scroll to the side when the user clicked in a value field if there are enough parameters for a horizontal scroll bar.

SQLFramework

  • Updated: libmysql.dll has been updated to version 6.1.11

Part Configuration

  • Fixed: inconsistent use of currency formatting with model category pricing.

Part Modification

  • Added: (case 48148) there is now a "Required to Save" column in the configure inventory fields popup. If checked, these fields will be required to save a new or modified inventory record.

Parts

  • Fixed: an issue where model category pricing defaults did not set the wholesale core and jobber core correctly.
  • Changed: deleting a part # on a replenishable part will no longer attempt to find matching vendor catalog records.
  • Fixed: the 'wait' cursor should now correctly disappear if the user enters a vendor/part # combination that finds no catalog records.
  • Added: the aftermarket tab will now display a 'field modified' "*" next to each of the core price level fields if the value is modified from the saved value.
  • Added: the parts screen is now able to load the 'required to save' information from the database for all the fields on the screen. Any fields marked as required to save will have their label bolded.
  • Changed: resized many fields to give enough space for field labels in the situation where the label was bolded (required to save) and modified (shows a "*" at the end)
  • Added: store is now a field required to save, no matter system configuration, and will be displayed as such.
  • Added: part type is now a field required to save, no matter system configuration, and will be displayed as such.
  • Added: even if manufacturer is not set to be required to save, if the setting "Require a manufacturer when saving replenishable parts" is set, it will still be shown as required to save.
  • Added: even if gl category is set to be required to save, if accounting is off, it will no longer be required.
  • Added: (case 48155) the parts screen now dynamically checks what fields are 'required to save' based on company preferences when the user attempts to save. As before, fields that are required to save are displayed in bold. The popup (and status bar message) will show all fields the user must fill out that do not have a valid value currently.
  • Changed: the 'days to return/return core' and 'days to return to vendor/core to vendor' fields will now dynamically show as not required to save if the nearby checkboxes are unchecked.
  • Fixed: an issue where choosing a primary location would not set the corresponding primary location ID until save. This could cause issues if the "Primary Location #" field was marked as required to save.
  • Added: (case 48155) all fields that are only visible on the replenishable tab will not be presented as 'required to save' if the part is not replenishable since the user cannot fill those fields out on such a part.
  • Changed: Fields that default to "$0.00" (financial fields), "0" (quantity fields), or "0%" (percent fields) will now consider 0 values as 'not filled out' in regards to the 'required to save'. In addition date/datetime fields that are unchecked will not be considered filled out.
  • Added: tooltips to all controls on the part info page and advanced page
  • Changed: the 4 part type specific flex/more fields are now only 'required to save' if the current part type has those fields, even if they are marked as required to save by company preferences.
  • Changed: if typedata1-4 are 'required to save' when the popup appears to tell the user that the fields must be filled out, now the correct 'type label' 1-4 will be displayed instead of the name "Type Data 1-4".

Payment Entry

  • Changed: payment batches' document/auth/check# now can store up to 100 characters.

Purchase Orders

  • Fixed: (case 46461) an issue where loading messages on new items or loaded documents could take up to 2s. This has been made as much as 95% faster.
  • Fixed: (case 46510, 46368) an issue where saving a purchase order with an inherent core charge would not correctly mark the core as available to return. This kept the vendor core tab of core management from working correctly and seeing what cores were 'owed'.
  • Added: Re-adding a setting to disable the 'update part prices' icon on the PO screen. This allows companies to choose to disable this feature if they don't want to use it.
  • Fixed: (case 48959) an issue where the user would be allowed to delete inherent core lines from a PO if average core cost was non-zero. This is not allowed because it can prevent the inventory item from recalculating the average core cost on the item.
  • Added: (case 48959) if an item is added to a PO that has a non-zero average core cost, a core charge will be added for that item, no matter whether the 'core required to vendor' checkbox is checked or not. This will ensure that, in purchasing the item, the average core cost will get correctly recalculated until it becomes 0.

Sales Orders

  • Fixed: (case 46461) an issue where loading messages on new items or loaded documents could take up to 2s. This has been made as much as 95% faster.

Transaction List

  • Added: the user can now sort the filter and fields lists.

Vehicles

  • Fixed: if the break even graph page throws javascript errors, they are now suppressed from the user.
  • Fixed: an issue where many fields didn't correctly get noted as 'modified' when modified from the saved value.
  • Fixed: an issue where vehicle unit type specific info (category, flex fields) were not cleared when the vehicle screen was cleared.
  • Changed: the inventory type dropdown on the part info and whole unit pages now uses an auto-complete dropdown like the search and parts screens. This makes it easier to look up a type by id or name.
  • Changed: the 4 unit type flex fields are now auto-suggest dropdowns with previously entered values just like on the parts screen.
  • Added: (case 48149) a global setting "Vehicles"->"Allow users to manually set date received" (defaults to True), which controls whether a company allows users to manually set values in the date received field. If this is off, it will be set by the first PO to receive the vehicle.
  • Added: (case 48149) several settings that control whether certain fields are required to save the vehicle. They are all named like "Vehicles"->"Required to save: ", and default to off.
  • Added: (case 48151) the fields VIN, Odometer, Flex Field 1 through 4, user status, condition can now be required to save, based on global settings. If they are required to save, they will be displayed in bold.
  • Fixed: an issue where the VIN label wouldn't display as bolded if the VIN was required to save.
  • Added: (case 48152) when the user attempts to save a vehicle, the 'required fields are not filled out' popup now looks more like the same one on the parts screen and it takes company preferences into account with regards to what fields are required to save. This adds support for marking VIN, user status, odometer, condition, and the 4 flex fields.
  • Added: (case 48519) as the user selects a bid or teardown, the column headers in the item list will be updated to reflect whether each field is required to save or not. This will give the user a more 'at a glance' view of which fields are required to save the teardown parts.
  • Added: when the user attempts to save a teardown, all items will now check to make sure the part fields that are marked as 'required to save' (that are visible in the teardown list) have been filled out. The user is presented with a popup listing the field(s) that were not filled out for the first item in the list that was missing any required fields. Whether fields are required to save can be managed in the Configure->Inventory->Manage Fields and settings dialog.
  • Changed: buttons next to lookup field have been rearranged to match the parts screen.

Vendor

  • Changed: status D parts are now ignored in the vendor catalog area. So marking a part as status D now allows creating of a new SKU from that vendor catalog record.

Work Orders

  • Fixed: an issue where double-clicking a job part that had a valid vehicle, but was not in inventory would attempt to open the wrong vehicle record on the vehicle screen. Now the correct record will be shown.
  • Fixed: (case 46461) an issue where loading messages on new items or loaded documents could take up to 2s. This has been made as much as 95% faster.
  • Fixed: an issue where deleting a master part with messages would not refresh and remove those messages.
  • Added: (case 48964) a new 'choose job template(s)' popup to the WO screen. This is a larger, easier to use, filterable popup where the user can choose one or more job templates to add to the current WO.
  • Added: job templates dialog now resizes and remembers last location and list column widths.
  • Added: better tooltips to the add jobs buttons.
  • Added: the job category dropdown now has a blank option so that the user can go back to no selection after choosing a category.
  • Fixed: an issue where the WO might show 'changes' when there were none if a loaded inventory item had non-empty notes that displayed in the notes field in the part list.
  • Added: the choose multiple job templates popup now has better icons.
  • Added: choose Job Template(s) popup now has a job category dropdown with an All option for better filtering.
  • Added: double clicking an item in the job template list or hitting enter when its selected will quickly add that template to the WO. Also, the add all button is now the default button.
  • Added: for clarity, the Add All and Add Selected buttons now display a count of jobs they will add, and will be grayed out if the count is 0.
  • Fixed: an issue where templates for different work order types or stores would be shown in the job template dropdown or popup.
  • Added: there is now a blank option in the job category list, when selected, all job templates for the current work order type will be shown in the dropdown (similar to the choose job popup) instead of nothing.
  • Fixed: when selecting a job on a WO, the screen attempted to select the job category and template name in the dropdowns, but it wouldn't work if the job's name had changed from the template name. Now it should select the original template correctly.
  • Performance: all job templates are now loaded at once when work order type is chosen, so this speeds up grabbing information from the database when the user adds jobs from templates, making some operations faster.
  • Fixed: an issue where saving templates would cause the screen to close after saving successfully, even though the screen should simply clear and stay open.
  • Added: if the user deletes a job template, or adds new ones, the job template dropdown should be refreshed correctly.

Reports

REVISION 22542-22855 FOR EE V32

Billing Statement (Billing.rpt)

  • Added: (case 47627) optional html interpretation in the memo, setting-based

Customer Address Label (CustomerAddressLabel.rpt)

  • Added: (case 46391) a setting to exclude customers with no activity in the last year from the result set if desired
  • Added: (case 46391) a setting to print results with no addresses

Customer Address Label 5160 (CustomerAddressLabel5160.rpt)

  • Added: (case 46078) a setting to exclude customers with no activity in the last year from the result set if desired
  • Added: (case 46078) a setting to print results with no addresses

GL Entries By GL Account (GLEntriesByGLAccount.rpt)

  • Changed: (case 46965) query optimization, combating slowness experienced on MySQL version update

Internal Work Order (WorkOrderInternal.rpt)

  • Fixed: (case 46620) potential row duplication issue in the WOMP section when WOMP is serialized

Inventory By Location (InventoryByLocation.rpt)

  • Added: (case 40925) a new parameter to filter by default vendor

Labor Summary By Employee (LaborSummaryByEmployee.rpt)

  • Added: (case 44323) new parameter for user GL account

Purchase Order Receiving List (PurchaseOrderReceivingList.rpt)

  • Changed: (case 44221) a near-duplicate column showing part to show vendor part number instead.

Sales By Inventory Type (SalesByInventoryType.rpt)

  • Fixed: (case 46123) staggered group and grand totals to avoid the number mask on values that were too high to fit in the available space.

Sales Order 11in (SalesOrder11in.rpt)

  • Added: (case 47627) optional html interpretation in the memo, setting-based

Vehicles By Type (VehiclesByType.rpt)

  • Added: (case 47634) a new vehicle by vehicle part type report with basic information, built from Vehicle Detail By Part Type but focusing on actual Vehicles

Vehicle Cost Detail (VehicleCostDetail.rpt)

  • Added: (case 48435) a new report that shows vehicle cost detail, similar to the cost tab of the vehicle screen but for all A & H vehicles
4/8/2026

Database

  • Fixed: a minor error when updating a part with no locations.
  • Added: a stored procedure that can move all quantity on holds (documentlinelocation) for the Variance location can be moved to a given location. Useful for if things are lost because of open documents.
  • Fixed: a minor issue where location and locationid might not agree on parts with no quantity on hand. This could lead to unnecessary work to happen when saving locations over and over.
  • Case 44545: Add "Condition" Display Field to Transaction List for the Inventory Source
  • Added: fuseraccounthassiteaccess function used by the isoft authentication node module to know if a user has access to a store
  • Removed: an unused setting
  • Changed: (case 38185) fgetsetting and pchecksetting now defer to setting.defaultvalue over the default that was passed in as an argument.
  • Fixed: an issue where counting two locations (one where a serial # is found and another where it was lost from) then approving the loss after the find would result in the serial # ending up lost. This made serialized part counts order specific, which was not intentional. Now, no matter the order of the job approval, the serial # will end up found at the correct location.
  • Fixed: (case 45920) an issue where reports might show an incorrect back order quantity when back order documents have been voided.

Accounting

  • Added: (case 44569) the QB "Journal Push" area now treats accounts receivable and accounts payable exports differently. The issue is that QuickBooks does not allow AR or AP to appear in a day's push more than once. This means we have to net these entries before pushing. to accomplish this, firstly, AR and AP now drop all sub-account information. Second, all debits and credits are netted into a single entry to be pushed.
  • Added: when the user pushes gl entries to QB, the data is written to QBRequest.xml for debugging.

Credit Card Processing

  • Fixed: (case 45838) an issue where RETURN transactions were throwing errors because the S300 apparently doesn't support 'level 2' credit card integration for returns. This would cause it throw an error "TAX NOT ALLOWED". For this reason, commercial card information is now only supplied on charges, not returns.

Customer List

  • Fixed: a database error the user could see if they did a customer smart search that started with *. Also, if the user attempted to search for everything by doing a smart search for *, it will now show all customers.

Login

  • Fixed: an issue where the login popup might be stuck in the "No DB Connection" locked down mode if the popup appeared while the database was unreachable. This could effectively lock the user out.
  • Fixed: an issue where the login dialog would not be visible if the main application window was minimized or off screen when the application was locked. Now, the popup will be centered in the main monitor if the application is not visible to center on.

Parts

  • Fixed: an issue where adding more than one new lookup could throw an error.
  • Fixed: an issue where datemodified was not being updated if only global fields were changed on a part.

Purchase Orders

  • Fixed: an issue where right clicking the lineitem list and choosing export all or graph might not work if the popup menu extended off the edge of the list.

Sales Orders

  • Fixed: (case 44313) an issue where, if only misc items were on a document the "SAV quote" function wouldn't do anything. Now it displays an error message in the status bar.
  • Fixed: the right click option "select all items" wasn't working
  • Fixed: the right click menu for the payments and adjustments lists didn't have an export option.
  • Fixed: an issue where right clicking the lineitem list and choosing export all or graph might not work if the popup menu extended off the edge of the list.

Settings Framework

  • Fixed: a possible database error that could happen if two users wanted to create a new user hotkey in the action table from two different user sessions at the same time.
  • Changed: (case 38185) in the configure settings area, the user can now edit the 'default' column. Previously, this value used to only be for reference, but will now specify the value for new users/sites that do not currently have a value.
  • Removed: the configure settings area no longer has a 'scope' dropdown. Also the user can no longer view or edit settings at other levels, as this behavior was deprecated previously.
  • Removed: references to the no longer used cascade argument for settings, as they now operate at their specified level, and no other.
  • Added: (case 44529) as per user request, there is now a 'not equals' icon that is shown in the interchange area if an interchange search is done and the results are not an exact match. This helps some salespeople who want this information to pop more.

Transaction List

  • Added: support for "Key Choice" filter types. These are like "Choice" filters with the following exceptions: 1. the dropdown shown on the screen does not allow entry of arbitrary values or wildcards. 2. The search query will use the id for a given selection instead of the selected name. This mimics a historical crystal reports parameter type that works similarly.
  • Fixed: an issue where right clicking the lineitem list and choosing export all or graph might not work if the popup menu extended off the edge of the list.

Vehicles

  • Fixed: an issue when saving a vehicle where the unit category (on the basic tab) and the vehicle category (on the additional info tab) were being mixed up.
  • Fixed: a couple situations where a vehicle would save when nothing had changed.
  • Fixed: (case 45952) an issue where saving a vehicle with a teardown might 'revert' the location of those component parts if the user moved those parts with LXW after opening the vehicle and the user changed the year/make/model/vin/body style on the vehicle. Now, the location of teardown components should only be changed if the user changes it in the dropdowns in the teardown.

Warehouse Management

  • Fixed: the manual count page now has the 'enter goes down' instead of carriage return style. That way, keying in with a 10key is much easier.
  • Fixed: several memory leaks related to manual counting.
  • Fixed: an issue where the total at the bottom of the screen didn't match the projected impact on screen because all 'finds' were considering an impact of $0 instead of the 'best guess' figure shown in the list.

Work Orders

  • Changed: (case 44424) the work order date was labeled "Start Date". It has been relabeled to Date like the sales orders screen.
  • Fixed: an issue where right clicking the lineitem list and choosing export all or graph might not work if the popup menu extended off the edge of the list.

Reports

Customers With No Purchases After Date (CustomersWithNoPurchasesAfterDate.rpt)

  • Changed: (case 44505) query optimization
  • Added: (case 44505) a new parameter for customer default store
  • Changed: (case 44505) removed the subreport. Additional SO information is now retrieved in the main query with an additional join to v_invoice, and the report uses grouping and suppression to only display the most recent SO from the relevant latest SO date. This is much, much faster when dealing with tens of thousands of customers in the result set.

Inventory Count Sheet - LXW (InventoryCountSheetLXW.rpt)

  • Changed: (case 44321) moved found line down, put a divider line between different locations
  • Changed: (case 44341) show out of stock parameter set to True now includes negative quantity in addition to 0 quantity
  • Fixed: (case 44341) include out of stock logic

Labor Log By Employee (LaborLogByEmployee.rpt)

  • Added: (case 42582) user parameter, worker group parameter, and open/closed column
  • Added: (case 42582) User GL Department parameter

Sales Order 11in (SalesOrder11in.rpt)

  • Added: (case 44091) a new setting to enable showing full descriptions for core line items if desired, False by default
4/8/2026

General

  • Fixed: in the attachment area, an issue where filenames including UTF-8 characters would fail to load/save. Now these attachments will correctly load from the disk or save to the disk. This commonly comes up when people paste attachment filenames with smart quotes from the internet.

Database

  • Changed: (case 42365) most of the email columns in the schema have been changed from VARCHAR(100) or VARCHAR(320) to TEXT. This is because the email RFCs I can find allow up to 125 recipients per email with 250 characters per address. This allows bigger recipient lists.
  • Added: (Case 42497) - Added Inventory Stock Type and Stock Method to both the filter and display fields of the Transaction List.
  • Added: (Case 42559) Added Quantity Available to the display fields on the Transaction List Screen.
  • Fixed: The EPA Charge field in the Transaction List for the Work Order source was incorrectly mapped to job.laborcharge instead of job.epacharge.
  • Fixed: an issue where the document pricing function could throw an error if the customer had duplicate, overlapping contracted prices on the item.
  • Removed: (case 42626) several ebay shipping methods that are not supported by ebay any longer.
  • Changed: glentry, gltransaction have had the precision of their decimals increased, to allow transactions in the hundreds of millions.
  • Fixed: an issue where pinventoryadjust_cost might throw an error if the user adjusted a PO for an amount that differs by hundreds of millions of dollars.
  • Fixed: (case 42674) an issue where psalesordersaved could be slower than necessary because of a MySQL query planning bug. Some salesorderline indices have been removed: inventory(inventoryid, inventorystoreid) has been removed because its redundant with availablespeed index. Also, hold/type are not very selective indices, which makes them slow down things if mysql uses indexmerge in its query plan (see https://www.percona.com/blog/2012/12/14/the-optimization-that-often-isnt-index-merge-intersection/ for more info). Also, these columns are in availablespeed. This has made psalesordersaved and fcalculateinventoryallocations 90% slower than necessary.
  • Changed: (case 42656) moved a part of tinventorypostupdate to tinventorypreupdate to handle when the primary location gets changed, but changed to a value that can't work. In that case, inventory.location gets set to the correct value after the attempt. The most common scenario here would be when a user had two non-permanent locations: 1 @ A -1 @ B If the primary location got set to B, the locations would get their quantities merged, removing them, which could cause an issue in the trigger. Now, inventory.location will end up as '' after this operation correctly. Also, this trigger no longer resets the session variable @SUPPRESSINVENTORYINTEGRITY_CHECK after execution.
  • Added: logging in tinventorypostupdate now checks the session variable SUPPRESSLOGGING to see if logging should be skipped. Useful for large operations that could cause a lot of logging to be generated.
  • Changed: pinventorymoveprimarylocation now handles scenarios better where changing primary location in a way that lead to combining locations and destroying them.
  • Changed: tinventorylocationpost_update now uses a session variable to cache a value read from a setting. This makes updating large numbers of inventorylocation rows faster.
  • Added: status column to the ebayauction table. This stores the listing status returned by ebay so that we know which auctions are active and which are not.
  • Changed: salesorder.websaleid and salesorderline.websalelineid have been changed to facilitate 64bit integers used for ebay listings.
  • Added: salesorder.websaletype to differentiate between documents being linked to a HeavyTruckParts.net ecommerce sale or an eBay sale.
  • Removed: the columns in the ebay tables that linked to documents, as they are no longer necessary.
  • Added: retroactively, any sales to the ebay customer set up in settings will be connected up to ebay transactions so that they will correctly show an 'Invoice #' in the transaction list.
  • Added: Case 43829: Add Vehicle VIN# to Transaction List for the Inventory Source
  • Added: Case 43832: Add Store Filter and Vehicle Inventory Type Field To Display to the Transaction List for the Vehicle Source
  • Added: a table that is used for optional password blocking based on security preferences.
  • Changed: useraccess.username is now long enough to store an entire username.
  • Added: (case 24295) support for useraccess.accesstype of 'Session Unlock'

CreditCardProcessing

  • Updated: version of internal PAX S300 credit card terminal version. This should correspond to newer versions of the terminal firmware.
  • Added: support for terminal communication types of "HTTPS GET" and "SSL". These are essentially secure versions of the web terminal and ethernet options.
  • Added: support for level 2 commercial credit card processing. This mostly involves passing the local invoice # in as a vendor PO # and the tax amount.
  • Fixed: a minor issue where "prompt" is chosen for credit vs debit might not correctly set the transaction to Credit.

Customer List

  • Fixed: memory leak in the finance charge assessment popup.
  • Added: (case 37650) customer cores and returned cores tabs now have columns for manufacturer/model of the originally sold item.
  • Fixed: an issue where the uneditable columns on the returned cores tab were no longer being grayed out.

eBay

  • Fixed: the edit template popup no longer lets the user do multiple-lines in the subtitle box. This is to more closely match the behavior of the auction upload's subtitle box.
  • Fixed: (case 42396) an issue where the user could not continue to type into the title/subtitle boxes in the edit template popup once they filled the box.
  • Added: (case 42420) {?OEMNumber} as a tag for both Pro and Enterprise. Also, {?InventoryID} has been added to the pro templates to more closely match the syntax of EE templates.
  • Changed: in the 'edit template' popup, the sub-title field has been changed to be single-line to more closely match the format of the auction upload dialog.
  • Changed: better column sizing in the default shipping methods area of the account settings.
  • Changed: the edit listing popup now puts "or best offer" near the listing settings (like the account settings area does).
  • Changed: the edit listing popup now puts the "Global Shipping" option in the shipping configuration area.
  • Fixed: the description and return description boxes no longer scroll horizontally as well as vertically, as this required unnecessary scrolling. Now long lines will appear to 'wrap'.
  • Fixed: the "paypal immediate pay" setting was not transferring to new listings correctly.
  • Fixed: the "global shipping" setting was not transferring to new listings correctly.
  • Fixed: most settings on part type templates were not transferring to new listings correctly. Now, they will apply if present, but if no template is found, the global settings will be used instead.
  • Fixed: adding/editing/removing shipping options from a part type template was not working correctly.
  • Changed: "returns accepted" no longer viewable when editing the default template settings. This is because this setting is set elsewhere on the account settings.
  • Added: if a template refers to the {?Price} field, it now respects the "use retail + core" setting.
  • Fixed: the return policy description now supports {?Tags} like the description, title, and subtitle.
  • Fixed: (case 42561) when uploading listings with images, the number of image uploads is now restricted to the number of public images on the item (up to 12).
  • Fixed: (case 43736) several issues where times that were returned by eBay were not interpreted in the correct timezone, leading to issues where auctions would not show as closed when they were.
  • Added: (case 43736) when we retrieve items from eBay, we now ask for the listing status, which can be Active, Ended, or Completed, which we report to the user. This has replaced the previous auction status column, which was only based on the end date of the auction.
  • Removed: the transactions page, which duplicated behavior from the auctions tab, but had several bugs in it. Completed auctions can be searched for and invoiced from the auctions tab.
  • Changed: the tag # column on the screen now shows the item tag #, not the SKU of the item. If the related inventory item could not be found, is displayed in the tag # column.
  • Added: if the user double-clicks the tag # column in the ebay auctions list, the part will open on the parts screen instead of opening the auction on the internet.
  • Changed: many columns have been resized, rearranged, and renamed to make using the screen easier. Some important columns are now bolded.
  • Removed: several columns that were redundant or confusing.
  • Added: tooltip descriptions to all list columns.
  • Added: (case 42749) quantity on hand column to show current stocking levels. If these are lower than the quantity left to sell on an auction, the cell will be red with an attention icon. Double-clicking such a cell will prompt the user to cancel the auction on ebay.
  • Changed: hold id column and create hold button have been hidden in ITrack Enterprise, as we will handle holds a different way.
  • Added: listings that come back as Ended or Completed are now a light or medium gray to distinguish from active listings in a mixed search.
  • Changed: many columns now show as blank instead of "0" to make finding items with sales or uninvoiced sales easier.
  • Fixed: (case 42628) the auctions tab would lose the user's sort and selection if they refreshed the results from ebay or changed filters.
  • Fixed: an issue where "invoice #" column in the transaction list would not get filled out after the user invoiced an ebay sale. Now this column will show "-", and double-clicking it will open that item on the document screen.
  • Added: double-clicking a tag # in the auction list will open the item on the parts screen.
  • Changed: the column "To Invoice" now correctly shows the number of completed sales that have not been invoiced yet in ITrack. If this is not 0, the cell will be green with an attention icon. Double-clicking this cell will create an invoice for an uninvoiced transaction.
  • Added: the 'time left' column now 0-pads the numbers it displays to 2 digits so that the column will be easier to scan and sort.
  • Added: (case 36613) new filters to the auctions page "W/eBay sales" and "Need invoiced". The first will limit to results that have been sold at least once, and the second will limit to those listings that have online sales that have not yet been turned into invoices in ITrack.
  • Fixed: (case 42628) an issue where the user's selection and sort order in the new listings page would be lost if the user edited any listings. Now their sort order and selected item will be retained.
  • Added: (case 42750) new listings now default to the remaining quantity on hand in inventory, instead of always 1. The user is also now allowed to edit quantity on listings. However, this only applies to fixed price listings, as auction listings do not support multiple quantity.
  • Fixed: the user can now enter a buy it now price for normal auctions (not just fixed price listings).
  • Fixed: reserve price on normal auctions now works.
  • Fixed: (case 43846) an issue where "Or best offer" was not working on fixed price listings.
  • Fixed: an issue where paypal immediate pay was not being sent correctly on fixed price listings.
  • Removed: (case 43846) characters such as (, ), <, >, &, and others are no longer 'HTML encoded' in the listing's title and subtitle because these fields do not support HTML. However, this is still done in the description template to support HTML in that area.
  • Fixed: when the user cancels one or more auctions, the entire auction list is no longer re-loaded from the database. This will speed up this operation and reduce flickering.
  • Fixed: an issue where auctions that were cancelled would show up as active until the user refreshed all auctions from ebay.
  • Fixed: an issue where the user's selected item in the auction list was not correctly reselected in some scenarios after a refresh.
  • Added: the user can now select multiple auctions at once. This is currently useful for cancelling more than one auction at a time.
  • Added: totals to many columns in the auction list. These display some useful totals and summaries regarding the items the user searched for.
  • Fixed: (case 44120) an issue where loading and resaving a document created as an ebay auction would remove the connection to the auction.

GlobalSettingsExtension

  • Added: the EE ebay interface now correctly loads the shipping width/height/length into the ebay items to be listed.
  • Added: inventory.quantity is now retrieved for auction items for telling if there is enough quantity on hand.
  • Added: we now check for sales orders connected to ebay transactions in a new way that will automatically recognize if a new sale is created or voided.
  • Added: (case 28580) inventory.quantity is now an available tag in the edocuments format for ebay auction templates as {?Category}
  • Fixed: (case 42588) an issue where the first time a setting in a given category/location was checked, it might retrieve a value of '' (blank) instead of the correct default.

ITrack Online

  • Added: support for running general API::Requests. The previous GraphQL related request is now a subclass called API::GraphQLRequest. A lot of fixed behavior has been moved in as default functionality into API::Request.
  • Added: support for HTTP GET based API::Requests.

Login

  • Added: new user passwords can now no longer match the user's first or last name, or their work email or recovery email, due to ease of guessing that kind of password. It also cannot contain the account name, as this does not add any complexity to guessing the password.
  • Added: the change password popup now shows some warnings/errors as the user types, and some other, slower tests when the user leaves the field.
  • Added: support for many new (optional) Password security settings, including minimum/maximum length, minimum number of characters from character classes (upper, lower, special, number), checking against a block list of the top 10k passwords, checking to see if the password was involved in any password breaches, and making sure the password doesn't match any recent passwords the user employed. All of these settings default to off.
  • Added: support for a global setting to set a threshold on how many breaches a password must be involved in before it is not allowed. Below this, the user simply sees a warning.
  • Added: (case 24295) as part of logging in, a new setting is checked "Security"->"Passwords: maximum number of days between user password changes" which checks to see if the user has changed their password recently enough. If not, they are shown a popup forcing them to change their password now.
  • Added: (case 24295) a new global setting: "Security"->"Passwords: number of days before password expiration to prompt user to change password". This represents a number of days before password expiration to begin prompting the user to change their password and let them know that the password will expire soon.
  • Added: (case 24295) support for locking and unlocking user sessions. There is now a menu option File->Lock Session which will lock the current session, requiring a password to continue. This is useful for security when a user walks away from a terminal. By default, this can be activated by Ctrl + L, but this hotkey can be customized in the user hotkeys dialog.
  • Added: (case 24295) a global setting of 'minutes of inactivity before automatically locking user session' (defaults to off). If a machine has no activity for this many minutes, the session will automatically be locked, requiring the user to type in their password to continue.

Master

  • Added: a separator to the File menu for better organization.
  • Added: support for customizable user hotkeys in top level menus. This is being used in the new File->Lock Session option.
  • Fixed: the help->about box now correctly shows all modules loaded by the system with their full absolute path on the file system.
  • Fixed: an issue where help->about module list wouldn't show modules correctly if the working directory was not the install directory (common in terminal services installs).
  • Fixed: an issue where help->about didn't show modules where the module name and filename didn't match.
  • Added: by request, the help->about box now shows the last file modification time for each module. This is useful when checking to see if files were downloaded and applied during update without opening windows explorer. This dialog now has a large minimum size to facilitate more data that is shown in it.
  • Added: the help->about box now splits the directory off the filename so that the filename can be more obvious and easier sorted. The version and filename are now bolded and the path and hash are slightly gray to make the important information easier to see.
  • Added: help->about now has a last modified timestamp, which is read from the file in the filesystem.

Parts

  • Fixed: an issue where, if a company had the setting "Clear locations when copying a part" set to True, when copying replenishable parts, the default store location might automatically be added to the newly created part, which seemed against the spirit of the setting.
  • Changed: the 'default' location for a part at a store is no longer automatically marked as permanent on replenishable inventory to avoid situations where this 'placeholder' location was sticking around forever at some yards.

Payment Entry

  • Added: icons to various buttons in each area of this screen.
  • Added: the allocation dialog now bolds the invoice #, balance, and amount paid columns. This should make where the allocations are more obvious.
  • Fixed: an issue where reopening a previously created payment allocation might check the 'use balance' checkbox on items where the entire balance was not paid.
  • Changed: (case 42445) to avoid user confusion, if you uncheck 'use balance' on an invoice in the allocation popup, the 'amount paid' is now reset to whatever it was before the user opened the popup (generally $0). Discount amount is also reset (if any). This means that checking, then unchecking 'use balance' should no longer leave the entire invoice balance in the amount paid field.
  • Fixed: several issues with improperly sized buttons and tab order.
  • Fixed: memory leaks on various batch/payment lists on this screen.
  • Fixed: incorrect date sorting in the history list.

Purchase Orders

  • Fixed: (case 42656) an issue where receiving of items after loading a PO would not use the default PO receiving location.
  • Fixed: (case 43972) a possible crash that would occur when a user would change counterperson on a PO with a newly added item selected.
  • Fixed: an issue where loading an item by typing into the lookup column would not refresh the contextual pop-out pages on the left side of the screen.

Sales Orders

  • Fixed: (case 42715) the shipping/billing address of an invoice converted from an ebay purchase was not being set correctly, leading to this info clearing out if the document got refreshed.
  • Added: (case 42716) converting an ebay purchase into an invoice did not copy the buyer's email address into the document billing/shipping info.
  • Fixed: the screen will no longer show the 'this item is already on an ebay auction' attention icon when the user is editing an invoice created from an ebay auction.
  • Fixed: an issue where saving a document might throw a database error related to ecommerce columns.
  • Added: more information passed to the credit card processing system to support level 2 commercial card transactions, which can have a better rate for the user.
  • Added: (case 32079) part search results now show a count of active ebay auctions for a given item. Double-clicking this icon will open that auction in a browser.
  • Changed: (case 44054) when the user performs a part search, their cursor should now go back into the field they were in if there were no search results.
  • Fixed: tab order at the bottom of the screen is now in the correct order.
  • Added: (case 39245) the "Purchase Vendors" info pane on search now has a "Price Class" and "Ordering Group"

ITSQLFramework

  • Changed: the host.ini setting for using ssl (secure connections) now defaults to on for new configurations instead of off. Generally, most servers support connecting securely and this seems like a good default moving forward.

Work Orders

  • Fixed: error messages related to unconfigured part gl settings now show what is in the "lookup" column instead of the part tag #, since it was difficult to understand which item the error was for.
  • Changed: the 'pick sales order to invoice WO' popup now sorts items better and has better default column widths.
  • Fixed: (case 42563) the user might see incorrect error popups saying something like "One or more labor entries/tasks/jobs/parts were invalid". This could occur when the database was busy. Now the screen will correctly automatically (and silently) retry the save operation in such a case. The error messages have also been updated to be more specific. This also means that if a database error occurs, it will no longer be hidden by one of these popups. But the previous message will still be shown in the status bar if the save fails.
  • Added: (case 42602) if the user attempts to save a work order with nothing on it (empty document) they will no longer be allowed, by user request. The popup will allow them to easily close the screen, as the user often clicks save when they mean to just close.
  • Changed: by user request, one can now manually add assemblies to WOs. We allowed it through automation on the Parts screen already, so maybe this is best.

Reports

Billing Statement (Billing.rpt)

  • Fixed: (case 38398) added a : after company phone number in the tearoff
  • Fixed: (case 38398) removed leading : in the tearoff
  • Changed: (case 43944) excluded $0 balances on OIA mode
  • Fixed: (case 43944) payments allocated to "future" invoices outside of the billing cycle range not filtering by store, which was an issue when not doing centralized Billing.rpt
  • Added: (case 43944) setting to include customer mailing address after street address
  • Changed: (case 43944) excluded second customer company/contact line if they are the same

Internal Work Order (WorkOrderInternal.rpt)

  • Fixed: (case 39694) odometer mileage now references workorder mileage (at time of WO)

External Work Order (WorkOrderExternal.rpt)

  • Fixed: (case 42639) Finalized/Unfinalized flag
  • Fixed: (case 39694) odometer mileage now references workorder mileage (at time of WO)

Labor Log By Employee (LaborLogByEmployee.rpt)

  • Added: (case 42582) user parameter, worker group parameter, and open/closed column

Parts Remaining By Vehicle (PartsRemainingByVehicle.rpt)

  • Changed: (case 40851) storeid filter now applies to parts inventory instead of vehicle units, excepting vehicles with no parts.
  • Fixed: (case 40851) excluded cost from vehicles not associated with the store when filtering by store

Sales Order (SalesOrder11in.rpt)

  • Added: (case 40868) separate job parts and labor subtotals above grand SO subtotal, enabled by a new setting. No visible changes by default.
  • Fixed: (case 39694) odometer mileage now references workorder mileage (at time of WO)

Unmoved Inventory (UnmovedInventory.rpt)

  • Fixed: (case 40353) minor query inefficiency and filters requiring the existence of a default vendor and part type
4/8/2026

Appraisal Extension

  • Fixed: the query that performs the appraisal will now correctly report any errors it receives instead of throwing them away.
  • Added: the 'choose appraisal source' popup now automatically sets the user's focus into the list control and hitting enter will select that item. This makes selecting an item with the arrows and hitting enter without using the mouse much easier.

Core Management

  • Fixed: (customer cores) the reject/return buttons are now correctly grayed out until an item is selected.
  • Fixed: (customer cores) all filters now clear correctly when the user hits clear.
  • Fixed: (customer cores) the "only expired" checkbox is now usable and correctly filters cores.
  • Added: (customer cores) the "automatic refresh" checkbox is now remembered for the current user.
  • Added: new tab, vendor cores, which gives an interactive report of all unreturned core exchanges owed to vendors. This tab has been designed to work very similarly to the outstanding customer cores tab.

Crystal Reports

  • Changed: (case 40474) the 'choose which report to print' popup no longer has an orientation column, as it confused some users. Also, the 'default' checkbox column has been moved to the right so as to avoid confusion between this marking an item as a default print option and selecting the item to print this time. Also, changing whether a report is a default now immediately resorts the report list. This should make the function of favorite reports more obvious to the user.

Customer

  • Changed: the pricing tab now has a layout more similar to other areas of the software (add/edit/remove buttons at the bottom). Also, the labels for the different kinds of special pricing have been changed to make them clearer.
  • Changed: there is no longer an item lookup and description fields. Now, to add parts the user can click an add button at the bottom, which will take them to search to find item(s) to price. This makes pricing duplicate items or large numbers of items at the same time easier.
  • Added: the add contract pricing button now shows the user's current 'lookup part' hotkey on the button to help them understand they can use this popup to quickly add a single part to contract pricing.
  • Changed: (case 40879) to allow the user to add a new contract to an item with a previous contract, the user is now shown a popup that says the current item is already contracted to the customer. They're allowed to choose between editing the existing contract or adding a new one.
  • Added: to avoid duplicate contract errors, the save operation now checks to make sure there are not two contracts for the same part ending on the same date.
  • Fixed: if there is an error while saving contracts, that will now halt the save operation.
  • Fixed: if no item is selected, the edit/remove contract buttons are now greyed.
  • Changed: per user request, double-clicking contract prices now opens the part on the parts screen instead of editing the contract pricing. A quick key has been added to the edit button for easier keyboard usage.
  • Added: expired contracts now show with a grey background. Also, the end date is now colored based on whether it is in the past, expires today, or is in the future. Because of this, color alternation has been removed from these lists to avoid confusion.
  • Changed: more important columns in the pricing lists are now bolded.
  • Fixed: a customer without permission to edit the pricing tab can still check and uncheck the 'show expired' checkbox now.

Customer Contact

  • Fixed: the from/to date range on the customer page now has 'none' check boxes so that the user can choose not to have a from or to end date. The date range dropdown is no longer free-type.
  • Fixed: the from/to date range on the home page now has 'none' check boxes so that the user can choose not to have a from or to end date. The date range dropdown is no longer free-type.
  • Added: (case 40437) 'In Person', 'Text', and 'Social Media' as contact options as per user request. New touchpoints now default to "Phone".
  • Fixed: changing date dropdown/date pickers should now correctly change the results in real time. This was broken before.
  • Changed: customer contact home page results now properly align their data.
  • Fixed: customer contact home page now displays created date correctly, and all date columns sort correctly now.
  • Fixed: column order and widths now save and restore correctly on all customer contact pages.
  • Fixed: clicking in cells in the customer contact home page will no longer show date picker controls since the rows are readonly.
  • Added: double-clicking a ticket or touchpoint on the customer screen's customer contact area will now allow the user to edit an existing touchpoint. Previously, this was not possible.
  • Fixed: editing an existing touch point will not move its 'date entered' forward.
  • Fixed: "Last Message" column on all customer contact areas now correctly displays the most recent touchpoint for the ticket.
  • Added: tooltips for all customer contact list control columns.
  • Fixed: proper list control alignment, sorting, and column widths for the customer screen page.
  • Fixed: the page now resizes correctly so that the buttons can be easily read on the customer screen page.
  • Fixed: previously, the home screen page would always color the items red. Now, items that are past due are a dark red, items due 'today' are dark blue, and all others are black.
  • Fixed: label in the 'edit correspondence' popup to no longer use the term 'ticket'.
  • Added: priority dropdown in 'edit correspondence'.
  • Removed: references to an used 'close ticket' entry type.
  • Changed: closed correspondences are now shown in a medium grey background.
  • Changed: due date column is now bright red or blue depending on due date (instead of the entire row).
  • Added: double-clicking a correspondence on the customer screen now always pops up the edit dialog, even if no touchpoint is selected.
  • Added: 'created by' and 'days ago' columns in the touchpoint list on the customer screen.
  • Changed: columns in the CRM area renamed for more clarity.
  • Changed: add new touchpoint button now has a 'new' icon instead of an edit icon.
  • Fixed: possible crash when editing a touchpoint.

Database

  • Added: a transaction list join reference that may have been missing on some databases.
  • Added: Case 40637: Add Inventory Location filter to Transaction List for the Inventory Source
  • Fixed: Case: 40639 Delete and Re-release Inventory Store Filter & Inventory Store Join in the Transaction List for the Inventory Source
  • Added: lineitem default description template has been moved from store setting to global setting.
  • Added: purchaseorderline.corestatus, similar to other document screens. Currently, this is useful for keeping track of whether core returns have been discarded/ignored/rejected.
  • Changed: f_quantityreturnedtovendor now looks at quantityreceived on return POs instead of quantity (order quantity) for documents that are done receiving. This will mean that unreturned items on documents will 'release' if the PO is marked as done receiving.
  • Added: new permissions for the vendor cores tab.
  • Added: (case 40162) two new eBay shipping method options: fed ex home delivery and flat rate freight.
  • Added: foreign keys to the inventoryvariance table so that lost/found inventory adjustments will automatically go away if the user deletes an inventory record or a serial that has been lost or found.
  • Changed: the speed index on the inventoryvariance has been rearranged to more easily allow joining to inventory.
  • Fixed: (case 42224) an issue where right click graphing (and vehicle break even graphs) would not render correctly (sometimes) due to a race condition introduced by google into their charts.
  • Removed: (Case 42306) deleted a setting that is no longer checked (since 2017) regarding taxes on exchange items.

eBay

  • Fixed: a memory leak that would occur each time an invoice was saved.

Home

  • Added: an ini setting [general]->usecustomhomepage. It defaults to false, but if its True, then the global setting for the URL of the home screen web interface can be overridden. In this way, [general]->customhome_url can be filled out to override the home page website for a specifc machine.

Parts

  • Changed: (case 40894) the temporary table that is built to store part transaction history now uses the InnoDB storage engine to avoid issues where items with large amounts of history won't throw an error encountering the default MySQL maximum temp table size of 48MB.

Purchase Orders

  • Changed: default lineitem description is now global instead of store-based. Also, the default description now involves vehicle VIN (as it is required in many states) and the side has been moved near part type (if a side is present).

Sales Orders

  • Changed: default lineitem description is now global instead of store-based. Also, the default description now involves vehicle VIN (as it is required in many states) and the side has been moved near part type (if a side is present).
  • Fixed: an issue where saving/printing a closed quote document might incorrectly pop up a "do you want to mark this as a lost sale instead?" question.
  • Added: support for store.* tokens to be referenced inside the default description. This will be the inventory store information for the current item.
  • Removed: (case 41149) by user request, hitting 'email SO to salesperson' used to send an email (by default) to both the customer salesperson, and the salesperson assigned to the sales region the customer falls in. The second part (a feature from 2008) has been removed, so now only the current salesperson is used by default (no sales region).
  • Fixed: (case 42326) an issue where hitting enter to perform a part search after choosing a model from the dropdown could cause a scenario where the user would be prompted to choose an interchange # multiple times in a row, and the search results would become duplicated (only possible at yards with interchange).
  • Added: by user request, the alternate parts info pane on search now shows alternate parts through the inventory lookups entered on the parts screen (supersession, alternate parts). Also, the alternate part rows now show the tag # of the item and a reason for the alternate part row showing up.

Vehicles

  • Added: (case 39177) if the user saves a whole unit on the vehicles screen that has been transferred between stores, all those changes will apply to that vehicle record at all stores (except store-specific things like quantity, status, and average cost). This should avoid any issues where status T versions of a vehicle at another store have 'out of date' information on them.
  • Changed: loading a vehicle doesn't automatically send the user back to the first tab. This makes arrowing through vehicles while viewing a breakeven graph easier.

Vendor

  • Fixed: (case 40800) an issue where modifying an existing vendor message and saving would not correctly save the message.

Work Orders

  • Changed: default lineitem description is now global instead of store-based. Also, the default description now involves vehicle VIN (as it is required in many states) and the side has been moved near part type (if a side is present).

Warehouse Management

  • Added: the from/to location for non-serialized parts have been flipped when items have been 'found' at a location. Before, it seemed like quantity would move to Variance. Also, when items are lost, the To location is now "Variance (LOST)" and when items are found, the from location is now "Variance (FOUND)".

Reports

Sales By Customer (SalesByCustomer.rpt)

  • Added: (case 40509) customer phone number

Sales By Tax Item (SalesByTaxItem.rpt)

  • Changed: (case 40484) standardized date format

External Work Order (WorkOrderExternal.rpt)

  • Added: (case 40357) customizable background text for estimates, based on a store level setting.
  • Added: (case 40357) set size limitations on background text
  • Fixed: (case 40965) when "show tag number instead of description on jobs" = False and "use table layout for job line detail" = True, partnumber and serial were showing instead of description as if "show tag number" were true.
4/8/2026

Highlights

  • Major improvements to the ebay screen
  • Date range dropdowns all over the system now only show future or past date ranges, depending on what the filter applies to. More range options were added for the future to match the past options.
  • The search screen's dropdowns are now more consistent and no longer automatically 'pop down' but do so if the user types in them. This improves behavior when popups appear and makes it clearer what hitting the enter key does (perform search instead of close dropdown). Also, several popups on the screen have been improved for easier user interaction.
  • Search screen dropdowns now support some fields that automatically add wildcards to both sides. This makes it so that searching description or notes will find what you entered anywhere in the field.
  • Warehouse management screen is now clearer when reviewing count jobs (from/to location swapped when items are 'found')

Database

  • Added: (case 38000) updated adderscripts, many with updated report categories for all standard reports that print from the Report Viewer
  • Added: (case 38000) updated adderscripts for all standard reports that print from screens other than the report viewer
  • Changed: (case 38000) reports with category 'Metadata' to category 'Configuration' per user feedback
  • Added: Case 39295: Add Monthly Average Usage, Vendor Lead Time as Display Fields in Transaction List for the Inventory Source
  • Added: function fgetcompanyproductcode, which is a product agnostic API for getting a company product code.
  • Changed: for consistency, now all prices on the inventory record can be negative, to help facilitate non-depletable SKUs that represent discounts.
  • Added: (case 39472) support for inventory search fields that are 'auto-wildcarded'. This has been enabled on description and notes searches initially. This means values entered on a description or notes searches will be found anywhere in the field.
  • Added: (case 37359) a script to standardize salesorderdocument memo setting names, a script to standardize "hide memo" setting name
  • Added: (case 37359) salesorderdocument memo settings (store level) if they don't already exist
  • Fixed: fchecksetting now properly sets the default of the settings that get created.
  • Added: Case 39641: Added filters for Inventory Question & Answer to the Transaction List for the Sales Order source
  • Added: support for specifying an email subject in reportqueue.
  • Added: Case 39981: Add vehicle.storeid Display Field to the Transaction List for the Vehicle source.

Accounting

  • Changed: all the date range dropdowns no longer show 'future' date range spans.

Appraisal Extension

  • Added: support for disabling errors when testing if an appraisal connection is valid.

Customer

  • Added: (case 39528) the customer sell price class markups now sorts the rows automatically by the sell price class name.
  • Changed: the contract price rows are now sorted better for numeric tag #'s.
  • Added: 'Average Cost' as an option in special price adjustments.
  • Changed: the markups in special price adjustments are now displayed as raw %'s instead of markup %'s. This makes the pricing display look more consistent with other areas. This means a markup of 25% (previous display) will now be shown as 125%. This only affects display, no change to pricing behavior.
  • Changed: the pricing page no longer checks for overlapping contract time spans for the same part, as there were issues with it, and the user can simply manage this themselves.
  • Added: (case 39324) support for showing the user account who created each customer price contract.
  • Changed: customer price contracts no longer are reloaded when the user changes whether to show expired documents, which speeds the screen up.
  • Changed: when adding or editing a customer price contract, past date ranges are no longer visible, as they are not usually useful.
  • Added: next 365 days option for price contracts date range combo.
  • Fixed: (case 40533) two columns labeled "salesman" have been relabeled to "counterperson" for increased accuracy.

Customer Contact

  • Changed: all the date range dropdowns no longer show 'future' date range spans.
  • Fixed: (case 40538) the customer contact home page now correctly loads all stores into the dropdown.
  • Added: the store dropdown on the home page now defaults to the store the user is logged into.

eBayExtension

  • Fixed: several memory leaks occurring through normal usage of ebay screen.
  • Fixed: several crashes that could occur when listing parts without first signing into eBay.
  • Fixed: (case 39231) If you chose 'no returns allowed' you would see an error when sending the listing.
  • Fixed: (Case 28577) an issue where some characters the user might copy + paste into a listing description could cause eBay to throw an error. They are now translated to the nearest matching character before upload.
  • Fixed: several issues where clicking refresh or ebay sign-in would cause error messages instead of just taking the user to the 'sign-in' page.
  • Added: if you've signed in successfully and then hit the 'reset ebay sign-in' there is now a popup that says it will clear the current info and asks the user if they are ok with that.
  • Added: The listing page now shows the actual ebay category text for the current listing instead of its (useless) id #.
  • Changed: The area where you see the formatted listing body (created from template) no longer removes all the line-breaks they put in the template. This makes it a lot easier to review the upload body. Also, that edit box no longer has horizontal scrolling.
  • Fixed: eBay Site (us vs canada) wasn't implemented right and threw an error
  • Fixed: a minor issue with paypay immediate pay
  • Fixed: If you updated the auctions page, a floating date-time value would appear. There is now a datepicker labeled Last update from eBay
  • Changed: Renamed Global Config to "Account Defaults", and "Advanced Config" to "Listing Templates"
  • loading the screen with no token, then getting one wouldn't work right if sandbox mode was enabled without first clicking production.
  • Loading the screen with a sandbox token wouldn't work unless you clicked into production, then back to sandbox.
  • Removed a bunch of unused image handling code from the edit listing dialog.
  • Fixed: some currency values are now properly sorted in the user's locale format.
  • Added: (case 39820) better sorting to the list columns in the auctions page, listings page, and transactions page.

GlobalSettings

  • Fixed: an issue where new settings might not get their default correctly.

Home

  • Changed: all the date range dropdowns no longer show 'future' date range spans.
  • Fixed: (case 39912) an issue where non-deplete items were showing as not available on the SO and WO home screen tabs.

Master

  • Fixed: (case 39506) an issue where the application might load the same module more than once, which could lead to crashes in some corner cases.

Parts

  • Added: limit to the 'contained in collections' tree to just 150 collections. In general, most items are contained in no more than one collection, but for companies that have non-deplete warranty items that they put into many parts' templates, this will speed up loads.

Purchase Orders

  • Fixed: (case 39670) an issue where clicking the attachments button did not cause the dialog to appear.
  • Fixed: (case 40014) an issue where results sent from inventory overview to PO or TO could cause some issues if the items are templates.
  • Fixed: an issue where clearing the PO screen didn't clear out the type dropdown.

Sales Orders

  • Added: when creating a return document, the original 'salesperson' who got credit for the sale will be copied from the original instead of the current customer salesperson.
  • Fixed: (case 39670) an issue where clicking the attachments button did not cause the dialog to appear.
  • Fixed: (case 39791) an issue where document lineitem descriptions were not properly loading any tokens from inventory, like inventory.description.
  • Changed: (case 40184) fixed an issue where the search screen list control acted weird when scrolling horizontally.
  • Changed: (case 40299) the dropdowns on search no longer automatically show their drop-list when you tab onto them. The reason for this is because it made the action of hitting enter inconsistent on the screen. This is because (when a dropdown is shown) enter confirms the choice and closes the dropdown, while the rest of the time, enter performs a search. This was especially confusing when closing a popup like the interchange dialog.
  • Added: in conjunction with the above change, typing into a dropdown now always shows the dropdown list for the user to arrow through. Before, only autocomplete dropdowns would do this. Now they all do. (Note: in addition to typing, the user can hit the up or down arrow to show the options).
  • Changed: all dropdowns on the vehicle search are now styled the same way as the part search, including the behavior of when they dropdown.
  • Fixed: inconsistencies on dropdown behavior on part and vehicle search tabs.
  • Added: (case 40299) the "OK" button on the interchange popup now performs the search after choosing an item.
  • Removed: (case 38172) due to confusion and disagreement over what OK and Cancel should do in the 'no results found' dialog, it has been removed. Now, if a search is performed that finds no results, the system will beep and information will be put in the status bar.
  • Added: (case 39472) support for search fields that get 'auto wildcarded' as part of a search. For fields like description or notes, the value will be searched anywhere inside the field.

ITSQLFramework

  • Fixed: (case 39506) an issue where the error reporting dialog could cause a crash if the settings module had caused a crash before.

Warehouse Management

  • Added: the from/to location for non-serialized parts have been flipped when items have been 'found' at a location. Before, it seemed like quantity would move to Variance. Also, when items are lost, the To location is now "Variance (LOST)" and when items are found, the from location is now "Variance (FOUND)".

Work Orders

  • Fixed: (case 38662) an issue where doing an assembly breakdown might cause a database error if the Assembly Breakdown work order type and Assembly Breakdown Template (job template) were saved in a specific way (related to the labor GL category). Now such situations should be handled better. Assembly breakdown jobs will now correctly inherit defaults from the Assembly Breakdown WO type, as customized by the user.
  • Fixed: (case 39670) an issue where clicking the attachments button did not cause the dialog to appear.
  • Fixed: (case 40435) an issue where creating a new job or new job template on a WO didn't copy information from the WO template correctly.
  • Fixed: an issue where the edit work order types dialog did not display default labor rate correctly as currency, and the shop supply charge field was not displaying percentages correctly.
  • Fixed: an issue where the user could not select and delete more than one labor entry on a job.
  • Fixed: an issue where the 'send WO to invoice' popup was showing expired quotes. Also, results will be ordered by date, then document # to make them easier to find.
  • Fixed: (case 40572) an issue where removing parts or tasks from a job template and then saving the template would not remove those items correctly.

Quickbooks

  • Fixed: (case 39797) an issue where the accounting push tab now shows checkboxes for what to export again.

Reports

Billing Statement - French (Billing_French.rpt)

  • Removed: (case 38548) deprecated the temporary duplicate file that only handled French mode. The standard report can do this now. Screen reports have been able to correctly pull in parameter defaults for awhile, and this is just a holdover.

Database Change Log (DatabaseChangeLog.rpt)

  • Added: (case 39031) a new event filter, and a new column filter that has the ability to filter by a specific column, all columns, or a comma-separated list of columns. A default parameter value can be set for this with a new Reports setting.

External Work Order (WorkOrderExternal.rpt)

  • Changed: (case 40049) job parts and labor layout is now laid out like a table by default, with a setting available to change that back to the more SO-like look
  • Changed: (case 40049) combined customer unit and master part subreport into one section and cleaned it up.

Inventory Loss (InventoryLoss.rpt)

  • Added: (case 38795) a report showing inventory on variance document types in a date range with quantities and replacement costs.
  • Added: (case 38795) missing namer in the header

Inventory Summary (InventorySummary.rpt)

  • Added: (case 39025) inventory replacement cost, if a new setting (passed in via parameter) is set to True. It is False by default.
  • Changed: (case 39025) moved noninventory setting out of the report query. It is now passed in via parameter.

Parts Remaining By Vehicle (PartsRemainingByVehicle.rpt)

  • Changed: (case 39623) updated comment header

Price Deviation (PriceDeviation.rpt)

  • Added: (case 38439) rejected/approved by username, when present, in the new approval/rejection subreport.

Receiving Tag (TagReceiving.rpt)

  • Changed: (case 40021) Receiving tag now respects show SKU below barcode tag setting

Sales Order 11in (SalesOrder11in.rpt)

  • Changed: (case 37359) standardized setting names: salesorderdocument memos + hide memo were different from the rest

Sales Order Returns (SalesOrderReturn.rpt)

  • Fixed: (case 40017) GL context filtering was excluding some core returns/exchanges.

Vehicle Value Analysis (VehicleValueAnalysis.rpt)

  • Added: (case 39450) vehicle unit remaining market and sold retail. Part counts do not include vehicle units.
  • Changed: (case 39450) shortened Parts header line to exclude remaining market and sold retail, then moved cost columns section to the left of parts columns
  • Changed: (case 40011) VVA report now pays attention to the setting that allows you to exclude non-inventory vehicles even if there is cost remaining
Newer Older