ITrack/Enterprise/Changelog Version 4.0

From ISoft Wiki
< ITrack‎ | Enterprise
Revision as of 14:15, 30 January 2014 by MarkHardisty (talk | contribs) (Created page with "=Release 4.0= General Notices/Concerns: * Primary locations have been merged with secondary locations. Previously, they were stored in the inventory table, but that was creating...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Release 4.0

General Notices/Concerns:

  • Primary locations have been merged with secondary locations. Previously, they were stored in the inventory table, but that was creating a lot of issues where the scanner, reports, and other behavior was more difficult because it had to manage both the primary and secondary locations. Now, the primary location is simply the 'top' secondary location. Queries have been written to move all the data over so that this process should be seamless to the user, and the parts screen attempts to deal with any corner cases. However, there is now the possibility (from a data perspective) that there are inventory records with no locations whatsoever.
  • WO accounting has been very close to completely rewritten, for those yards that use GL entries for WO accounting. Testing showed this as fixing many problems, but its worth paying attention to. Part of this incorporates introducing the regenerative accounting system that the SOs screen has been using for awhile. However, since we're now attempting to regenerate historical accounting, it was necessary to make sure that all gl accounts were properly transactionalized on the WO document. Since we didn't have this historical data previously, a current snapshot has been taken. Unfortunately, its possible that a yards' configuration has changed since a WO was accounted, leading to inaccuracies which could cause WOs to get 're-accounted' when they get opened and resaved.
  • Enterprise now requires that events be turned on in the database.

Common Resources

  • Added: several new icons, an 'up and left' and a 'down and right' icon. These are in use for suggesting tree behavior to the user.
  • Added: the choose locations dialog now shows picked quantity at each of the document locations.
  • Added: new attachment dialog to common resources, including new dependencies.

Credit Approval

  • Changed: money values will now be displayed in the user's currency locale format.

Crystal Reports Extension

  • Fixed an error that would always occur if they user unchecked the "Remember my Selection" checkbox.

Customer

  • Changed: If you lack permissions to edit customers, the edits with customer address information will be read-only but not grayed out.
  • Changed: money values will now be displayed in the user's currency locale format.
  • Fixed (case 8566): modifying an existing payment no longer updates the gl account that that payment hits. This was causing old payments that were getting modified to update their account to a new bank account instead of using the historical account.
  • Added (case 8566): the AR account at the time of a payment being saved is now captured and saved with the payment. AR rarely changes, but it will allow more accurate historical accounting recreation.
  • Added: Now show check/auth # in the Invoice History list for payments. I decided to add a new column for this. case 8558

Customer List

  • Search and Show All buttons are combined now.(empty search criteria does show all)
  • Search and Show All now both trigger the wait cursor, before it was only show all.
  • Button text automatically updates as they type in the search field
  • Alt key shortcut is now the same, since its the same button(always alt+s)
  • Clear button now has an icon
  • Updated status bar messages

Data Management

  • Fixed: an issue where the number of columns that were inserted/updated could incorrectly show as 0 when the user does an import.

Database

  • Added: (case 8385) a new permission for restricting access to the location dropdowns on the picking tab of the deliveries screen. This permission has automatically been granted to anyone who could open the screen.
  • Removed: a couple old queries that were causing a duplicate entry in inventorysetting, which could cause a database error related to sell price class.
  • Added: a fix for the above duplicate entry error, rolled out as database update 243.
  • Added: there is a new column, inventorylocation.permanent, which will control whether a location can be deleted automatically when its quantity reaches 0.
  • Changed: all existing primary locations have been moved into the inventorylocation table as the highest rank location. They were also all marked as permanent automatically.
  • Deprecated: inventory.holdquantity, as primary locations will be managed in inventorylocation now.
  • Changed: f_quantity_at_main, f_quantity_available_at_main, f_quantity_at_location have all been updated to realize that primary locations are now the highest rank secondary location.
  • Removed: unnecessary primary location handling from the functions f_refresh_inventory_location, f_move_inventory_with_allocations, f_adjust_inventory_location.
  • Changed: the Location and Location # inventorysetting rows have been renamed to Primary Location and Primary Location #, and are no longer searchable and are hidden.
  • Added: new inventorysetting row, Locations, which will allow the user to easily search all secondary locations.
  • Removed: Location (Primary) search module, and renamed the Location (Alternates) search module to just Locations.
  • Removed: f_create_core_inventory no longer does anything with primary locations.
  • Added: for speed purposes, the notes and description fields now have indices, to make non-fulltext searches against them quicker.
  • Added: for speed purposes, all 4 of the flex fields now have indices on them for faster searching.
  • Added: for speed purposes, the vehicles table now has an index on make and model, making some part searching by make and model quicker.
  • Removed: all 4 of the deliverable document views no longer reference primary locations, as it was unused.
  • Added: new function, f_verify_location_integrity, which will ensure that the first location gets copied into inventory.location, and it also makes sure that location quantities add up to inventory.location. If they don't, it puts the difference into the location specified in the variance location setting.
  • Added: f_adjust_inventory_location now calls f_verify_location_integrity at the end.
  • Fixed: f_refresh_document_location_allocations no longer references the deprecated primary location.
  • Added: the global event handler has been enabled, as we are now going to add several EVENTs to the general schema.
  • Added: there is now an event that is run at 12:01 AM every night, which recalculates hold quantities for all documents that expired in the last week. This is so that, in case the server is off for a night, we can make sure the hold quantities get recalculated.
  • Fixed: f_vehicle_cost now only sums up work order master parts on WOs that are internal. Thanks go to Chad@VHI for this suggestion.
  • Added: (Case 8518) An index to jobpart to increase parentjobpartid lookup speed.
  • Fixed: f_verify_location_integrity now handles situations where a part has no locations correctly.
  • Added: p_get_location_subtree, which is required for some operations on the location screen.
  • Added: labor, work in progress labor, EPA charges, and shop fees now all have columns in the job table for transactionalizing gl account ids for historical accounting purposes, this way accounting can be retroactively rebuilt. All of these fields are being populated with current values, since we can't know what the values were historically.
  • Added: work order master parts now transactionalize the 4 accounts hit during WO finalization for retroactive accounting.
  • Added: payment.arglaccountid, which will store the gl account of the AR account at the time of finalization for retroactive accounting.
  • Fixed: an error that was keeping f_workorder_saved from running.
  • Added: an index on the message table that existed in different formats on different databases. This will standardize the index for faster reporting.
  • Added: (case 4701) the function that marks items as delivered now calls an optional, yard-specific function for seeing if specific items should skip delivery (auto-reject). By default, no items are auto-rejected from delivery.
  • Fixed: (Case 8581) a bug where the Inventory import would update old inventory items even though the input data did not match. The imported now properly creates new inventory for those items.
  • Fixed: (Case 8869) an issue where bad location data on a deliverylinehistory record could cause double-allocation on picking.
  • Fixed: (Case 8869) an issue where a trigger was not properly setting the destination location of document lines.
  • Added: an index that will improve the speed of loading sales orders.
  • Added: Speed improvements to the Vehicle Make - Model and Flex Fields search modules.
  • Removed: as per customer request, f_adjust_inventory (called by documents that affect inventory averagecost and quantity) no longer sets the cost on parts in some circumstances. It was decided that, since it only fires in very focused circumstances, it is confusing, and possibly always a bad idea to automatically change a user set field without confirmation, especially one that affects inventory valuation.

Deliveries

  • Added: (case 8385) a new permission has been added for restricting access to the picking staging location dropdowns. This permission is refreshed whenever the user changes the store dropdown on the screen.
  • Removed: an unnecessary reference to the primary location of deliverable items.
  • Fixed: an issue where new delivery history wasn't saving the name of the location an item was moved to when it was picked.

Ebay Extension

  • Made default templates more robust
  • Added Motorcycle Category map
  • Users can now switch between using motorcycle and Car and Truck categories

FIFO

  • Fixed: (Case 8943) a bug where returning an items that used multiple sources when sold would cause a database error.

Graphing

  • Fixed: A bad crash where loading list entries after the first time would cause memory issues.
  • Added: A IDM_UPDATED_GRAPHRUN_CACHE for when the graphrun list is updated (it changes memory addresses, so you have to change your cache pointers if you're using them).
  • Added: Graph forking now works as expected. Forked graphs save but are user-specific and contain timestamps.
  • Changed: Removing the forking checkbox will change your graph from a forked variant to its parent, provided the names match.
  • Fixed: An issue where the order of combo manipulation and saving could result in invalid UI.
  • Added: Requirement that source is always set.
  • Added: Work for a user-facing graphing screen in Report Viewer. The UI and layout and interactivity stuff seems mostly done, next step is how to properly save/run/report these.

Home

  • Added: Totals to each of the four at-a-glance document tabs.

Interchange

  • Once again you can do a Part Search using Interchange & SubInterchange Number.
  • Now, when you click an Interchange Option in the list below, the Interchange & SubInterchange number get put in the edits above. case 8750
  • Clear now also clears the Year field.

Inventory Overview

  • Changed: (case 8349) the store list is no longer a 'sticky' list. Now, the list shows a checkbox that the user can use to choose which stores to show inventory for. This makes deslecting or selecting many stores at once much easier since the user can cause just a single refresh to happen, instead of a refresh on every selected item. The user can easily toggle several checks at once by selecting multiple items and hitting the space bar.
  • Changed: money values will now be displayed in the user's currency locale format.

ITSQLFramework:

  • Added: when the user gets a database error, the system now automatically runs a Rollback operation. This will only affect systems using transactional database engines, but it should keep someone from locking other users out while reviewing an error message.
  • Added: now, if no extension is loaded with a database connection, real SQL errors are shown/reported instead of just pop up message boxes.

Locations

  • Fixed: (case 8377) an issue where, if the user deleted a location, all child locations would be deleted, no matter what the user chose. Now, we update existing locations BEFORE deleting removed locations, which fixes this issue.
  • Added: the save process now happens in a single transaction, which should allow full rollback if there was an issue while saving.
  • Added: the prompts relating to deleting locations are now more user friendly, concise, and informative.
  • Added: there is a new insert option, insert sibling, which inserts a copy of the selected item at the same level as the selected item. This is now the default behavior of the insert button.
  • Changed: insert parent, insert child, and insert sibling all have new, more intuitive icons.
  • Added: if the user inserts a copy of an item with a number in the code and the description, whatever value the code gets updated to will also be reflected in the description. For example, if R1 becomes R5, then a description of "Rack 1" will become "Rack 5"
  • Fixed: an issue where copying and pasting an existing item would replace/move the original item instead of copying it.
  • Added: the initial location list is now sorted on load.

Location Management

  • Fixed: (case 8952) an issue where items would get duplicated in the manual count entry page if the primary location of a part was loaded.
  • Added: the manual count entry page now properly resizes to fit the user's resolution.
  • Fixed bugs where manual count extra items would do bad things with their quantities.
  • Manually added items now try to auto-select their location if there is a sensible candidate.
  • Fixed a bug where the scan administration page would hard-limit its results to 200 rows.
  • Made the query for manual counts match the matching report query.
  • Made the need for Variance being configured correctly more obvious.
  • Fixed a bug where having an ambiguous entry in manually-entered tag lookups would cause a whole-inventory search to happen.
  • Fixed Double-clicking a search result to disambiguate a manually-entered tag would do nothing, as opposed to loading the part.

Mas90Accounting

  • Changed: the way WOs perform their accounting has been completely rewritten. Now, WOs do 'regenerative' accounting on every save, just like the sales orders. This means that if there was an error during finalization or voiding, etc on a WO, the user can simply load and resave that document and corrective entries will be inserted, no matter how long its been since the error occurred.
  • Changed: in order to facilitate accurate historical accounting on WOs, labor, master parts, epa charges, fixed job prices, and shop fees all now remember the gl account they hit when they were finalized. The accounting module now takes these into account when doing regenerative WO accounting.
  • Fixed: several situations in which accounting for WOs could cause credits to not match debits. These mostly revolved around roundoff error due to consuming fractional quantities of parts. Now all lineitems have their quantity * cost rounded to the nearest cent to match the WO screen's behavior.
  • Fixed: an issue where regenerative SO accounting might insert corrective accounting values if the accounting configuration has changed since the SO was closed.
  • Added (case 8566): payment accounting now uses the AR account that was captured when the payment was first created instead of the current AR account. This will help avoid issues where accounting gets adjusted when an old payment is modified.
  • Fixed: an issue where voided payments might perform their void accounting a second time when the payment or associated SO was re-saved.

Master

  • Added: if there is a problem connecting to the database when attempting an update operation, the user will be notified and asked if they want to download all updates. If they say no, all further update checks will be disabled until restarting the application.
  • Added: if the user manually checks for or resets updates, updating will be re-enabled.
  • Added: database updates are disabled if the database connection is invalid.
  • Added: updating the versionlist in the database is disabled if the database connection is invalid.
  • Fixed: if the database connection is invalid, resetting updates should still work, but it will not attempt to clear out the versionlist in the database.

Parts

  • Fixed: an issue where an empty part would pop up a change detected dialog box if the last part that was saved was a standard part and the vehicle it was on had a gl category different from the default gl category.
  • Fixed: an issue where clearing a part wouldn't properly hide the 4 flex field dropdowns.
  • Changed: primary locations are now just the top location in the list, and are not stored anywhere special. This means that a part can now have no locations at all.
  • Added: if the user deletes the text out of the location dropdown, it will delete the primary location out of the location list.
  • Added: there is now a permanent checkbox in the location list. Permanent locations don't get deleted when quantity reaches 0.
  • Added: when saving, if a part has no locations and a non-zero quantity, they will be told they need to add a location. There are 2 buttons to automatically add either the default location or variance as a location.
  • Removed: an unnecessary query that was being run when clearing a part.
  • Fixed: serialized parts now correctly put a quantity deficit into the location specified in the store setting for variance location (defaults to Variance).
  • Added: non-serialized inventory now lets the user edit the quantity on the primary location of a part if the store setting for variance location is not set to $PRIMARY. If this setting is set to $PRIMARY, the primary location is still used as the 'offset location' for storing quantity deficits.
  • Added: if the user changes the quantity of a part with the quantity field, the difference is always put into the primary location, even if the offset location is set to be Variance.
  • Fixed: (Case 8907) a bug where cloning a part would cause the new part to have the opposite quantity of the parent part.
  • Fixed: the part transactions tab now correctly shows WOs at all stores if the current part was the master part on a WO at another store and the 'show current store activity only' checkbox is unchecked.
  • Fixed: A bug where copying a part would cause an assertion due to having no locations but forcing a list update on entry 0.
  • Fixed: (case 8950) an issue where modifying the primary location of a saved part would not properly update the primary location on the locations tab after save.
  • Added: when saving locations, a function that verifies locations are saved correctly is run. This is to aggressively correct an issue where some locations were not saving correctly.
  • Fixed: (Case 8950) an issue where modifying the primary location of a saved part would not properly update the primary location on the locations tab after save.
  • Fixed a bug where the user couldn't save if there were invalid locations in the part location list, even if they weren't altered or added during the session.
  • Fixed a bug where the Edit Locations button would do nothing.

Part Modification

  • Added: any column that displays information from another table is now run through a function that will cause all distinct values to be displayed, seperated by commas. This is especially useful when viewing serial #'s or the new Location column, which shows all locations the part is at, comma separated.

Payment Entry

  • Changed: money values will now be displayed in the user's currency locale format.

Purchase Orders

  • Fixed: an issue where the sidebar width % edit would round down to the nearest multiple of 100%.
  • Fixed: A memory leak that only occurs when a user presses cancel on the dialog for printing historical pick lists.
  • Added the Vendor ID to the screen. Shows "N/A" when no Vendor is loaded, to be consistent with the Sales Order screen. case 3096

Report: Label

  • Updating report for location changes in 4.0

Report: Label Picking

  • Updating report for location changes in 4.0

Report: Label Receiving

  • Updating report for location changes in 4.0

Report: Tag

  • Updating report for location changes in 4.0

Report: Tag Picking

  • Updating report for location changes in 4.0

Report: Tag Receiving

  • Updating report for location changes in 4.0

Report: Sales Order 11in

  • Added: (Case 7053) functionality for hiding child parts of kits based on a setting, but only if the price of the child part is 0.00.

Report: Work Order Internal

  • Added: overhauled the report to work better with multiple job, locations, and multiple master parts.

Report: Part Search Results

  • Fixed: report now shows correct serial numbers.
  • Updating report for location changes in 4.0

Report: Inventory Summary

  • Fixed: report now shows inventory that has no valid inventory type.
  • Changed: quantity rounding to one decimal instead of whole numbers to match the detail report.
  • Changed: Unknown Manufacturer line to display as "Unknown Manufacturer" instead of a blank line with it exists and the results are grouped by Manufacturer.

Report: Inventory Count Sheet LXW

  • Updating report for location changed in 4.0

Sales Orders

  • Fixed: adding a new document type in the configure->sales order document types dialog no longer immediately shows activity on that document type if there were SOs with invalid documents.
  • Fixed: (case 8504) an issue where sending search results to a sales order would use a quantity other than 1 if the user did a search broken out by location.
  • Fixed: the message box that pops up to warn the user that they are selling items from a location that is on hold is now clearer and more obvious.
  • Fixed: an issue where typing into the tax item dropdown might not find items if you typed in something that is from the middle of the name of a taxitem.
  • Changed: (case 8345) setting a back order quantity no longer reduces the location allocations based on the backorder quantity. This is important because, if we're going to send locations over to a back order, we need location quantities to not be removed.
  • Added: (case 8345) when finalizing a SO with back order quantities, an appropriate quantity of location allocations will get removed from the invoice and moved to the back order. Priority is given to items that have not been picked yet, but after that, picked locations will be moved.
  • Renamed: the advanced page is now the "Item Info" page on the left of the screen.
  • Added: the item info page now has a field that shows the quantity of the selected item that has been picked so far.
  • Changed: there was a query that ran during save when creating back orders that updated the initial SO. This is now only run in situations where it would affect something, which should speed up the save process.

Search

  • Changed: (case 8348) the store list that a user uses to choose which stores they want to search now uses checkboxes instead of a 'sticky' list. This is because sticky lists don't allow easy mass-deselection of items. Now, the user can select as many items as they wish, and use the space bar to toggle the check value. This should making adding or removing lots of stores to search easier and more obvious.
  • Added: the store list now resizes to take up more space, when possible. Also, the list now shows gridlines and tooltips.
  • Changed: the store list tooltips now give the user a hint about using the space bar to toggle checks.
  • Removed: various code related to searching by location to deal with the fact that the primary location has been moved into the secondary location table.
  • Changed: the store list on the part search page now uses checkboxes insetad of which items are selected to control which stores get searched. This makes it easier to select or deselect all, or some of the stores.
  • Changed: the search query now handles locations differently, and in a way that should be faster to search.
  • Changed: the quantities that get loaded into memory now deal correctly no matter if the search is a normal search or per-location search.
  • Changed: the store list on the vehicle search page now uses checkboxes to specify which stores are being searched instead of a sticky list. This makes selecting/deselecting any number of stores at once much easier.
  • Changed: on the vehicle search, the purpose of the date pickers should be more obvious.
  • Added: the alternate parts infopane now ignores alternate parts that are not status A or H.
  • Fixed: (case 8559) the query that is used to look up how many messages apply to a particular part is now drastically faster on larger databases (as much as 30x faster).
  • Changed: if the user double-clicks on the quote count icon in the search results, it now opens the allocations info pane instead of the quotes infopane. This is because the quotes infopane shows mostly closed/expired historical quotes, and the allocations pane shows the open ones.
  • Fixed: (case 6607) Essentially, now, if the user puts wildcards in the smart search field with no other characters, the Search screen won't perform the Smart Search, instead it will just do the search as though they had left the field empty.

Vehicles

  • Changed: the vehicle performance and costs pages now display currency in the user's locale format.
  • Fixed: an issue where the inventory gl category dropdown didn't require a value on save, which could affect inventory on the part, as well as cause a database error in some situations.
  • Changed: The totals for the "available" list is no longer using a special line at the end of the list, its using the footer feature of the ITListCtrl like the Customer and Part Modification screens.

Vendor List:

  • Made same changes to Vendor List screen that was made to the Customer List screen.
  • Now Search and Show All are the same button
  • Other UX improvements

Warehouse Management

  • Fixed: (case 8952) an issue where items would get duplicated in the manual count entry page if the primary location of a part was loaded.
  • Added: the manual count entry page now properly resizes to fit the user's resolution.

Work Orders

  • Fixed: an issue where consuming fractional quantity of parts on a job could cause the job's total to not match the sum of the line items. Now, every line is rounded to the nearest cent after taking quantity * cost. This is more consistent across all places the total is displayed, and will more accurately match the values used by the accounting system.
  • Changed: in order to facilitate accurate historical accounting on WOs, labor, master parts, epa charges, fixed job prices, and shop fees all now remember the gl account they hit when they were finalized. This information is refreshed for the current WO on every save, as long as the WO was not closed or voided when it was loaded.
  • Fixed: (case 8566) an issue where, if accounting failed in the middle of a save (finalization, voiding, or work in progress), the save would halt even though inventory had already been removed, etc. This could allow the user to perform the operation again, doubling their inventory adjustments. Now, if a save completes successfully, the WO will clear normally even if the accounting save process fails (there is a new pop up that alerts the user to the current situation).
  • Added: (case 8566) the work order system now uses "regenerative" accounting on every save. This means that, on every save, the WO will examine the accounting that has been performed for that document and compare it to what should have been done, and will insert corrections in the case that they differ. This is the same as the regenerative accounting currently in use on the SO screen. This means that, if a user has an error performing the accounting for a WO during finalization or void, etc, they can simply load the WO again and save it to correct the accounting.
  • Fixed: (case 8566) several issues which could lead to credits not matching debits when performing WO accounting, especially if the user consumed fractional part quantity.
  • Fixed: A bug where loading a work order of a different type than the default would cause the default to still display.
  • Changed: Changing type now warns differently in different circumstances, and stops warning after accepting a transition once... unless they go back to the main type and do it again.
  • Added: A warning stating that changing WO types after adding jobs could affect the way they are represented.
  • Fixed: (case 8780) an issue where selecting the blank WO type "" and hitting the edit type button was not correctly letting the user add a new type (it was instead editing the last selected type).
  • Fixed: a crash that would happen when the user selected the blank WO type ("") on a saved WO.