Difference between revisions of "ITrack/Enterprise/Changelog"

From ISoft Wiki
Jump to navigationJump to search
Line 1: Line 1:
=Release 11.5=
ITrack/Enterprise/Release Candidate
===Home (17051)===
Warning: This page is 44 kilobytes long; some browsers may have problems editing pages approaching or longer than 32kb. Please consider breaking the page into smaller sections.
* Fixed: (case 19233) an issue where the "All" work order types option was not at the top of the WO type dropdown.  And if it was not, it would not search all types.
Bold textItalic textInternal linkExternal link (remember http:// prefix)Level 2 headlineEmbedded fileFile linkMathematical formula (LaTeX)Ignore wiki formattingYour signature with timestampHorizontal line (use sparingly)


===Sales Orders (17053)===
=Release 12.0=
* Fixed: (case 19142) an issue where performing lookups in the list control would sometimes only work every other time.
==Highlights==
* Added: all print jobs, successful or failed, now get put into the report print queue (this can be reviewed on the report viewer screen).  All print errors can be reviewed here, print jobs can be reprinted/retried, and total execution time can be reviewed.  This will help improve print speeds in the future.
* Improved: all print previewing has been improved.  Cancelling/reprinting a preview now happens faster.  All errors are reported in the standard ITrack error dialog.  All print previews now go into the print queue.
* Added: reports in the report viewer can now be marked as 'favorites'.  This is a per-user setting so that each user can remember the reports they often print.
* Added: various improvements to the report viewer screen's presentation.
* Added: whenever the user performs an advanced print operation, they can easily choose print quantity as well as whether they'd like to print the job or email/save a pdf (email/save require the advanced print server solution).
* Added: the parts and vehicles screens now show a floating attachment preview dialog.  With this, the user can easily view images for the current part or vehicle without having to go to the attachments page.  This popup can be located on a second monitor if the user wishes.
* Added: there is now a global hotkey (editable in the configure->hotkeys dialog) that, when held down during a print job, will pop up the advanced print dialog.  This makes changing print quantity or emailing any print job easy.
* Changed: the way accounting is saved has been changed to make gl reports clearer.
* Added: each store can now have a remittance address in addition to its street address.
* Added: the returns dialog on the sales order screen has been merged with the one on the purchase order screen so that each area got all the benefits the other had.
* Added: sales orders now allow the user to specify a reason for the return.
* Changed: many screens got adjusted so that whether the user has done a normal search or a location specific search, results are sent to other screens in a consistent way.
* Added: inventory can now be specified as single quantity items.  In the future, this will signify items that cannot exist at multiple locations.


===Work Orders (17053)===
==Tools/Controls==
* Fixed: (case 19180) an issue where items deleted off of a job could still cause a "Warning: it appears that the item '<this item>' is already on the WO, would you like to continue adding it again?" popup to appear.
* Performance: upgrades to our collections that (in some cases) eliminate as much as 85% of the time spent in some loops.
* Fixed: If the user sent search results from search to the current WO (without clicking the add item button first), if there were items loaded on the job, they would be replaced by the results
* Added: support for icons on 'push-like' buttons.
* Fixed: (case 19181) several situations where sending multiple search results to the job on the current WO would load all items onto the same line, causing only the last one to be shown.
* Added: support for typeable columns in lists can now support a 'maximum length' for the data that the user can enter.  If the user enters more than this, they hear a beep and are stopped.
* Performance: formatting of list text has been sped up somewhat.
* Added: a shared city/state/zip field group to consistently handle all areas where these linked fields should look one another up.
* Fixed: an issue where attachment interfaces would not lock down correctly in some scenarios.  Also fixed an issue where the public checkbox wouldn't work correctly if there was more than one check in the list.
* Fixed: an issue where custom "ok" message boxes wouldn't have their custom button text shown.
* Fixed: an issue where times containing midnight might save incorrectly.  Also an issue where date/times might save as 1899-12-30
* Added: doubleclicking an item in a tree control now toggles the expansion of that item.
* Fixed: an issue where the list footer would become invisible in some scenarios.
 
==Accounting==
* Changed: (case 18825) the way gl transactions are built has been completely redone.  The main upshot from this is as follows:
  1. When a SO is saved/finalized/voided, all payments attached to that invoice as well as all external WOs that are on the SO have their accounting put into the same gl transaction.  This makes it easier to relate all the 'activity' of the invoice in one place.
  2. Now, there are many gl transaction types that represent all the areas of the software the user could trigger accounting from.  This will make it easier for accounting reporting to say more exactly what the user did to cause the activity.  For example, a single invoice could have multiple gl transactions over its lifetime.  The following could  be the example transactions for a single SO: "Sales Order Saved", "Sales Order Finalized", "Sales Order Reopened", "Sales Order Finalized", "Sales Order Voided".
* Fixed: an issue where voiding payments was incorrectly attaching the balancing entries to the original transaction, possibly at the original transaction date.  Now this gets a new "Payment Voided" transaction at the current date.


=Release 11.4=
==Appraisals==
===Database===
* Changed: (case 19419) by user request, the 'current quantity on hand' retrieved as part of sales appraisals will now limit the matched results to just items that match the category of the current item (if it is filled out).  Otherwise, all categories are considered.
* Fixed: (case 19032) a bug where indexes in certain functions were not being used appropriately


===Reports===
==Approvals==
====Sales By Invoice====
* Fixed: (case 18952) an issue where the stock category was not correctly being displayed when price rules were being loaded.  The value of All would save but display as Standard on the next load.
* Fixed: (case 19361) a bug where the report would ignore the store ID parameter
* Fixed: an issue where changing the document type of a price rule was not being saved.
===Vehicle===
* Fixed: another issue that was causing part types from being saved on price rules.
Fixed: a crash that occurred when opening a vehicle with an attached bid


=Release 11.3=
==Crystal Reports Extension==
===Customer===
* Added: (case 17915) printing reports now logs successful print information as well as errors to the print queue.
* Fixed: a crash that occurred when printing from the customer screen
* Added: proper support for 're-printing' items in the report queue.  That way, they won't get another entry in the queue.
* Added: print previewing now inserts an 'in progress' entry in the print queue, which is overwritten up by the report viewer screen.
* Added: (Case 18265) the 'choose printer' dialog now has the ability to let the user choose to email a report instead, or archive it on the server.  In addition, the user can have a print get 'delayed' in the queue if they wish to schedule it for later.
* Added: the archived reports subdirectory now has a default value per report type.  This way, all saved reports will automatically be saved into sorted subdirectories.
* Removed: if the user performs an advanced print, the windows printer dialog no longer shows up.  Instead, we show the ITrack choose printer dialog, which allows choosing to email or archive.
* Added: (case 18265) a global hotkey that controls whether to automatically show the advanced print options popup during any print.  This defaults to ctrl + left click when printing, but can be rebound in the hotkeys dialog.
* Added: support for auto-complete options in the email dropdown.
* Added: if the user enters a new email address in the dropdown, future email operations will 'remember' that option.
* Fixed: newly created report queue entries are now correctly cleaned up, avoiding memory leaks.
* Changed: reprinting a report queue entry no longer updates the 'created by user'.
* Fixed: crash that would occur when cleaning up report queue entries.
* Changed: if the user chooses to email or archive a report, all reporting code is skipped.
* Added: support for delayed printing and emailing.  If a print job is going to be printed in the future, the print operation is skipped and logged in the queue.
* Changed: the error report field in the report queue can now go up to 1000 characters instead of being limited to the previous 250 characters.
* Added: there is a new setting ("Printing"->"Advanced print management server installed"). The advanced printing dialog now deactivates various controls if this setting is off.  Essentially, any controls that require report commander to be present are disabled.
* Added: (case 19676) the advanced print dialog now has a quantity edit so that the user can easily change the print quantity without going into the windows printer dialog.
* Added: report auto-updater now creates new reports with a category of "Report".
* Added: Configure->reports page now has handling for setting a report category.
* Fixed: (case 19832) an issue where exporting a report add script with parameter values could cause a query error.


=Release 11.2=
==Core Management==
===eBay Extension===
* Fixed: (case 19052) an issue where typing into the part lookup on the customer cores (filter at the top) or returned cores (core bank lookup) tabs, if the user was taken to search, any result they chose would not be returned to the screen correctly.
* Fixed: a problem where eBay would crash on export
* Changed: the part filter field on customer cores has been modified to work more like the lookups on other screens.  This should make the usage of the screen more obvious than before.
* Changed: (case 17587) the document # column in the customer cores tab has been reformatted to match the format of the returned cores tab.
* Removed: (case 17587) the document # columns no longer show document line item #.


=Release 11.1=
==Customer==
===Customer===
* Fixed: (case 18861) an issue where the user could type in an invalid tax item name and the value would not be cleared before saving, leading users to believe a valid value would be saved.
* Fixed: (case 18861) an issue where the user could type in an invalid tax item name and the value would not be cleared before saving, leading users to believe a valid value would be saved.
* Fixed: (case 18861) an issue where no tax item selected was being saved with an invalid value (now it is correctly set to NULL).
* Fixed: (case 18861) an issue where no tax item selected was being saved with an invalid value (now it is correctly set to NULL).
* Added: (case 18825) creating finance charges now falls under a gl transaction type of "Finance Charges Finalized".
* Fixed: (case 18961) an issue where the Save & New button did not clear the screen after saving, making it seem as though nothing had happened.
* Fixed: (case 19108) if a new customer was created without the user going to the tax/payment info tab, the default invoice terms would not be saved correctly.
* Fixed: (case 18794) an issue where hitting Save and Clear on a customer with attachments, then creating a new customer could 'move' those attachments to the new customer.


===Customer List===
==Customer List==
* Fixed: an issue where searching by customer website would throw a database error.
* Fixed: an issue where searching by customer website would throw a database error.
* Fixed: (case 18945) a database error that would occur if the user was searching for customers at a specific store ("Customers For All Stores" is unchecked) and they were searching by an address field (due to the recent additions allowing the system to simultaneously search alternate addresses).
* Fixed: (case 18945) a database error that would occur if the user was searching for customers at a specific store ("Customers For All Stores" is unchecked) and they were searching by an address field (due to the recent additions allowing the system to simultaneously search alternate addresses).


===Database===
==Database==
* Fixed: (case 18852) PO adjustments that were created before version 11 wouldn't show up on their posting correctly anymore because of the innodb changes.
* Added: support for new 'time elapsed' column in the reportqueue table.
* Added: (case 18727) support for delayed print operations in the print queue (reportqueue.waituntil).  There is also now an index on the fields that the report server scripts uses to find printable jobs.
* Fixed: the triggers and functions that keep locations up to date no longer use a value of -1 to represent 'no location'.  This was causing issues on some databases that were in strict mode.  Now, the system always uses NULL.
* Added: (case 18825) several previous gl transaction types have been retired and many new ones have been added.  This is part of a push to make gl transactions a descriptive and useful way to review accounting.
* Removed: the old comments field in gl transactions.  It was generally just used for the same purpose that we now use type for.
* Fixed: (case 18861) customer.taxitemid has been corrected to have a value of NULL instead of -1 for those rows where -1 was being inserted.
* Fixed: (Case 18852) PO adjustments that were created before version 11 wouldn't show up on their posting correctly anymore because of the innodb changes. This fixes it.
* Added: (case 18001) salesorderline.customerprice, which is a transactionalized copy of the price the salesman was presented with by default.  All historical sales have had their value set retroactively for future reporting.
* Fixed: (case 19027) the f_invoicepaid function had different versions on different databases.  This should standardize and speed up the function slightly.
* Performance: (case 19032) customer balance calculating functions were being too specific about what index to use.  Now, they will use whichever one is best.  This showed some minor speed improvements on very large customer activity.
* Changed: maximum make length increased from 15 to 50 characters.
* Changed: inventory make length increased to match the 50 character limit of other tables.
* Fixed: (Case 19047) an issue the user would get a database error when deleting locations.
* Added: (case 17859) a new permission to control whether the user can print documents that have outstanding price violations.  By default, this is on for all users who could normally edit a SO.
* Added: (case 17070) support for a user-entered 'return reason/code' that can track 'why' an item was returned.
* Removed: a view that was created for a previous report.  It is no longer in use and it not well optimized.  All reports should use f_get_attachment_id instead.
* Removed: (case 3886) the after update trigger on vehicles has been removed.  This had been a previous way to keep year, make, model, etc synchronized between vehicle and inventory.
* Added: (case 6507) a search option to inventorysetting to allow the user to search for parts by the tag # of any collections that item is in.  This makes printing tags for all collection members easy.
* Fixed: (case 17943) selling/deleting a whole unit should reject all open bids.  This solves issues where users would accept bids after the vehicle was sold, marking the vehicle as available again.  This should trigger if the user sells the whole unit on a SO, consumes it on a WO, or returns it to the vendor on a return PO.
* Changed: column order rearranged in the inventory table to make more sense.
* Added: (case 6656) there is now a 'singlequantity' flag on inventory.  This flag will track items that should never have a quantity greater than 1 and should never have more than one valid location.
* Updated: all previous vehicle whole units set to 'Single Quantity' Parts.
* Fixed: an issue where inventory.isacore allowed NULL.
* Added: (case 18391) vehicle bids now store an 'assigned to' user as well as the date they were closed and what user closed them.  All closed bids have had their date closed set retroactively, where possible.
* Added: (case 17070) a new table where users can define a list of 'return codes/reasons'.  These can be chosen between when performing returns on an invoice.
* Added: (case 17070) a new permission controlling who can manage return codes.
* Added: 3 initial return reasons to handle the common cases.
* Fixed: the right-clicking graphing template has been modified so that if the user uses a string column as the x axis of a scatter graph (but the strings contain numbers), the graph should look correct.
* Added: (Case 19658) Schema for logging search times to log_search.
* Changed: (case 19042) the previous part search column "Entered By (user id)" is now no longer searchable and has been replaced with "Entered By User" which allows the user to search by user name.
* Added: comments to report table columns.
* Added: new column for tracking a report's category, separate from its type.
* Added: speed index to the report table based on name.
* Fixed: (case 12267) an issue where v_pickable_jobpart was not defined correctly, causing most items to be unpickable.
* Added: (case 19865) report.name is now enforced unique per report type.
* Fixed: a misspelled column name in a location delete trigger.
* Fixed: (19810) an issue where several sales order job fields wouldn't aggregate correctly on the totals tab of the transaction list.
* Added: (case 19467) notes for why a report subscription exists


===Sales Orders===
==Deliveries==
* Added: (case 18001) the 'customer price' the salesman is presented with is now saved with all lineitems for historical reporting.
* Changed: by customer request, the 'Skip Delivery' button on the picking tab has been renamed to Skip Pick/Delivery to more clearly denote that the items will not be picked.
* Fixed: saving new lineitems will now be slightly faster, especially on very slow connections.


===Search===
==Ebay Extension==
* Fixed: (case 18899) a crash that could occur if the user deselected all vehicles and then clicked on any header to sort the list.  This was a long-occuring bug that had been difficult to track down, credit to Ryan@Active for reproduction information.
* Added: (Case 17835) There is now a last updated date displayed on the auctions page of the eBay module
 
* Added: (Case 17835) Invoicing from eBay will now create a basic customer record if no customer with a matching email exists and the Setting "Ebay Create Customer" is set to true and receive at least the email from the ebay transaction.   
=Release 11.0=
* Added: (Case 17835) Added a column "Invoiceable" that shows the count of completed transactions with no invoiceids associated(an invoice id is not added until ebay is closed and re-opened, so this value will not either)
==Approvals==
* Fixed: (Case 17835) Fixed an sql error when updating ebay auctions.
* Fixed: (case 17951) an issue where hitting the delete button would always ask the user to delete all price restrictions.
* Fixed: (Case 17328) Added 'Freight' as a shipping option.
* Fixed: (case 17952) an issue where part types on price restrictions were saving but not displaying correctly.
* Fixed: (Case 17945) Fixed a crash when launching ebay without a user account.
 
* Added: (Case 19012) Added a transaction tab
==Customer==
* Fixed: (Case 19012) Filtering now works correctly.
* Changed: (case 17610) the 'next/previous page' buttons on the invoice list are now under the main invoice treeThis should make it easier for users to find.
* Fixed: (Case 18840) Freight shipping now overrides any cost or free shipping settings
* Added: the drag bar on the invoices page no longer lets the user drag so far that it goes over other parts of the screenOther minor UI tweaks.
* Fixed: (Case 19012) Now hiding the ItemID column, since users have no use for it.
* Fixed: an issue where the invoice item detail list was still showing if the user had the 'show line items' checkbox unchecked when they closed and reopened the screen.
* Fixed: (Case 19012) Initial load speed dramatically improved.
* Fixed: (case 17816) if the user doesn't have permission to edit attachments, they'll now correctly still be able to copy the image to the clilpboard.
* Fixed: (Case 19305) Open Screen permission is now correctly followed.
* Changed: customer # and balance are now right aligned.
* Fixed: A query error was corrected regarding invoices.
* Added: (case 12527) payment dialog now resizes and remembers previous location.
* Changed: invoice dropdown no longer automatically pops up, making things work a little smoother.
* Changed: save and new as well as previous and next result buttons have been re-activated.
* Fixed: (case 18378) a crash that could occur if a customer was loaded that had an invalid price class markup.  This would only happen if it wasn't the 'last' price class markup on the customer.
 
==Customer List==
* Added: (case 16332) searching by company name/contact/street/mailing/city/state/zip/country now searches alternate addresses as well.
* Added: (case 16332) smart search now searches alternate addresses.
* Fixed: next and previous customer functionality works again (buttons to scroll through search results on customer screen).


==Common Resources==
==Common Resources==
* Changed: (case 17685) if the user hits print tags from the parts screen, the choose locations/serials to print dialog will be shown if there are no locations on the part or quantity is 0Serialized parts with serial #'s will still not show this dialog, but now an error message is shown that says why tags could not be printed.
* Added: a generalized version of the picture viewer dialog used on searchThis will be usable by other screens that would like to show image attachments for parts and vehicles.
* Added: (case 17685) if the user prints tags for one or more non-serialized parts with no locations, a blank location is now shown so that the user can pre-print tags for parts that don't have locations yet.
* Moved: the view pictures dialog from search has been moved to common resources so it can be shared between screens.
* Added: (case 17685) a blank tag is no longer printed if all visible locations have a print quantity of 0.  Now, the user is shown an error telling them to enter some quantities.
* Added: the title text of the pictures dialog is now more descriptive, and shows total number of images in the title.
* Added: hitting enter in the thread dialog will no longer hit cancel.  This is because sometimes people would do a search and another hit of enter would cause the search to be cancelled.
* Changed: the last location of the pictures dialog is no longer stored in the ini file.
* Added: the picture view dialog now uses a type of image cache that holds onto previously loaded file information.  This should make load operations faster if the user goes back and forth between items.
* Fixed: the page up/page down buttons seemed to do the opposite of what was expected when scrolling through images.
* Added: support for showing images on unsaved parts and vehicles.


==Core Management==
==Global Settings Extension==
* Fixed: an issue where the store chosen in the store dropdown would not actually filter the results unless the user chose a store then switched back.
* Fixed: an issue where the print queue page on the report viewer screen would incorrectly ignore the 'show printed' checkbox.
 
* Added: support for print logging in the report queue.
==Database==
* Added: support for mouse buttons in key bindings.
* Fixed: the query that converted customerfile to InnoDB was throwing an error due to some misplaces parenthesis and commas
* Added: doubleclicking a keybinding now allows the user to immediately rebind that action.
* Added: a column to inventorytype to control permission to make public on HTP
* Added: an auto-complete handler that looks up all historical email addresses of users, customers, customer alternate addresses, and previous emailed reports.
* Fixed: an issue where f_calculate_average_cost was incorrectly using average item cost instead of average core cost when calculating cost for inherent core charges on vehicle items.
* Changed: to support the new way that search results are sent between screens, the ebay handler had to be updated.
* Changed: (case 17057) when an invoice that contains a vehicle item is either reopened or returned, the cost of the sale will now correctly be put onto the item for the next time it is sold.  Previously, this only worked if a yard didn't allow inventory cost to override percent of price costing.  Now, in such a case, the returned cost will be put into the cost field on the part.  This will keep a secondary sale from recalculating a new percent of price cost and adding it to the previous cost.  That issue was causing the cost to increase on returned parts in some scenarios.  These changes will not have an effect on yards that do not allow the inventory cost field to override % of price costing.
* Added: support for various new report viewer features.
* Added: inventorysetting now has a unique key on the fieldname column to prevent possible duplicates.
* Performance: when a user closes a screen, column order is now saved with an INSERT ON DUPLICATE KEY UPDATE instead of REPLACE INTO, which will reduce traffic and disk writes.
* Fixed: an issue where documentlinelocation.location was longer than the location field in other tables.
* Fixed: (case 19255) an issue where user settings would not save any changes if the user logged out and logged back in before closing the application.
* Fixed: (case 17477) an issue where the salesperson value saved on the invoice could sometimes be saved as an invalid number when it was supposed to be NULL (None selected).  This issue was not really visible to the user.
* Added: (case 17655) several user-suggested indices to speed up loading items onto the customer cores and returned cores tab of the core management screen.
* Changed: (case 17806) f_move_inventory_with_allocations now accepts negative quantities.  In such circumstances items are moved from the destination to the source and any document allocations will be 'unpicked' correctly.
* Changed: (case 17806) f_move_document_allocations now marks serials received on POs and TOs as not picked if the user picks a negative quantity of an item.
* Removed: deprecated view v_salesorderitem.  This view was added for some reports, but it is very slow, and we don't use it anymore.
* Changed: (case 17591) all tables that had a multi-field primary key with an auto-increment column have been modified to no longer work that way.  This is because that type of key is not supported by InnoDB, and all these tables have been moved to innodb.  Some tables had their key replaced, some got a new key, and some that got a new key had other tables updated to point to the correct 'new id'.
* Changed: (case 16468) almost all tables in the database have been moved to the InnoDB storage engine.  This should reduce the locking experienced by users under full load and lower the likelihood of data corruption if the server crashes.
* Fixed: issues where the old primary key columns were set to NOT NULL, preventing new items being inserted.
* Added: (Case 1759) workordertypeid to activitytype. This will be used to determine which activity types represent which work orders.
* Added: (Case 1759) a column to tell Enterprise Mobile that certain activities should not be shown to users.
* Added: (Case 1759) a unique index that will insure only one activity type is created per work order type
* Added: (case 11701) 2 new permissions, 1 for whether the user can change filled out required options and another for whether the user can change filled out non-required options.  These permissions will default to on for any users who could previously edit work orders to emulate previous behavior.
* Fixed: (case 16886) when the user performs right-click graphing and numeric values being graphed are empty, they are no longer graphed as 0.  Now, such values are not present in the graph.
* Added: (case 16928) a new permission that controls whether the user can edit dates on SOs.
* Added: Purchase Order - Stock Category filter and field to the Transaction List.
* Added: (case 15780) in version 10, the dismantled checkbox and the dismantled date were combined in the interface.  At the time, we didn't update the 2 fields to match.  Now if one field is filled out, the other will get set.
* Changed: (case 18062) default user status in the part and vehicle tables is now blank instead of A.  This shouldn't affect any current systems, but could change the default status of new parts on any future imports or uploads.
* Added: (case 18558) The FIFO subsystem has now been added to the standard Enterprise release. This subsystem has been an optional add-on until now.
 
==Deliveries==
* Fixed: an issue where all results would be displayed, even if the user told the screen to only load the first 500 items when the size of the results exceeded the warning level.
 
==Ebay Extension==
* Fixed: (Case 16237) Sending multiple listings to auction no longer fails due to shipping options.
* Fixed: (Case 16144) Enabled support for sandbox testing.
* Fixed: (Case 16144) Multiselect listing now correctly lists the items selected.
* Fixed: (Case 17525) New listings cancelled through itrack will now show as closed instead of active.
* Fixed: (Case 17525) Cancelling auctions now updates the display immediately so that it is more apparent that the auction has actually been cancelled. 
* Fixed: (Case 17631) Weights and measures are now initialized correctly, so that items may be listed with shipping options safely.  This is a stopgap fix pending additional UI changes.
* Fixed: (Case 16410) The user should now see much cleaner information when errors occur.  There is now also an eBay error type. 
* Added: (Case 17725) Items submitted with an SKU in the customlabel field to ebay externally from itrack can now be invoiced out of itrack matching on the tagnum field.
* Added: (Case 17792) The auctions page now has a transactions column for sorting to find invoiceable listings.
* Fixed: (Case 17791) Items which have already been invoiced out can no longer be invoiced out a second time.
* Fixed: (Case 17849) Global and Part Specific defaults should now all correctly apply once more.
* Fixed: Query fixes for recent schema changes have also been added.
* Fixed: Defaults now load even if the config page has not been visited.
* Fixed: (Case 17849) Two new pullfields added to handle part model and manufacturer.  The old pullfields now correctly pull assembly model and manufacturer.
* Fixed: I have also centralized the ebaycategorymap table as it is in pro.
* Fixed: Corrected an issue with listing items on ebay
* Fixed: Issues with weights and measures have been corrected.


==Home==
==Home==
* Fixed: (case 17783) home screen footers were not resizing correctly when a pagination control was at the bottom of the page.
* Fixed: an issue where, if WO type of "All" wasn't first in the list alphabetically, it would not correctly look at all types.
 
* Changed: (case 18791) the work orders tab now uses tagnumber instead of vendorcode and partnumber for all work order master parts.  This should resolve issues where some users would get inconsistent labeling for master parts
==Interchange==
* Added: tooltips to all columns headers as well as the body of the work orders tab.
* Changed: the way cross references work has been updated to match the newer database version (moved to InnoDB).
* Added: the user can now click into the description and notes fields on the work orders tab, making it easier to read multiline entries and copy text out.
* Added: (case 16389) 2 new columns to the work order tab: % Done and Job Status.  % Done shows a value that represents what % of the jobs on the WO are now at status Done.  The Job Status field shows the status detail of all jobs on the WO.  These fields show VOID if the WO is void and the status shows as FINALIZED if the WO is closed.  In all other cases, the columns receive the most appropriate status colorization to match the colors used for statuses on the WO screen.


==ITrack Online==
==ITrack Online==
* Added: better error checking to the code that opens a URL.  Now, if the URL is too long, an error message will be displayed to that effect.
* Added: any javascript errors encountered on any pages being navigated to will now be automatically suppressed on client systems, but not in testing.
 
==ITSQL Framework==
* Added: Error reports now have a "Force advanced information" option.  If this is set to true, when the error message is displayed, the 'advanced info' checkbox is automatically checked (and hidden).  This is useful when code wishes to use the error reporting box as a normal error popup but we can't gaurantee that everyone views advanced info.
* Fixed: an issue where very long words (like a URL) were not properly resizing the height of the message body in the error message popup.


==ITMySQL Connection==
==libITSQLFramework==
* Updated: local connection library version updated to version 6.1.5
* Fixed: the timestamps in the query log now use local times instead of UTC times. Also, the values are formatted a bit more logically.


==Master==
==Login==
* Added: (case 13008) when the application cannot reach the local database during an update attempt, the original MySQL error is now sent out as part of the error report, instead of the current, generic Database error 0 that we currently get.
* Fixed: a minor flickering issue when opening up the configure->users dialog causing it to load slower.
* Changed: (case 17194) we disabled some of the COM timeouts in the application, as this seems to make exporting reports from the crystal reports previewer not show erroneous 'server busy' messages.


==Part Configuration==
==Options==
* Fixed: (case 17465) manufacturer/model page: an issue where choosing a part type was loading an empty manufacturer dropdown.
* Added: the configure->Stores dialog now has an area for a remittance address and phone #. By default, this is the same as the street address of that store, but the user can make them differ. Soon, this information will show up on billing statements and invoices.
* Fixed: a potential situation where all manufacturers would be loaded into the manufacturer dropdown if no part type was chosen.
* Added: the configure stores dialog now uses a state auto-complete to populate the state dropdowns, which will speed up loading slightly.
* Fixed: an issue where adding a new manufacturer with a duplicate name wouldn't show the user-friendly error message.
* Added: changes to configure stores dialog to copy address information to the remittance area if the 'use same address' checkbox is checked.
* Fixed: (case 17465) an issue where the user was unable to add a new model to a manufacturer that had no models for the current part type.
* Added: the manufacturer dropdown now shows the number of models under that manufacturer/part type combination.
* Added: auto-complete support to the part type and manufacturer dropdowns on the inventory models tab.
* Fixed: an issue where the user could not change the case of a make on the vehicle makes/models page (they would receive a 'duplicate make detected' popup).
* Changed: (case 17591) cross references entry tab has been updated to properly handle changes for the new database version (moved to InnoDB).
* Fixed: minor layout issues on the cross references tab.
* Fixed: (case 18443) a crash that could occur if the user renamed a manufacturer that had at least one model for the current part type.


==Parts==
==Parts==
* Added: (case 17627) the "Enforce Location Hierarchy" setting now correctly uses the inventory store instead of the store the user is logged into.
* Fixed: (case 18858) an issue where the parts screen was setting locationid as part of its insert/update queries, when this field was supposed to be omitted.  It is handled elsewhere, and this was causing errors on databases with strict mode on (as virtual locations used a value of -1 which is no longer an allowed value.
* Fixed: an issue where updating a location name and saving would not save the updated location name.
* Fixed: (case 6663) the refresh button on the parts transactions tab now refreshes the transaction cache, so any newly created transactions will be found.  For speed purposes, the previous/next page buttons will not rebuild the cache.
* Fixed: (case 15515) an issue where deleting a location on a part no longer correctly removed corresponding allocations on open documentsNow, only documents that are reducing quantity will have their allocations removed (meaning POs, SO returns, and TO destinations will still remember what location they are planning on adding quantity to).
* Performance: the process of building the cache of transaction history for the transactions tab has been sped upThis will make loading this information faster, especially on slower networks.
* Added: (case 15515) if a location on a part is changed/moved, any open allocations on documents are updated to point to the new location (both allocations that reduce and increase quantity).
* Changed: attachment management has been upgraded to a newer methodology that will be compatible with a new picture viewer pane.
* Fixed: (case 17690) an issue where checking the 'link manufacturer and model' would set the correct model, but if the model was not on the first page of models, the selection would not be saved.
* Changed: several things about the header of the parts screen have been modified to introduce consistency between the parts and vehicles screens.
* Fixed: (case 17696) an issue where the parts screen detected a change collision on imported parts if their last modified date was '0000-00-00'.
* Removed: the advanced page no longer checks to see if the enter key should work like tab.  This is to establish consistency with other areas.
* Fixed: (case 17816) if the user doesn't have permission to edit attachments, they'll now correctly still be able to copy the image to the clilpboard.
* Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screen.  It will allow the user to view part and vehicle images for the currently loaded part at a glance.  The dialog is the same one that has been in use on the search screen since version 1.  The user may position the dialog on another monitor or in unused space.  The dialog is automatically hidden if the user goes to another screen.
* Fixed: an issue where changing collection type and saving was not actually updating the collection type.
* Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
* Changed: (case 17544) when the user loads pricing from the vendor catalog or from the vendor's price class multipliers, if the user has already filled out pricing on the part, those values will not be overwritten by any $0 values.
* Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
* Added: if the user loads pricing information based on price class markups, distributor price levels will now correctly get set like the others.
* Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialog.  The default is "Ctrl + P".
* Fixed: (case 18353) when the user clones a part with attachments, saving the attachments no longer throws an error.
* Added: new tool tips for all header controls.
* Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
* Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
* Added: (case 6507) a button to the links page that performs a search for all members in the current collection.  This makes printing tags for all collections members easy.
* Fixed: an issue where, if there was an error while saving collection components, the user might not be able to correct the issue and save again.
* Added: (case 17595) as part of saving new collection component items (such as for assemblies), the user is warned if the tag #'s they enter match any existing items in inventory.
* Fixed: an issue where inventory tagnumber was saving only 20 characters, when it was supposed to be 50 characters.
* Added: (case 6656) a new checkbox on the advanced tab called "Single Quantity Part".  Parts with this checked attempt to enforce that their quantity never goes above 1 and they never have more than 1 valid location.  This represents 'discrete' parts that only exist once in any store (such as vehicles and most parts created from teardown).
* Added: (case 6656) 2 new errors on save if the user has 'Single Quantity Part' checked and the quantity on hand is greater than 1 or there is more than one valid location.
* Added: (case 6656) any 'new' collection components created as part of a collection (usually an assembly) will create all 'child' parts as 'Single Quantity Items' if their quantity is 1 or less.  This should make it so that most of these parts won't ever have to end up in a state where they have multiple locations when that doesn't make sense for such 'simple' parts.
* Fixed: (case 19678) an issue where Q&A on new serials was not saving correctly.
* Fixed: (case 19663) an issue where clearing the parts screen after loading a part with a single serial # would not clear the "Serial #" field on the part info tab.


==Purchase Orders==
==Part Configuration==
* Fixed: (case 17401) an issue where transfering core items could transfer items at average core cost instead of average item cost.
* Fixed: a possible database error that could happen if the user entered a make longer than the maximum allowed make.
* Added: (case 17627) the "Enforce Location Hierarchy" setting now correctly uses the inventory store instead of the store the user is logged into.
* Fixed: the user could not 'uncheck' the start/end date on part type messages.
* Fixed: an issue where a received serial on a return PO couldn't be removed.
* Added: if a received serial cannot be removed, an error message will be shown to say why.
* Fixed: if serials on a return PO get removed, they now correctly get set to Status Available instead of Status In Transit.
* Changed: (case 17591) postings now have an id (which count up globally) and a posting number, which count up per PO #.  All the posting lookups and displays have been changed to show the posting # (1, 2, 3) so as to most closely match how things worked before this Update.
* Added: for backwards compatibility, postings can be looked up by id or by posting number.
* Fixed: the current posting is now selected when the user opens the choose posting dialog.
* Added: minor performance improvement to deleting adjustments.
* Changed: (case 17777) there was a warning that the user was going to receive a quantity greater than 1 into a whole unit, but was only triggered if accounting was turned on.  There is a new blocking error if the user is going to increase vehicle quantity above 1.  There is also a new attention icon in the PO list for these situations.


==Reports==
==Payment Entry==
===Aging===
* Added: (case 18825) when payments/discounts/credits are saved, they are now put under a GL transaction type of 'Payment Batch Updated'.
* Added: An updated, more efficient version with more filter options.


===Billing===
==Print Queue==
* Fixed: the OIA mode of the Billing report + additional improvementsAdds a third mode which is a hybrid of the two existing. "Both"
* Fixed: (Case 17810) All errors are now written to file and an exception has been added for writing errors to the database.
* Fixed: a bug in the OIA and Both modes of the report that would sometimes show extra open items. (When payment storeid did not match paymentline storeid - which can happen)
* Fixed: (Case 18665) Added timers, written to db.  It should also update lastsenton.
* Added: a setting to hide terms (bottom left of Billing report). By default, they will show.
* Fixed: (Case 18160) Now has an enterprise handler that should pull in printers using f_get_setting.
* Fixed: (Case 19360) Syntax errors and handling for when no parameters are passed.
* Fixed: (Case 19360) removed an errant else clause possibly causing failure loops
* Fixed: (Case 19360) execution time now correctly quoted.
* Fixed: (Case 19360) PrintQueue now handles missing reports instead of crashing
* Added: (Case 18528) error reporting emails
* Fixed: (Case 18430) Now enabled report commander's native error logging-v flag effects it.  To set a custom logfile, a new config setting 'reportcommanderlogfile' exists.
* Fixed: Printing reports no longer makes a pdf
* Fixed: Saving files to folders no longer deletes them
* Fixed: (Case 18727) Now supports a waituntil date/time which specifies when a report should print.
* Fixed: (Case 19605) Printing to the selected printer now works for reports that have No Printer checkbox checked in the crystal report file.
* Fixed: (Case 19718) Python now corrects the product config setting from ITrack Enterprise to ITrackEnterprise
* Fixed: (Case 19406) We now group_concat on | for parameters to avoid splitting off and ignoring subquery parameters.
* Fixed: (Case 19484) Printqueue now uses f_set_setting to let the other products know that the Advanced Print Management Server is installed.
* Added: a bunch of comments to make PrintQueue.py simpler to understand, as well as a convenience method for query error handling.
* Fixed: (Case 19850) Added some error handling for when queries return no results.
* Added: (Case 19850) Added a setting emailerroron, which when set to False will turn off email error reporting
* Fixed: (Case 19850) Allowed not specifying a printer.
* Fixed: (Case 19878) Fixed another crash


===Inventory Adjustment Log===
==Purchase Orders==
* Fixed: joining for global inventory adjustments (that can affect inventory at multiple stores), and updated grouping to reflect inventory store, not adjustment store.
* Added: (case 18825) future PO/TO accounting will now be done under GL transaction types of 'Purchase Order Received', 'Transfer Order Received', 'Purchase Order Voided', and 'Transfer Order Voided'.
* Added: count summaries.
* Changed: the returns dialog on the SO screen now shares resources with the PO return dialog, this should help them have the same features in the future.
 
* Added: by user request, the PO returns dialog now has many features that were only in the SO return dialog up until now:
===Labor Summary By Employee===
** Previous/next page buttons
* Change: column headers
* Added: PO return dialog now has a document # filter edit. The user can enter a document # (wildcards supported), or enter something in the "store #-document #" format.
 
* Changed: (case 6656) the error attention icon/popup related to receiving a vehicle a second time has been generalized to include any parts that are 'Single QUantity Items' (whole units count).
===Purchase Order Posting Report===
* Added: a new warning attention icon/popup related to whether it looks like a PO will cause a single quantity part to go above 1 QoHThis is a warning because the user is not actually receiving the stock right now.
* Updating PO reports that reference purchaseorderhistoryid to use posting number instead (for version 11).
* Fixed: an issue where a user with permission to edit POs after they have been marked as Done Receiving wouldn't see attention icons/warnings regarding changes they were making. Now, the presence of the warnings is based on whether the user can fix the issue.
 
* Fixed: an issue where the 'too many locations chosen' pop up dialog on PO save would sometimes show the incorrect number of 'bad lines'.
===Received Items===
* Changed: error/warning attention icon hover text has been changed to be more consistent with other screens.
* Updating PO reports that reference purchaseorderhistoryid to use posting number instead (for version 11).
* Added: when the system shows warnings/errors that 'Single Quantity' items (such as vehicles) will get a quantity above 1, it now checks quantity across all stores, as single quantity items can only have a single quantity at any location at any store.
 
===Received Items By Source===
* Updating PO reports that reference purchaseorderhistoryid to use posting number instead (for version 11).
 
===Sales By Invoice===
* Combined the SalesByInvoice report with the extended versions.  New "mode" parameter lets you select detail level.
 
===Sales Order 11in===
* Added: Customer Tax Exemption ID, if present.  This can be suppressed with a store level setting.
* Changed: the default for creating a new "hide company name" setting to show by defaultWill not change the default for people who already have the setting.
 
===Tag===
* Added: the TagLogo functionality to the standard Tag report.
 
===Teardown===
* Added: Pageheader updates and some minor improvements from previous cases, query comment headers, etc...
* Added: vehicle Stock # to the footer of every page on Teardown.rpt.
 
===Top Part Type Age Trending===
* Added: more grouping options, made the black "all" group in the bottom 2 graphs more universal.
* Improved report description.
 
===Unmoved Inventory===
* Added: a part type parameter.
 
===Vehicle Value Analysis===
* Added: summary totals.
* Added: an age column.


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


==Sales Orders==
==Sales Orders==
* Fixed: (case 17575) an issue where returning a core from the core management screen might throw a database error.
* Changed: default document type has been changed from Quote to Invoice.  This won't affect existing users, just new ones.
* Fixed: (case 17589) a possible query issue that could appear when distributing a vehicle's remaining cost across remaining inventory.
* Changed: (case 18354) the way 'default' document types work has been reworked.  There is still a setting that controls this value, but it is no longer saved when the user closes the screen.  Now, the user must choose to set it manually by right-clicking on the document type dropdown.
* Added: a setting to f_adjust_inventory that allows a yard to disable the code that statically allocates CoGS onto returned vehicle parts.  This is useful at yards that want to use pure percent of price costing all the time. It is suggested that yards not change this setting as it keeps vehicles that have been written down from having their cost become unbalanced.
* Fixed: the 'send items to location map' option in the right click menu will now show the user's current key binding.
* Added: (case 17627) the "Enforce Location Hierarchy" setting now correctly uses the inventory store instead of the store the user is logged into.
* Changed: the email to salesman and email to customer options now print an invoice to PDF and emails it instead of building a text email.  This will be much more accurate to the print outs.
* Added: (case 17800) now, if the user attempts to save an adjustment without an adjustment type, an error will appearThis prevents issues where the user would enter an amount on an empty adjustment line, which would show in the subtotal, but not be saved.
* Added: the context menu (right click) now has options for emailing to customer and emailing to salesperson.
* Added: (case 17766) loading a template onto a SO now loads all component items with the quantities filled out on the collection.
* Added: (case 18825) when an invoice is saved, finalized, reopened, or voided, all attached payments and work orders will now have their accounting inserted under the same GL category as the invoice itself instead of separate ones.
* Changed: a small performance improvement made to looking up payment information made possible by recent database changes (globally unique primary key).
* Changed: accounting now happens under the gl transaction types of "Sales Order Updated", "Sales Order Finalized", "Sales Order Reopened", and "Sales Order Voided" to make the transaction log easier to understand.
* Added: smart search now searches customers by alternate address info as well.
* Added: (case 18001) the 'customer price' the salesman is presented with is now saved with all lineitems for historical reporting.
* Fixed: (case 17593) the sales orders screen will no longer show the 'item is part of a collection doubleclick to break down assembly' attention icon if the parent assembly has a quantity of 0.
* Fixed: saving new lineitems will now be slightly faster, especially on very slow connections.
* Added: (case 17778) the part info tab on the left side of the SO screen now shows 'core status' of the selected lineFor inherent cores, it shows the status of whether the core has been credited back or not (or discarded).  For dirty core returns, it shows whether the core was discarded, inventoried (as well as to what SKU), or if its still in process.
* Fixed: (case 19013) an issue where loading an item onto a SO without any locations could cause the part to be opened on the parts screen instead if the search sent it over by locationNow the item will be loaded onto the SO with no location.
* Added: (case 17859) support for a new permission to control whether the user can print documents that have outstanding price violations.  By default, this is on for all users who could normally edit a SO.
* Changed: the returns dialog on the SO screen now shares resources with the PO return dialog, this should help them have the same features in the future.
* Added: by user request, the SO returns dialog now has many features that were only in the PO return dialog up until now:
** Date range filter
** Remembering what documents were expanded when the user changes pages or filters
* Added: SO return dialog now has a document # filter edit.  The user can enter a document # (wildcards supported), or enter something in the "store #-document #" format.
* Added: (case 17070) when the user opens the perform returns dialog, there is now a 'reason for return' dropdown.  The user will be shown all previous reasons in an auto-complete, but they can enter new reasons as well.  This 'reason' will be applied to all items returned at that time and is remembered for future returns.
* Added: if the user opens the edit item dialog for an item and that item is a return, the return reason will be shown in a special auto-complete dropdown (and can be modified).  This is useful for situations where many items need to be returned, but only one or two have a different 'reason'.
* Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into one.  This change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
* Added: (case 17070) a new configure->Documents->Return Codes configuration dialog.  Users with the appropriate permission can open this dialog to add/edit/remove 'return codes/reasons' which can be chosen between when performing a return on an invoice.
* Changed: (case 17070) the 'return reason' in the perform returns dialog (as well as the edit items dialog) now load entries from the new returncode table.  In addition, they now display both the code and name of the return reason.  This should give administrators a tighter control over what options can be chosen by users when performing returns.
* Added: return reasons that the user can choose between now show in 'rank' ordering.  This allows yards to customize the order that return reasons are displayed in (instead of alphabetical).
* Added: the return dialog now has a Configure button next to the return reasons dropdownUsers with permission to manage this list can click this button to be taken to the configure->return codes dialog.
* Added: configure->return codes now has support for showing which items are in use, and deleting an in-use return code will prompt the user to choose a replacement.
* Fixed: (case 19505) an issue where, if an invoice had payments on it that had a payment method that was not a valid option for the current customer, nothing would show in the payment method column.
* Added: (case 19551) when items are sent to a inventory adjustment document from warehouse management, 'found' items now attempt to find previously written down documents to 'return'Essentially, if the item in question was ever written down with sufficient quantity, that original write down cost will be used instead.  If no appropriate write downs are found, then the item is 'found' with a cost of $0 like before.  This helps with yards who would like 'found' inventory to not come back in at $0 average cost.


==Search==
==Search==
* Fixed: (case 17646) a crash that would occur if the user doubleclicked the camera icon to view images on some parts.
* Added: (case 8668) if a search returns no results, the popup now has a 'search on HTP' button which will attempt to perform the same search (when possible) on HeavyTruckParts.net.
* Fixed: an issue where the picture preview dialog that would appear after clicking camera icons would always show part SKU instead of tag # where appropriate.
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Fixed: an issue where cancelling a very quick search (often done accidentally by hitting enter a second time) would cause an error to be thrown when the search was being logged. This is due to a MySQL error that has been reported (https://bugs.mysql.com/bug.php?id=79838).  However, a second error was happening due to the outcome of the first query, and that has been fixed.
* Fixed: (case 18899) a crash that could occur if the user deselected all vehicles and then clicked on any header to sort the list.  This was a long-occuring bug that had been difficult to track down, credit to Ryan@Active for reproduction information.
* Added: 'wait' cursor while appraisals are being generated.  Other minor UI changes to appraisal configuration.
* Changed: when the user sends search results to other screens, they are now sent in just a single format, instead of 3 or 4.  This will make communication between screens easier and more consistent, but breaks compatibility with old versions of other screens.
* Removed: some code that might re-order results being sent from search to other screens.  Now items should arrive at other screens in the same order they were viewed on search.
* Moved: the picture viewer dialog that the screen used has been moved to common resources to be shared with other screens.
* Changed: (case 1545) the view pictures dialog is now shared with the parts and vehicles screensFor this reason, some adjustments have been made to the icons and title text to be more useful.
* Added: any images shown in the image viewer dialog are now cached locally, so going quickly between parts will force items to be loaded the first time, but on subsequent visits, the images will already be available.  This should make going back forth between search results with images faster, especially on slow connections.
* Added: (Case 19658) Search logging now records execution time, so we set it here.
 
==Transaction List==
* Fixed: all options in the right click menu will no correctly show the user's current key binding.


==Vehicles==
==Vehicles==
* Changed: after reviewing vehicles with cost discrepancies, it was noticed that parts with a status of S or C still allocate vehicle costs, but don't show on the available inventory area of the performance tabNow, everything other that status D shows up, making it easier for users to review manual cost allocations.
* Changed: the user interface of the main vehicles screen has been significantly reworkedIts layout should now much more correctly match the parts screen.
* Fixed: (case 17385) an issue where making updates to attachments and saving could lead to database errors or possibly vehicle images not saving.
* Fixed: an issue where the tracking # field at the top of the screen was not emptying when clearing the vehicle.
* Fixed: (case 17816) if the user doesn't have permission to edit attachments, they'll now correctly still be able to copy the image to the clilpboard.
* Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screen.  It will allow the user to view part and vehicle images for the currently loaded part at a glance.  The dialog is the same one that has been in use on the search screen since version 1.  The user may position the dialog on another monitor or in unused space.  The dialog is automatically hidden if the user goes to another screen.
* Removed: (case 17986) parts on teardowns were inheriting the vehicle's categorySince vehicle category lists don't necessarily match part category lists, this was causing issues where parts were saved with invalid vehicle categories.
* Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
 
* Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
==Vendor==
* Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialogThe default is "Ctrl + P".
* Fixed: (case 17816) if the user doesn't have permission to edit attachments, they'll now correctly still be able to copy the image to the clilpboard.
* Added: new tool tips for all header controls.
* Changed: save and new as well as preview and next result buttons have been re-activated.
* Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
* Changed: buttons at the top of the screen have been standardized to be more like the customer screen.
* Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
* Changed: standardized all the "do you want to save" prompts to match the customer screen as well as other screens.
* Added: (case 3886) when the user saves a vehicle, whole unit records now correctly save changes to year, make, model, VIN, body style, etc.
* Added: gridlines to the vendor catalog page.
* Added: the vehicle's whole unit now correctly copies the user status, similar to the vehicle status, which was already working.
* Added: price class and purchase class dropdowns now have auto-complete.
* Fixed: (case 19419) the local sales/usage column in the vehicle bid/teardown area was always 0.
* Added: the price class area has been made easier to understand (labels reworded, etc).  Also, since one of 2 sets of multipliers are active at a time, the currently active multipliers are now bolded.
* Added: (case 17595) as part of saving new teardown component items, the user is warned if the tag #'s they enter match any existing items in inventory.
* Added: (case 12538) there are now 2 'recalculate inventory prices' buttons.  One that recalculates prices for all inventory associated with that purchase vendor, and another that affects everything associated with the current price class. These allow the user to refresh the inventory prices based on the current price class (useful for when the price class gets modified or a different price class is chosen).
* Added: (case 6656) whole units now are always created as 'single quantity items'. This can be manually overridden on the parts screen, but this should be correct for all cases.
 
* Added: parts created on a teardown now are created as single quantity items if the quantity of the item on the teardown is 1 or less.  THis should cover the default case, where most vehicle parts only exist in one place at all stores.  For any parts where this is not true, they will have to be edited on the parts screen.
==Vendor List==
* Fixed: a possible infinite loop that could occur when the user attempted to add another bid when the current bid's name ended in "(1)", as it was being interpreted as -1 instead of 1.
* Fixed: next and previous customer functionality works again (buttons to scroll through search results on vendor screen).
* Added: (case 18391) columns to the bid document list:
** Created By (set automatically when bid is created)
** Closed by (set automatically during accept/reject)
** Closed date (set automatically during accept/reject)
** Assigned to (set with a new dropdown of user names)
* Fixed: an issue where vehicle bids were no longer saving a 'last modified' time.
* Fixed: sorting by the 'date' column should now work correctly, no matter the user's locale date format.
* Added: (case 18987) a store-specific "Minimum gross margin" value on the bid screen.
* Added: a maximum bid amount based on the minimum gross margin.
* Changed: moved various controls around in order to ensure that all controls are visible at minimum resolution.
* Fixed: (case 19950) part type column in the bids/teardown list is now sortable by part type name.
* Added: made sure that part types in the bid/teardown list order by part type # if they all have the same cost impact (items with high cost impact will still be at the top).


==Warehouse Management==
==Warehouse Management==
* Fixed: (case 17741) an issue where the count sheet would be blank when printed from the warehouse management screen.  This was due to a bad part type argument.
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
 
* Changed: (case 19551) 'found' items now show an approximate cost impact in grey (similar to how vehicle items were shown in grey before). This is to represent the fact that 'found' items now sometimes come back in at the cost that they were last written down at (when possible).  Since this is based on the availability of previously written down inventory, it is only an approximation, but is probably more accurate than always showing $0 like before.
==Work Clock==
* Fixed:(case 18537) a bug where complaint, cause, correction or internal notes with new lines could break the entire page.
* Changed:(case 18481) Changed the job list page so you can clock in or out of jobs without going to the job detail page.
* Changed:(case 18415) Previously, only users flagged as workers could log into work clock. Now, everyone can. Only users flagged as workers can see the job list page. Workers now automatically go to the job list page after logging in.
* Added:(case 1759) Clocking out of a job now also clocks you out of the associated activity.
* Added:(case 1759) support for clocking out of activities and having it automatically clock out of sub jobs
* Changed: The job name and description are now headers directly below the main title. Previously they were below the complaint, cause and correction fields which are quite large.
* Added: (case 18116) Work Clock should now redirect the user back to the main store selection page if the php session expires.


==Work Orders==
==Work Orders==
* Added: (case 17627) the "Enforce Location Hierarchy" setting now correctly uses the inventory store instead of the store the user is logged into.
* Fixed: all options in the right click menu will no correctly show the user's current key binding.
* Fixed: a possible bug that could be caused by building a job from a template that had parts on itEach job part's behind the scenes ID was being assigned from the template, which could cause collisions once a template was used more than once.
* Added: (case 18825) when an internal WO is saved, finalized, or voided the gl transaction now uses one of the new types "Work Order In Progress", "Work Order Finalized", and "Work Order Voided".  External WOs will use the same "Work Order In Progress" and "Work Order Voided" type, but they are finalized as part of "Sales Order Finalized".
* Fixed: an issue where doing a serialized assembly breakdown where the assembly was not destroyed would cause the serial # to be marked as 'Consumed' even though it was not consumed.
* Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into oneThis change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
* Fixed: an issue where the locations of an item would not be handled correctly if the user did an assembly breakdown where the assembly was not consumed.
* Fixed: If the user sent search results from search to the current WO (without clicking the add item button first), if there were items loaded on the job, they would be replaced by the results.
* Fixed: an issue where serialized assembly breakdowns that did not consume the assembly were not correctly adding the assembly to the job, causing no cost to be distributed and the locations to get messed up.
* Fixed: several situations where sending multiple search results to the job on the current WO would load all items onto the same line, causing only the last one to be shown.
* Added: a temporary popup to warn the user when they do an assembly breakdown and the part is not consumed that the location of the part may change to the default Work order production location.
* Fixed: (case 19180) an issue where items deleted off of a job could still cause a "Warning: it appears that the item '<this item>' is already on the WO, would you like to continue adding it again?" popup to appear.
* Added: (case 11701) 2 new permissions for whether the user can change filled out values for required/non-required options.  These permissions will default to on for any users who could previously edit work orders to emulate previous behavior.
* Fixed: (case 2401) if the user unchecks the 'override cost' button, the cost value will now go back to the correct calculated average cost instead of $0.
* Added: (case 11701) the permission for whether a user can change filled out non-required options now applies to filling out recipes on a WO.
* Fixed: a reversion in one of the recent versions where the context menus in the parts list stopped working.
* Added: non-stocked items now show N/A in the availability.
* Fixed: an issue where clearing a WO wouldn't refresh the job list footer totals.
* Added: the taxable checkbox now defaults to checked for empty lines.
* Added: when doing an internal WO, the WO master part list now has an attention column similar to many other document lists.
* Added: price/quantity now defaults to $0.00/1 for empty lines.
* Added: master part attention icons for empty item and 'insufficient serials selected'.
* Fixed: (case 17544) if the user enters a pure misc item (description only), the quantity/price/etc will not be lost when the user enters a description.
* Added: (case 6656) master parts now have an attention icon for when a build order would exceed the maximum quantity of a single quantity item.
* Fixed: (case 18184) deleting an item with an inherent core charge would ask the user to delete more than once.
* Added: pop-up on save regarding single quantity items having their quantity driven above 1.
* Fixed: (case 18184) an issue where replacing an item on a WO would ask the user if they wanted to delete the previous item.
* Performance: WO save/refresh process now runs a single query to refresh GL info instead of one query per master part.  This should make saving WOs with many master parts much faster.
* Fixed: an issue where replacing an item with a new item that had an inherent core charge wouldn't load the core charge correctly if it wasn't the last line on the job.
* Performance: various things are only calculated when the user changes values in the work order master part list, instead of just when they tab around.
 
* Fixed: (Case 19722) potential crash when saving a WO where one or more core charges were ordered to be 'before' the item they are attached to.
==General/Controls==
* Fixed: (case 19971) an issue where loading a WO template would not correctly load up non-stocked items that were saved on that template.
* Fixed: (case 17707) a crash that would be caused when hitting the up arrow in an advanced combo box when nothing was selected.
* Fixed: non-stocked items added to jobs from a template now correctly get a storeid, keeping them from showing the "Empty" icon.
* Fixed: an issue where paging combo boxes weren't correctly 'going to a page' during setting initial text.
* Fixed: several issues where inherent or dirty cores added from a template would not have the correct lookup column.
* Fixed: (case 17672) an issue where deleting all items from a list could leave dead whitespace in the list when new items are loaded back in.
* Fixed: an issue where a variable was not initialized, leading to somewhat random behavior on ITDateTimeCtrl's where their style was set to date and time.
* Fixed: an issue where ITDateTimeSetting::Reset was working inconsistently and could create an COleDateTime that was invalid.  This lead to inconsistent behavior in some date/time pickers.


= Release Candidate Change Log =
= Release Candidate Change Log =
Line 317: Line 374:
=Changelog Archives=
=Changelog Archives=


* [[ITrack/Enterprise/Changelog Version 11|Version 11]]
* [[ITrack/Enterprise/Changelog Version 10|Version 10]]
* [[ITrack/Enterprise/Changelog Version 10|Version 10]]
* [[ITrack/Enterprise/Changelog Version 9|Version 9]]
* [[ITrack/Enterprise/Changelog Version 9|Version 9]]

Revision as of 10:38, 3 May 2016

ITrack/Enterprise/Release Candidate Warning: This page is 44 kilobytes long; some browsers may have problems editing pages approaching or longer than 32kb. Please consider breaking the page into smaller sections. Bold textItalic textInternal linkExternal link (remember http:// prefix)Level 2 headlineEmbedded fileFile linkMathematical formula (LaTeX)Ignore wiki formattingYour signature with timestampHorizontal line (use sparingly)

Release 12.0

Highlights

  • Added: all print jobs, successful or failed, now get put into the report print queue (this can be reviewed on the report viewer screen). All print errors can be reviewed here, print jobs can be reprinted/retried, and total execution time can be reviewed. This will help improve print speeds in the future.
  • Improved: all print previewing has been improved. Cancelling/reprinting a preview now happens faster. All errors are reported in the standard ITrack error dialog. All print previews now go into the print queue.
  • Added: reports in the report viewer can now be marked as 'favorites'. This is a per-user setting so that each user can remember the reports they often print.
  • Added: various improvements to the report viewer screen's presentation.
  • Added: whenever the user performs an advanced print operation, they can easily choose print quantity as well as whether they'd like to print the job or email/save a pdf (email/save require the advanced print server solution).
  • Added: the parts and vehicles screens now show a floating attachment preview dialog. With this, the user can easily view images for the current part or vehicle without having to go to the attachments page. This popup can be located on a second monitor if the user wishes.
  • Added: there is now a global hotkey (editable in the configure->hotkeys dialog) that, when held down during a print job, will pop up the advanced print dialog. This makes changing print quantity or emailing any print job easy.
  • Changed: the way accounting is saved has been changed to make gl reports clearer.
  • Added: each store can now have a remittance address in addition to its street address.
  • Added: the returns dialog on the sales order screen has been merged with the one on the purchase order screen so that each area got all the benefits the other had.
  • Added: sales orders now allow the user to specify a reason for the return.
  • Changed: many screens got adjusted so that whether the user has done a normal search or a location specific search, results are sent to other screens in a consistent way.
  • Added: inventory can now be specified as single quantity items. In the future, this will signify items that cannot exist at multiple locations.

Tools/Controls

  • Performance: upgrades to our collections that (in some cases) eliminate as much as 85% of the time spent in some loops.
  • Added: support for icons on 'push-like' buttons.
  • Added: support for typeable columns in lists can now support a 'maximum length' for the data that the user can enter. If the user enters more than this, they hear a beep and are stopped.
  • Performance: formatting of list text has been sped up somewhat.
  • Added: a shared city/state/zip field group to consistently handle all areas where these linked fields should look one another up.
  • Fixed: an issue where attachment interfaces would not lock down correctly in some scenarios. Also fixed an issue where the public checkbox wouldn't work correctly if there was more than one check in the list.
  • Fixed: an issue where custom "ok" message boxes wouldn't have their custom button text shown.
  • Fixed: an issue where times containing midnight might save incorrectly. Also an issue where date/times might save as 1899-12-30
  • Added: doubleclicking an item in a tree control now toggles the expansion of that item.
  • Fixed: an issue where the list footer would become invisible in some scenarios.

Accounting

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

Appraisals

  • Changed: (case 19419) by user request, the 'current quantity on hand' retrieved as part of sales appraisals will now limit the matched results to just items that match the category of the current item (if it is filled out). Otherwise, all categories are considered.

Approvals

  • Fixed: (case 18952) an issue where the stock category was not correctly being displayed when price rules were being loaded. The value of All would save but display as Standard on the next load.
  • Fixed: an issue where changing the document type of a price rule was not being saved.
  • Fixed: another issue that was causing part types from being saved on price rules.

Crystal Reports Extension

  • Added: (case 17915) printing reports now logs successful print information as well as errors to the print queue.
  • Added: proper support for 're-printing' items in the report queue. That way, they won't get another entry in the queue.
  • Added: print previewing now inserts an 'in progress' entry in the print queue, which is overwritten up by the report viewer screen.
  • Added: (Case 18265) the 'choose printer' dialog now has the ability to let the user choose to email a report instead, or archive it on the server. In addition, the user can have a print get 'delayed' in the queue if they wish to schedule it for later.
  • Added: the archived reports subdirectory now has a default value per report type. This way, all saved reports will automatically be saved into sorted subdirectories.
  • Removed: if the user performs an advanced print, the windows printer dialog no longer shows up. Instead, we show the ITrack choose printer dialog, which allows choosing to email or archive.
  • Added: (case 18265) a global hotkey that controls whether to automatically show the advanced print options popup during any print. This defaults to ctrl + left click when printing, but can be rebound in the hotkeys dialog.
  • Added: support for auto-complete options in the email dropdown.
  • Added: if the user enters a new email address in the dropdown, future email operations will 'remember' that option.
  • Fixed: newly created report queue entries are now correctly cleaned up, avoiding memory leaks.
  • Changed: reprinting a report queue entry no longer updates the 'created by user'.
  • Fixed: crash that would occur when cleaning up report queue entries.
  • Changed: if the user chooses to email or archive a report, all reporting code is skipped.
  • Added: support for delayed printing and emailing. If a print job is going to be printed in the future, the print operation is skipped and logged in the queue.
  • Changed: the error report field in the report queue can now go up to 1000 characters instead of being limited to the previous 250 characters.
  • Added: there is a new setting ("Printing"->"Advanced print management server installed"). The advanced printing dialog now deactivates various controls if this setting is off. Essentially, any controls that require report commander to be present are disabled.
  • Added: (case 19676) the advanced print dialog now has a quantity edit so that the user can easily change the print quantity without going into the windows printer dialog.
  • Added: report auto-updater now creates new reports with a category of "Report".
  • Added: Configure->reports page now has handling for setting a report category.
  • Fixed: (case 19832) an issue where exporting a report add script with parameter values could cause a query error.

Core Management

  • Fixed: (case 19052) an issue where typing into the part lookup on the customer cores (filter at the top) or returned cores (core bank lookup) tabs, if the user was taken to search, any result they chose would not be returned to the screen correctly.
  • Changed: the part filter field on customer cores has been modified to work more like the lookups on other screens. This should make the usage of the screen more obvious than before.
  • Changed: (case 17587) the document # column in the customer cores tab has been reformatted to match the format of the returned cores tab.
  • Removed: (case 17587) the document # columns no longer show document line item #.

Customer

  • Fixed: (case 18861) an issue where the user could type in an invalid tax item name and the value would not be cleared before saving, leading users to believe a valid value would be saved.
  • Fixed: (case 18861) an issue where no tax item selected was being saved with an invalid value (now it is correctly set to NULL).
  • Added: (case 18825) creating finance charges now falls under a gl transaction type of "Finance Charges Finalized".
  • Fixed: (case 18961) an issue where the Save & New button did not clear the screen after saving, making it seem as though nothing had happened.
  • Fixed: (case 19108) if a new customer was created without the user going to the tax/payment info tab, the default invoice terms would not be saved correctly.
  • Fixed: (case 18794) an issue where hitting Save and Clear on a customer with attachments, then creating a new customer could 'move' those attachments to the new customer.

Customer List

  • Fixed: an issue where searching by customer website would throw a database error.
  • Fixed: (case 18945) a database error that would occur if the user was searching for customers at a specific store ("Customers For All Stores" is unchecked) and they were searching by an address field (due to the recent additions allowing the system to simultaneously search alternate addresses).

Database

  • Added: support for new 'time elapsed' column in the reportqueue table.
  • Added: (case 18727) support for delayed print operations in the print queue (reportqueue.waituntil). There is also now an index on the fields that the report server scripts uses to find printable jobs.
  • Fixed: the triggers and functions that keep locations up to date no longer use a value of -1 to represent 'no location'. This was causing issues on some databases that were in strict mode. Now, the system always uses NULL.
  • Added: (case 18825) several previous gl transaction types have been retired and many new ones have been added. This is part of a push to make gl transactions a descriptive and useful way to review accounting.
  • Removed: the old comments field in gl transactions. It was generally just used for the same purpose that we now use type for.
  • Fixed: (case 18861) customer.taxitemid has been corrected to have a value of NULL instead of -1 for those rows where -1 was being inserted.
  • Fixed: (Case 18852) PO adjustments that were created before version 11 wouldn't show up on their posting correctly anymore because of the innodb changes. This fixes it.
  • Added: (case 18001) salesorderline.customerprice, which is a transactionalized copy of the price the salesman was presented with by default. All historical sales have had their value set retroactively for future reporting.
  • Fixed: (case 19027) the f_invoicepaid function had different versions on different databases. This should standardize and speed up the function slightly.
  • Performance: (case 19032) customer balance calculating functions were being too specific about what index to use. Now, they will use whichever one is best. This showed some minor speed improvements on very large customer activity.
  • Changed: maximum make length increased from 15 to 50 characters.
  • Changed: inventory make length increased to match the 50 character limit of other tables.
  • Fixed: (Case 19047) an issue the user would get a database error when deleting locations.
  • Added: (case 17859) a new permission to control whether the user can print documents that have outstanding price violations. By default, this is on for all users who could normally edit a SO.
  • Added: (case 17070) support for a user-entered 'return reason/code' that can track 'why' an item was returned.
  • Removed: a view that was created for a previous report. It is no longer in use and it not well optimized. All reports should use f_get_attachment_id instead.
  • Removed: (case 3886) the after update trigger on vehicles has been removed. This had been a previous way to keep year, make, model, etc synchronized between vehicle and inventory.
  • Added: (case 6507) a search option to inventorysetting to allow the user to search for parts by the tag # of any collections that item is in. This makes printing tags for all collection members easy.
  • Fixed: (case 17943) selling/deleting a whole unit should reject all open bids. This solves issues where users would accept bids after the vehicle was sold, marking the vehicle as available again. This should trigger if the user sells the whole unit on a SO, consumes it on a WO, or returns it to the vendor on a return PO.
  • Changed: column order rearranged in the inventory table to make more sense.
  • Added: (case 6656) there is now a 'singlequantity' flag on inventory. This flag will track items that should never have a quantity greater than 1 and should never have more than one valid location.
  • Updated: all previous vehicle whole units set to 'Single Quantity' Parts.
  • Fixed: an issue where inventory.isacore allowed NULL.
  • Added: (case 18391) vehicle bids now store an 'assigned to' user as well as the date they were closed and what user closed them. All closed bids have had their date closed set retroactively, where possible.
  • Added: (case 17070) a new table where users can define a list of 'return codes/reasons'. These can be chosen between when performing returns on an invoice.
  • Added: (case 17070) a new permission controlling who can manage return codes.
  • Added: 3 initial return reasons to handle the common cases.
  • Fixed: the right-clicking graphing template has been modified so that if the user uses a string column as the x axis of a scatter graph (but the strings contain numbers), the graph should look correct.
  • Added: (Case 19658) Schema for logging search times to log_search.
  • Changed: (case 19042) the previous part search column "Entered By (user id)" is now no longer searchable and has been replaced with "Entered By User" which allows the user to search by user name.
  • Added: comments to report table columns.
  • Added: new column for tracking a report's category, separate from its type.
  • Added: speed index to the report table based on name.
  • Fixed: (case 12267) an issue where v_pickable_jobpart was not defined correctly, causing most items to be unpickable.
  • Added: (case 19865) report.name is now enforced unique per report type.
  • Fixed: a misspelled column name in a location delete trigger.
  • Fixed: (19810) an issue where several sales order job fields wouldn't aggregate correctly on the totals tab of the transaction list.
  • Added: (case 19467) notes for why a report subscription exists

Deliveries

  • Changed: by customer request, the 'Skip Delivery' button on the picking tab has been renamed to Skip Pick/Delivery to more clearly denote that the items will not be picked.

Ebay Extension

  • Added: (Case 17835) There is now a last updated date displayed on the auctions page of the eBay module
  • Added: (Case 17835) Invoicing from eBay will now create a basic customer record if no customer with a matching email exists and the Setting "Ebay Create Customer" is set to true and receive at least the email from the ebay transaction.
  • Added: (Case 17835) Added a column "Invoiceable" that shows the count of completed transactions with no invoiceids associated. (an invoice id is not added until ebay is closed and re-opened, so this value will not either)
  • Fixed: (Case 17835) Fixed an sql error when updating ebay auctions.
  • Fixed: (Case 17328) Added 'Freight' as a shipping option.
  • Fixed: (Case 17945) Fixed a crash when launching ebay without a user account.
  • Added: (Case 19012) Added a transaction tab
  • Fixed: (Case 19012) Filtering now works correctly.
  • Fixed: (Case 18840) Freight shipping now overrides any cost or free shipping settings
  • Fixed: (Case 19012) Now hiding the ItemID column, since users have no use for it.
  • Fixed: (Case 19012) Initial load speed dramatically improved.
  • Fixed: (Case 19305) Open Screen permission is now correctly followed.
  • Fixed: A query error was corrected regarding invoices.

Common Resources

  • Added: a generalized version of the picture viewer dialog used on search. This will be usable by other screens that would like to show image attachments for parts and vehicles.
  • Moved: the view pictures dialog from search has been moved to common resources so it can be shared between screens.
  • Added: the title text of the pictures dialog is now more descriptive, and shows total number of images in the title.
  • Changed: the last location of the pictures dialog is no longer stored in the ini file.
  • Added: the picture view dialog now uses a type of image cache that holds onto previously loaded file information. This should make load operations faster if the user goes back and forth between items.
  • Fixed: the page up/page down buttons seemed to do the opposite of what was expected when scrolling through images.
  • Added: support for showing images on unsaved parts and vehicles.

Global Settings Extension

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

Home

  • Fixed: an issue where, if WO type of "All" wasn't first in the list alphabetically, it would not correctly look at all types.
  • Changed: (case 18791) the work orders tab now uses tagnumber instead of vendorcode and partnumber for all work order master parts. This should resolve issues where some users would get inconsistent labeling for master parts
  • Added: tooltips to all columns headers as well as the body of the work orders tab.
  • Added: the user can now click into the description and notes fields on the work orders tab, making it easier to read multiline entries and copy text out.
  • Added: (case 16389) 2 new columns to the work order tab: % Done and Job Status.  % Done shows a value that represents what % of the jobs on the WO are now at status Done. The Job Status field shows the status detail of all jobs on the WO. These fields show VOID if the WO is void and the status shows as FINALIZED if the WO is closed. In all other cases, the columns receive the most appropriate status colorization to match the colors used for statuses on the WO screen.

ITrack Online

  • Added: any javascript errors encountered on any pages being navigated to will now be automatically suppressed on client systems, but not in testing.

libITSQLFramework

  • Fixed: the timestamps in the query log now use local times instead of UTC times. Also, the values are formatted a bit more logically.

Login

  • Fixed: a minor flickering issue when opening up the configure->users dialog causing it to load slower.

Options

  • Added: the configure->Stores dialog now has an area for a remittance address and phone #. By default, this is the same as the street address of that store, but the user can make them differ. Soon, this information will show up on billing statements and invoices.
  • Added: the configure stores dialog now uses a state auto-complete to populate the state dropdowns, which will speed up loading slightly.
  • Added: changes to configure stores dialog to copy address information to the remittance area if the 'use same address' checkbox is checked.

Parts

  • Fixed: (case 18858) an issue where the parts screen was setting locationid as part of its insert/update queries, when this field was supposed to be omitted. It is handled elsewhere, and this was causing errors on databases with strict mode on (as virtual locations used a value of -1 which is no longer an allowed value.
  • Fixed: (case 6663) the refresh button on the parts transactions tab now refreshes the transaction cache, so any newly created transactions will be found. For speed purposes, the previous/next page buttons will not rebuild the cache.
  • Performance: the process of building the cache of transaction history for the transactions tab has been sped up. This will make loading this information faster, especially on slower networks.
  • Changed: attachment management has been upgraded to a newer methodology that will be compatible with a new picture viewer pane.
  • Changed: several things about the header of the parts screen have been modified to introduce consistency between the parts and vehicles screens.
  • Removed: the advanced page no longer checks to see if the enter key should work like tab. This is to establish consistency with other areas.
  • Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screen. It will allow the user to view part and vehicle images for the currently loaded part at a glance. The dialog is the same one that has been in use on the search screen since version 1. The user may position the dialog on another monitor or in unused space. The dialog is automatically hidden if the user goes to another screen.
  • Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
  • Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
  • Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialog. The default is "Ctrl + P".
  • Added: new tool tips for all header controls.
  • Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
  • Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
  • Added: (case 6507) a button to the links page that performs a search for all members in the current collection. This makes printing tags for all collections members easy.
  • Fixed: an issue where, if there was an error while saving collection components, the user might not be able to correct the issue and save again.
  • Added: (case 17595) as part of saving new collection component items (such as for assemblies), the user is warned if the tag #'s they enter match any existing items in inventory.
  • Fixed: an issue where inventory tagnumber was saving only 20 characters, when it was supposed to be 50 characters.
  • Added: (case 6656) a new checkbox on the advanced tab called "Single Quantity Part". Parts with this checked attempt to enforce that their quantity never goes above 1 and they never have more than 1 valid location. This represents 'discrete' parts that only exist once in any store (such as vehicles and most parts created from teardown).
  • Added: (case 6656) 2 new errors on save if the user has 'Single Quantity Part' checked and the quantity on hand is greater than 1 or there is more than one valid location.
  • Added: (case 6656) any 'new' collection components created as part of a collection (usually an assembly) will create all 'child' parts as 'Single Quantity Items' if their quantity is 1 or less. This should make it so that most of these parts won't ever have to end up in a state where they have multiple locations when that doesn't make sense for such 'simple' parts.
  • Fixed: (case 19678) an issue where Q&A on new serials was not saving correctly.
  • Fixed: (case 19663) an issue where clearing the parts screen after loading a part with a single serial # would not clear the "Serial #" field on the part info tab.

Part Configuration

  • Fixed: a possible database error that could happen if the user entered a make longer than the maximum allowed make.
  • Fixed: the user could not 'uncheck' the start/end date on part type messages.

Payment Entry

  • Added: (case 18825) when payments/discounts/credits are saved, they are now put under a GL transaction type of 'Payment Batch Updated'.

Print Queue

  • Fixed: (Case 17810) All errors are now written to file and an exception has been added for writing errors to the database.
  • Fixed: (Case 18665) Added timers, written to db. It should also update lastsenton.
  • Fixed: (Case 18160) Now has an enterprise handler that should pull in printers using f_get_setting.
  • Fixed: (Case 19360) Syntax errors and handling for when no parameters are passed.
  • Fixed: (Case 19360) removed an errant else clause possibly causing failure loops
  • Fixed: (Case 19360) execution time now correctly quoted.
  • Fixed: (Case 19360) PrintQueue now handles missing reports instead of crashing
  • Added: (Case 18528) error reporting emails
  • Fixed: (Case 18430) Now enabled report commander's native error logging. -v flag effects it. To set a custom logfile, a new config setting 'reportcommanderlogfile' exists.
  • Fixed: Printing reports no longer makes a pdf
  • Fixed: Saving files to folders no longer deletes them
  • Fixed: (Case 18727) Now supports a waituntil date/time which specifies when a report should print.
  • Fixed: (Case 19605) Printing to the selected printer now works for reports that have No Printer checkbox checked in the crystal report file.
  • Fixed: (Case 19718) Python now corrects the product config setting from ITrack Enterprise to ITrackEnterprise
  • Fixed: (Case 19406) We now group_concat on | for parameters to avoid splitting off and ignoring subquery parameters.
  • Fixed: (Case 19484) Printqueue now uses f_set_setting to let the other products know that the Advanced Print Management Server is installed.
  • Added: a bunch of comments to make PrintQueue.py simpler to understand, as well as a convenience method for query error handling.
  • Fixed: (Case 19850) Added some error handling for when queries return no results.
  • Added: (Case 19850) Added a setting emailerroron, which when set to False will turn off email error reporting
  • Fixed: (Case 19850) Allowed not specifying a printer.
  • Fixed: (Case 19878) Fixed another crash

Purchase Orders

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

Report Viewer

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

Sales Orders

  • Changed: default document type has been changed from Quote to Invoice. This won't affect existing users, just new ones.
  • Changed: (case 18354) the way 'default' document types work has been reworked. There is still a setting that controls this value, but it is no longer saved when the user closes the screen. Now, the user must choose to set it manually by right-clicking on the document type dropdown.
  • Fixed: the 'send items to location map' option in the right click menu will now show the user's current key binding.
  • Changed: the email to salesman and email to customer options now print an invoice to PDF and emails it instead of building a text email. This will be much more accurate to the print outs.
  • Added: the context menu (right click) now has options for emailing to customer and emailing to salesperson.
  • Added: (case 18825) when an invoice is saved, finalized, reopened, or voided, all attached payments and work orders will now have their accounting inserted under the same GL category as the invoice itself instead of separate ones.
  • Changed: accounting now happens under the gl transaction types of "Sales Order Updated", "Sales Order Finalized", "Sales Order Reopened", and "Sales Order Voided" to make the transaction log easier to understand.
  • Added: (case 18001) the 'customer price' the salesman is presented with is now saved with all lineitems for historical reporting.
  • Fixed: saving new lineitems will now be slightly faster, especially on very slow connections.
  • Fixed: (case 19013) an issue where loading an item onto a SO without any locations could cause the part to be opened on the parts screen instead if the search sent it over by location. Now the item will be loaded onto the SO with no location.
  • Added: (case 17859) support for a new permission to control whether the user can print documents that have outstanding price violations. By default, this is on for all users who could normally edit a SO.
  • Changed: the returns dialog on the SO screen now shares resources with the PO return dialog, this should help them have the same features in the future.
  • Added: by user request, the SO returns dialog now has many features that were only in the PO return dialog up until now:
    • Date range filter
    • Remembering what documents were expanded when the user changes pages or filters
  • Added: SO return dialog now has a document # filter edit. The user can enter a document # (wildcards supported), or enter something in the "store #-document #" format.
  • Added: (case 17070) when the user opens the perform returns dialog, there is now a 'reason for return' dropdown. The user will be shown all previous reasons in an auto-complete, but they can enter new reasons as well. This 'reason' will be applied to all items returned at that time and is remembered for future returns.
  • Added: if the user opens the edit item dialog for an item and that item is a return, the return reason will be shown in a special auto-complete dropdown (and can be modified). This is useful for situations where many items need to be returned, but only one or two have a different 'reason'.
  • Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into one. This change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
  • Added: (case 17070) a new configure->Documents->Return Codes configuration dialog. Users with the appropriate permission can open this dialog to add/edit/remove 'return codes/reasons' which can be chosen between when performing a return on an invoice.
  • Changed: (case 17070) the 'return reason' in the perform returns dialog (as well as the edit items dialog) now load entries from the new returncode table. In addition, they now display both the code and name of the return reason. This should give administrators a tighter control over what options can be chosen by users when performing returns.
  • Added: return reasons that the user can choose between now show in 'rank' ordering. This allows yards to customize the order that return reasons are displayed in (instead of alphabetical).
  • Added: the return dialog now has a Configure button next to the return reasons dropdown. Users with permission to manage this list can click this button to be taken to the configure->return codes dialog.
  • Added: configure->return codes now has support for showing which items are in use, and deleting an in-use return code will prompt the user to choose a replacement.
  • Fixed: (case 19505) an issue where, if an invoice had payments on it that had a payment method that was not a valid option for the current customer, nothing would show in the payment method column.
  • Added: (case 19551) when items are sent to a inventory adjustment document from warehouse management, 'found' items now attempt to find previously written down documents to 'return'. Essentially, if the item in question was ever written down with sufficient quantity, that original write down cost will be used instead. If no appropriate write downs are found, then the item is 'found' with a cost of $0 like before. This helps with yards who would like 'found' inventory to not come back in at $0 average cost.

Search

  • Added: (case 8668) if a search returns no results, the popup now has a 'search on HTP' button which will attempt to perform the same search (when possible) on HeavyTruckParts.net.
  • Fixed: all options in the right click menu will no correctly show the user's current key binding.
  • Fixed: (case 18899) a crash that could occur if the user deselected all vehicles and then clicked on any header to sort the list. This was a long-occuring bug that had been difficult to track down, credit to Ryan@Active for reproduction information.
  • Changed: when the user sends search results to other screens, they are now sent in just a single format, instead of 3 or 4. This will make communication between screens easier and more consistent, but breaks compatibility with old versions of other screens.
  • Removed: some code that might re-order results being sent from search to other screens. Now items should arrive at other screens in the same order they were viewed on search.
  • Moved: the picture viewer dialog that the screen used has been moved to common resources to be shared with other screens.
  • Changed: (case 1545) the view pictures dialog is now shared with the parts and vehicles screens. For this reason, some adjustments have been made to the icons and title text to be more useful.
  • Added: any images shown in the image viewer dialog are now cached locally, so going quickly between parts will force items to be loaded the first time, but on subsequent visits, the images will already be available. This should make going back forth between search results with images faster, especially on slow connections.
  • Added: (Case 19658) Search logging now records execution time, so we set it here.

Transaction List

  • Fixed: all options in the right click menu will no correctly show the user's current key binding.

Vehicles

  • Changed: the user interface of the main vehicles screen has been significantly reworked. Its layout should now much more correctly match the parts screen.
  • Fixed: an issue where the tracking # field at the top of the screen was not emptying when clearing the vehicle.
  • Added: (case 1545) this screen now displays a non-modal picture dialog when the user opens the screen. It will allow the user to view part and vehicle images for the currently loaded part at a glance. The dialog is the same one that has been in use on the search screen since version 1. The user may position the dialog on another monitor or in unused space. The dialog is automatically hidden if the user goes to another screen.
  • Added: the screen will remember if the user wishes to show the picture dialog, and automatically show/hide it the next time the screen is opened.
  • Added: The user can toggle whether the pictures dialog is visible using the new 'toggle' button at the top of the screen.
  • Added: user hotkey (can be customized in configure->user hotkeys) for toggling the state of the picture dialog. The default is "Ctrl + P".
  • Added: new tool tips for all header controls.
  • Added: if the user adds/removes/edits any attachments on the current record, the picture dialog is refreshed.
  • Fixed: an issue where image ordering might be overwritten the next time the user opened a part.
  • Added: (case 3886) when the user saves a vehicle, whole unit records now correctly save changes to year, make, model, VIN, body style, etc.
  • Added: the vehicle's whole unit now correctly copies the user status, similar to the vehicle status, which was already working.
  • Fixed: (case 19419) the local sales/usage column in the vehicle bid/teardown area was always 0.
  • Added: (case 17595) as part of saving new teardown component items, the user is warned if the tag #'s they enter match any existing items in inventory.
  • Added: (case 6656) whole units now are always created as 'single quantity items'. This can be manually overridden on the parts screen, but this should be correct for all cases.
  • Added: parts created on a teardown now are created as single quantity items if the quantity of the item on the teardown is 1 or less. THis should cover the default case, where most vehicle parts only exist in one place at all stores. For any parts where this is not true, they will have to be edited on the parts screen.
  • Fixed: a possible infinite loop that could occur when the user attempted to add another bid when the current bid's name ended in "(1)", as it was being interpreted as -1 instead of 1.
  • Added: (case 18391) columns to the bid document list:
    • Created By (set automatically when bid is created)
    • Closed by (set automatically during accept/reject)
    • Closed date (set automatically during accept/reject)
    • Assigned to (set with a new dropdown of user names)
  • Fixed: an issue where vehicle bids were no longer saving a 'last modified' time.
  • Fixed: sorting by the 'date' column should now work correctly, no matter the user's locale date format.
  • Added: (case 18987) a store-specific "Minimum gross margin" value on the bid screen.
  • Added: a maximum bid amount based on the minimum gross margin.
  • Changed: moved various controls around in order to ensure that all controls are visible at minimum resolution.
  • Fixed: (case 19950) part type column in the bids/teardown list is now sortable by part type name.
  • Added: made sure that part types in the bid/teardown list order by part type # if they all have the same cost impact (items with high cost impact will still be at the top).

Warehouse Management

  • Fixed: all options in the right click menu will no correctly show the user's current key binding.
  • Changed: (case 19551) 'found' items now show an approximate cost impact in grey (similar to how vehicle items were shown in grey before). This is to represent the fact that 'found' items now sometimes come back in at the cost that they were last written down at (when possible). Since this is based on the availability of previously written down inventory, it is only an approximation, but is probably more accurate than always showing $0 like before.

Work Orders

  • Fixed: all options in the right click menu will no correctly show the user's current key binding.
  • Added: (case 18825) when an internal WO is saved, finalized, or voided the gl transaction now uses one of the new types "Work Order In Progress", "Work Order Finalized", and "Work Order Voided". External WOs will use the same "Work Order In Progress" and "Work Order Voided" type, but they are finalized as part of "Sales Order Finalized".
  • Changed: to eliminate errors caused by the user sending part search results to screens with and without the "group by location" checkbox checked, the two types of messages have been merged into one. This change should be transparent to the user, but it hopefully eliminates cases where screens were handling these 2 cases very differently.
  • Fixed: If the user sent search results from search to the current WO (without clicking the add item button first), if there were items loaded on the job, they would be replaced by the results.
  • Fixed: several situations where sending multiple search results to the job on the current WO would load all items onto the same line, causing only the last one to be shown.
  • Fixed: (case 19180) an issue where items deleted off of a job could still cause a "Warning: it appears that the item '<this item>' is already on the WO, would you like to continue adding it again?" popup to appear.
  • Fixed: (case 2401) if the user unchecks the 'override cost' button, the cost value will now go back to the correct calculated average cost instead of $0.
  • Fixed: a reversion in one of the recent versions where the context menus in the parts list stopped working.
  • Fixed: an issue where clearing a WO wouldn't refresh the job list footer totals.
  • Added: when doing an internal WO, the WO master part list now has an attention column similar to many other document lists.
  • Added: master part attention icons for empty item and 'insufficient serials selected'.
  • Added: (case 6656) master parts now have an attention icon for when a build order would exceed the maximum quantity of a single quantity item.
  • Added: pop-up on save regarding single quantity items having their quantity driven above 1.
  • Performance: WO save/refresh process now runs a single query to refresh GL info instead of one query per master part. This should make saving WOs with many master parts much faster.
  • Performance: various things are only calculated when the user changes values in the work order master part list, instead of just when they tab around.
  • Fixed: (Case 19722) potential crash when saving a WO where one or more core charges were ordered to be 'before' the item they are attached to.
  • Fixed: (case 19971) an issue where loading a WO template would not correctly load up non-stocked items that were saved on that template.
  • Fixed: non-stocked items added to jobs from a template now correctly get a storeid, keeping them from showing the "Empty" icon.
  • Fixed: several issues where inherent or dirty cores added from a template would not have the correct lookup column.

Release Candidate Change Log

Changelog Archives