ITrack/Enterprise/Changelog 2010-05

From ISoft Wiki
Jump to: navigation, search

2010-05-28

WorkOrders

  • Fixed: message box that would complain that items didn't have a valid serial # selected when a serialized item on a WO had an inherent core charge or dirty core exchange.
  • Fixed: crash caused by adding a 2 jobs then deleting one.
  • Fixed: crash caused by adding a job template, deleting all the items, then adding more items.

2010-05-27

PartConfiguration

  • Fixed: model collision errors were coming up more often than required because they weren't paying attention to part type.

2010-05-26

SalesOrders

  • Fixed: shipping addresses were not remembering modifications correctly.

WorkOrders

  • Fixed: an error where hitting the edit job dialog and hitting ok could cause the parts on that job to become duplicated.
  • Fixed: some crashes related to the above error.
  • Fixed: issue where loading work order job templates onto a WO would not show the parts on that template.

2010-05-25

Customer

  • Fixed: as per bug 1385, alternate addresses were not displaying store correctly, which could lead to the wrong data getting saved on subsequent saves.

Database Updates

  • Fixed: version markers were in lower case, causing database versioning to not work correctly.

InventoryOverview

  • Added: all queries that reference the data cache (the pre-calculated inventory data created when you first open the screen or hit refresh cache) now have a special handler to deal with cases when the cache disappears. Now, instead of getting an error ("table TEMP_inventoryoverview not found"), the screen will simply rebuild the cache automatically.
  • Fixed: query error when rebuilding the cache if the cache was missing initially.

ITSQLFramework

  • Added: the ability to manually report query errors through the standard error reporting interface. This is useful for parts of the software that wants to handle certain database errors manually, but leave others for the standard handlers.

PartConfiguration

  • Fixed: edit model button/dialog now correctly saves models.
  • Added: instead of simply saving models and reporting 'duplicate model' errors, the screen now looks to see if the proposed change will cause a collision. If it does, the user is told so and the change is aborted.
  • Fixed: if the user used the list to modify model names, the stripped names weren't being correctly updated. This is now fixed.
  • Fixed: hitting shift+tab when a combo was selected on the inventory model page could cause an infinite loop freeze in windows.

Payment Entry

  • Fixed: bug 1369 mentioned that the new auto-allocation algorithm would sometimes allocate one extra invoice. This is now fixed.

PurchaseOrders

  • Added: now that the tab and enter keys don't do the same thing, I've gone back in and added handlers so that hitting enter while in the customer/vendor lookup fields performs a lookup.

SalesOrders

  • Fixed: some tooltips within static 'boxes' weren't showing up.
  • Added: tooltips to newer controls.
  • Added: as per bug 515, there is now a warning if you try to add the same item to an order more than once.
  • Fixed: several minor redraw issues that could be caused by aborting item load early.
  • Added: now that the tab and enter keys don't do the same thing, I've gone back in and added handlers so that hitting enter while in the customer lookup field performs a lookup.
  • Fixed: an issue where the customer field would appear to not redraw after a lookup.

Search

  • Removed: remaining enter = tab keystroke functionality. This behavior had been half-broken for awhile, and we have received user requests to make enter perform the search. Therefore, enter and tab are now distinct keystrokes.
  • Added: enter button performs a search on the currently active search page if the user's cursor is anywhere in that page. (Enter while the list is selected still opens/sends that particular part).
  • Fixed: Over-generalized the open-remote-screen functionality, and ended up causing query errors when moving vehicles to another screen.

Vendor

  • Fixed: as mentioned in a recent bug, the priceclass and purchase class were forced to have a value ( was not allowed). Now, vendors are allowed to have nothing selected in these dropdowns.

WorkOrders

  • Fixed: serial # and customer unit configuration dialogs moved to the start of the save process so that their cancel buttons would be allowed to cancel the save operation.
  • Fixed: there was no error report when a WO was finalized with a serialized job part line that had no serial # selected.
  • Fixed: if a duplicate item was added to the WO, it was possible to get the confirmation dialog more than once. This is no longer true.
  • Added: now that the tab and enter keys don't do the same thing, I've gone back in and added handlers so that hitting enter while in the customer lookup field performs a lookup.
  • Added: the workorder screen now attempts to remember the order that job parts are sorted in and saves that information in the database. This ability to order line items will allow the user to sort items however they want and have that order be preserved when they save.
  • Added: the user can now sort job parts. The user can click on the header to sort parts by any of the columns.
  • Fixed: in some situations, child parts (like inherent core charges and dirty cores) weren't being marked as child items correctly. This caused sorting to not work right.
  • Fixed: a couple various crashes and errors.
  • Added: changing part order now detected as a change requiring a save.
  • Fixed: 'pure-misc' non-stocked items (items with nothing but a description) now work correctly. They weren't getting marked as MISC items and were popping up an error message.

2010-05-24

Customer

  • Fixed: as per bug 1385, alternate addresses were not displaying store correctly, which could lead to the wrong data getting saved on subsequent saves.

Database Updates

  • Added: index to the taxitem on invoices. This speeds up several taxitem-based reports.
  • Added: new permission for customer screen that controls whether the user can configure the stores/salesman on customers. This used to be under the "Can configure advanced settings" permission. This permission is automatically granted to everyone who had the advanced settings permission.
  • Added: rank column to all document lines. This will soon allow documents to store the 'last viewed order' of the items on the document.
  • Changed: the unique key on the model table no longer involves the year range.

2010-05-20

ITMySQLConnection_d

  • Fixed: a rare crash on some screens. It was noted that it could cause a crash on the POs screen when saving a PO with a vehicle on it.

PurchaseOrders

  • Added: in order to address confusion between the price of items on po lines and the historical price paid on po postings, some changes have been made to POs. Mainly, when the user opens a PO that is marked as done receiving, instead of automatically opening the user into a 'new posting', it will instead open them into an existing posting. If there is only one posting (most common case), that posting will be opened automatically. If there is more than one, the choose posting dialog will be displayed. This way, if the user opens a fully received PO, they'll be in a posting, and any changes to quantity/prices will affect the received items.
  • Added: choose posting dialog now has a checkbox for which postings have been approved.
  • Added: the choose posting dialog now automatically selects the oldest unapproved posting (instead of always selecting the 'new' posting). ==TransferOrders:==
  • Added: as per bug 515, there is now a warning if you try to add the same item to a transfer more than once.
  • Fixed: several minor redraw issues that could be caused by aborting item load early.
  • Fixed: redraw issue when loading a collection over the top of an existing item.

Vehicles

  • Fixed: rare crash when adding vehicles to a PO.
  • Fixed: repeatable crash when saving a PO with a vehicle on it when that same vehicle is open on the vehicles screen.

2010-05-19

Payment Entry

  • Added: by customer suggestion, the "Oldest first" and "newest first" auto-allocation methods now operate in what I will call 'simple mode'. This mode is designed to be more transparent to the user. The main change is that, after the items are ordered by the criterion (date/balance), instead of skipping items too large to allocate and going on, it will just go in order and stop at items that are too large to allocate. The 'Allow partial allocations' option will now control whether to apply the 'remainder' to the next item or not.

WorkOrders

  • Added: as per bug 515, there is now a warning if you try to add the same item to a job more than once.
  • Fixed: if you loaded an item over the top of another one but the load was canceled/failed the lookup column would be blank instead of reverting to its previous value.
  • Fixed: new WOs that were creating new Serial #'s sometimes wouldn't save the SN with the master part. This would cause those SNs to not pop up for customization at finalization and they would be left in the 'work in progress' state.
  • Fixed: an issue where, if a second serialized master part (with the same SKU) was added to a WO, the previous SN would be updated to be "- (1)", but the master part wouldn't be updated correctly.

2010-05-18

Home

  • Added: 'type' column to the purchase orders tab by customer request.

Payment Entry

  • Fixed: batch # column sorts by number correctly now.
  • Fixed: aging fields on the batch tab should now match the newer (more correct) aging fields on the customer screen.
  • Added: store-level setting to batch tab that will enable 'auto-application' of aging balances. By default this is off. If this is on, the screen will show aged periods with a credit as though they had been applied to aging periods with a balance. For example, instead of showing -400 on 30-60 and 400 on 0-30, it would show $0 and $0. This is off by default because such 'virtual balance applications' don't affect finance charge evaluation, and therefore shouldn't be used with companies that assess finance charges.

PurchaseOrders

  • Added: edit item dialog now displays dates in user locale format.
  • Fixed: deleting items off of a transfer order now correctly 'untransfers' any serial #'s associated with that line that had been marked as received. Also, the bug where deleted TO lines were leaving SNs as 'In Transit' is fixed.
  • Fixed: a rare bug where deleting a TO line then loading another TO (and saving it) might delete an item off of that TO.
  • Changed: the error "no items on the TO" has now been demoted to a warning. This means that if you had a 'bad TO' and you deleted the only item, it will now allow you to save without adding 'dummy items'.

WorkOrders

  • Fixed: as per bug 1367, the serial # dialog that pops up on finalizing a WO now allows the user to edit the Q&A options.
  • Added: when finalizing a WO, the SN dialog allows you to customize options but doesn't allow you to change SN selection.
  • Added: doubleclicking an item in the master part list now opens that part on the parts screen.

2010-05-17

Search

  • Fixed: 'on order' search module query to look at work order master parts correctly again.

WorkOrders

  • Fixed: (as per bug 1361) an issue where serialized items as job parts with a part type # that has no 'Q&A' where the user chose the 'new' SN option would get a query error on save.

2010-05-14

CoreManagement

  • Fixed: query error on the returned tab upon opening the screen having to do with the work order master parts.

Database Updates

  • Fixed: bad query in the function that counted the number of times a particular serial number had been produced on work orders (f_work_order_master_part) to respect the new work order structure.
  • Fixed: vehicle costs will now be split amongst vehicles appropriately on work orders with more than one master part.

InventoryOverview

  • Fixed: query that was not referencing work order master parts correctly.

Master

  • Fixed: about dialog now shows all extensions.
  • Fixed: about dialog now shows file MD5s correctly.
  • Fixed: several strange issues where ITrack's configuration file might be saved to/loaded from C:\Windows instead of the installation directory.

Parts

  • Fixed: query error when saving changes to some serial #'s.
  • Fixed: crashes related to the model and assembly model dropdowns.

Search

  • Fixed: doing a "Show parts for this vehicle" search from the vehicles screen was doing a full inventory search if the user did not have "Vehicle #" in their searchable fields. Now, it checks for "Stock #" as well and doesn't search if neither is found.

WorkOrders

  • Fixed: an error that would keep the user from making changes to the quantity of work order master parts after they had been saved in some cases.

2010-05-13

Accounting

  • Added: compatibility with new ITSQLFramework changes.

Common Resources

  • Added: compatibility with new ITSQLFramework changes.

CoreManagement

  • Fixed: a bug where a core line would not appear if the salesman user on the sale invoice or the return invoice was invalid.

Customer

  • Fixed: issue where the sell price class list was no longer listing in alphabetical order.
  • Added: the customer screen's permission system has been significantly redone. Most users shouldn't notice any difference. The permissions that control what the user can edit have been split into more specific permissions.
  • Added: 4 new permissions, all pertaining to customers. "Manage customer units", "Manage messages", "Edit billing address", and "Edit advanced information". The first 2 control the corresponding property pages. Edit billing address now controls the billing address fields on the address tab. Edit advanced info controls the additional info page and the salesman and store on the address page.
  • Added: all permissions on the customer screen are now driven by the store in the store dropdown in the billing address info on the addresses tab. This means that multi-store installs will now be able to control user access permissions to just customers at certain stores more easily.
  • Added: the store dropdowns on the addresses page now only contains stores the user has access to. This means that a user can only add a customer to (or move a customer to) stores they have permission to. A user has to have 'Global' permission in order to add global customers.
  • Fixed: the aging/remittance information on the payment page is now correct. Previously, it was adding up all invoices subtotals, payments, and adjustments entered on a certain period, which isn't right. Now, it adds up the balance of all invoices entered in that period, unapplied payments entered in that period, and all balance affecting SO adjustments (such as finance charges and discounts) that were entered in that period (even if the invoice they are applied to aren't in that period).
  • Fixed: if the user hits the New button, the customer # and balance fields now correctly empty out.
  • Added: functionality to deal with recent changes to the customer aging function.
  • Changed: due to a shift in focus, the aging periods on the customer screen no longer automatically apply credit periods to outstanding periods. Such virtual applications didn't affect finance charge evaluation and don't really match the EE AR process.
  • Added: Additional code and permission handling to gray out and disable being able to add payments if you didn't have the permission. Per Bug #1029.

CustomerList

  • Added: Additional code and permission handling to gray out and disable being able to add payments if you didn't have the permission. Per Bug #1029.

Database Updates

  • Added: a new table called workordermasterpart that stores the master part(s) for internal wos. This contains the inventory key, quantity, serial # (where appropriate), gl category, and cost for that item. There is also a script that moves all internal WO data into that table.
  • Added: Two tables for search logging. There will be more changes to these later.
  • Changed: f_quantity_on_order_exclude now works with the new workordermasterpart scheme.
  • Added: workordermasterpart.averagecorecost to store the total core cost that should be applied to the inventory item's averagecorecost upon finalization.
  • Fixed: workorder table triggers to work as designed with the new table structure.
  • Removed: redundant fields from workorder table.
  • Added: new POs permission as per bug 1287.
  • Added: 4 new permissions, all pertaining to customers. "Manage customer units", "Manage messages", "Edit billing address", and "Edit advanced information".
  • Updated: the name and labels on several customer permissions to standardize them. Changed the "Can add/edit customer addresses" permission so that its description reflects the fact that it only pertains to alternate addresses now (not the billing address).
  • Added: the new permissions are automatically assigned to users that already had permission to edit customers for uninterrupted service.
  • Added: new database function f_customer_aging. This function returns the amount of a customers balance falls within a certain remittance period. This function aims to replace f_customeractivity as the function that returns aging information on a certain period.
  • Added: New table used in recording item usage from searches.
  • Added: Code to add a new Sales Order document type for Lost Sales. Per bug #184.
  • Fixed: f_vehicle_cost function now properly deals with the new WO master part system.
  • Added: several permissions relating to the part modification screen.
  • Fixed: issue with f_quantity_on_order so that its compatible with the new WO subsystem.
  • Fixed: issue with f_vehicle_cost so that its compatible with the new WO subsystem.
  • Added: f_customer_aging now has a couple additional parameters. They define a date to use a point of reference for the aging info (any thing after that date will be ignored). Leaving this NULL uses the current date. Another parameter defines whether or not to ignore unapplied payments (in case a screen or report wishes to sum those up and apply them itself).
  • Added: a field to the inventory type table that will allow the user to define a what part type to use to retrieve the model list for that part type.

ExtensionList

  • Fixed: using [dll] section instead of [dlls]
  • Added: ITrack Online extension to users' ini lists. This extension enables web content inside of ITrack. By default, ITrack Online goes to the user's homepage, which attempts to navigate to the user's HeavyTruckParts.net homepage automatically.

GlobalSettingsExtension

  • Added: external function GetHTPHomePageID which correctly formats the web id required to visit a company's HTP homepage in ITrack Enerprise. This relies on a company's company product code being filled out in the settings.

Home

  • Fixed: work orders page to work with new work order master part system.

ini: Turn On Compression

  • Fixed: this script was being downloaded instead of applied.

Interchange

  • Fixed: a lot of references to an older/deprecated model system and replaced it with the current manufacturer/model system.

ITrackOnline

  • Added: ITrack Online has been added to the Enterprise deployment. ITrack Online is an extension that allows the user access web content from within ITrack. The ITrack homepage is configurable through the ini file, and by default, it visits the HeavyTruckParts.net homepage for the company.
  • Moved: this project has been moved from the pro repository to the general repository because it is generally applicable.
  • Changed: the function that attempts to open up the HTP HomePage now uses product-agnostic ways of retrieving such data. Mostly, it calls an external function GetHTPHomePageID which is defined in EE in the GlobalSettingsExtension and in Pro in Settings.

ITSQLFramework

  • Added: the Store/Execute/StoreMultiple/ExecuteMultiple functions now accept an extra parameter specifying a connection to run a query against. This is not widely used yet, but it requires all screens to be recompiled. This DLL is not compatible with the old screens, and vice versa.

MAS90Accounting

  • Fixed: accounting on internal WOs with multiple master parts now works as expected.

PartModification

  • Added: a new permission that keeps the user from opening this screen at all.
  • Added: a new permission that keeps the user from accessing the advanced inventory settings (such as global/logs changes/etc).
  • Added: the permission Parts->Can view parts is now used to keep the user from viewing parts at stores they don't have permission for.
  • Added: the permission Parts->Can edit parts is now used to keep the user from saving changes to parts at stores they dont' have permission for.

Parts

  • Fixed: a bug where collection components might get listed multiple times if they existed at more than one store.
  • Fixed: a query error caused by an extra parenthasis.
  • Fixed: a query on the transaction list tab to properly deal with the new WO master part system.
  • Changed: the code used to query the database for models when the user types in the model dropdown has been tightened up. Hopefully this will eliminate some of the rare errors people have received from this code.
  • Added: preliminary work for the breakdown dialog. This is a work in progress, and there are many updates to follow.

Payment Entry

  • Fixed: a bug where creating credits or discounts might fail if GL accounting is turned off.

PurchaseOrders

  • Added: as per bug 1287, I have added code that disallows the user from modifying received quantities in any way or marking a PO as done receiving if they do not have the new "Purchase Orders"->"Receive Stock" permission. The system grants this permission to all users automatically by default for uninterupted behavior.
  • Fixed: adjustment types should now be loaded in alphabetical order again.
  • Fixed: the adjustments list on the left (line item adjustments) now sort adjustment types alphabetically again.

SalesOrders

  • Fixed: adjustment types should now be loaded in alphabetical order again.

Search

  • Changed: Re-worked the coding on the search screen a bit. This work is to make it easy to implement search logging (bug #1077), as well as help the screen be a bit more uniform.
  • Fixed: a bug where doubleclicking a part/vehicle picture icon would not always pop up the images dialog.
  • Added: Continuing code for search logging/lost sales. Introduced some new tables for the logging, more stuff to record on a search, reworked the way a remote screen is called, the store-level permission for logging searches.
  • Fixed: the special case for performing interchange searches and series-based searches weren't working quite right, now they should function again.
  • Added: if the user does a search for side "N/A", it will now search for inventory with a side value of "N/A" or "".
  • Added: Further code now records when items are used from a search. This is a part of search logging, and may be changed to be a separate permission in further iterations. Per bug #1077.
  • Fixed: Pointer failure in recording how many entries in a search result were from the current store.
  • Fixed: Differentiated between last vehicle search and last part search. Adding vehicle search recording and tracking will be part of a separate bug (or a reduced bug #1077).
  • Fixed: as per user request, doing interchange searches no longer automatically chooses a side to search for.

WorkOrders

  • Added: the ability to have more than one master part on a WO. Now, instead of a part lookup field, there is a small list. Within this list, the user can add one (or more) master parts to the WO like usual, specifying quantity to build, and serial #'s, etc. In addition, the user can specify a "Cost Factor" value for each master part entry that is used to figure out how much of the total WO cost goes to that specific item, by default, each item has a cost factor of 1, meaning every item initially has the same 'piece of the pie'.
  • Added: WO master parts that are serialized no longer allow the user to create a quantity greater than 1. This is similar to how SOs works when selling serialized items. If the user wants to create 2 of a serialized item, they will have to add the item to the WO master part list twice, picking a new SN each time. This resolves a bug that was reported about SNs on multi-quantity master part WOs.
  • Fixed: the WO screen was creating/updating Serial #'s immediately, rather than waiting until save. This caused many bugs where a user could add a SN to a WO then close the WO without saving, and the SN was still 'Work In Progress' (or whatever).
  • Removed: unnecessary second SN dialog.
  • Changed: resizing code to give more room to the various lists on the screen. The "Show X List" checkboxes have been moved below the lists instead of above them.
  • Added: the info edit now shows info for all master parts.
  • Added: when the cost of the WO changes, the master parts update their 'divvied-up' costs based on the cost factors assigned to them.
  • Fixed: an issue where serialized master parts set to create a quantity of 0 might actually use a quantity of 1.
  • Fixed: if the user uses the edit item dialog to override the cost of a part, it now immediately refreshes the totals.
  • Fixed: if the user does a master part lookup that fails, their input is cleared out to indicate a failure.
  • Fixed: hundreds of small bugs and issues that have existed in WOs for a long time or that were introduced by the recent changes to the way master parts work on WOs.
  • Fixed: many of the above issues pertained to the way serial #'s were entered and handled when serialized items were added to the WO. For example, switching SNs on a line, or deleting a line or master part on a WO and saving will now 'undo' what the WO did to that SN (there were cases before where they SNs would remain or stay "Work In Progress").
  • Fixed: if the quantity of an item being made by a WO is 0, the screen won't prompt the user to input or choose a SN (though it can still be done, optionally). Also, saving without picking a SN in such cases does not generate an error anymore.
  • Added: the save process is now much faster, as several redundant or unnecessary queries were combined or eliminated.
  • Added: the averagecost/average core cost system has now been extended to work correctly (and as expected) for multi-master part WOs.
  • Added: the master part list now has a column for the cost that will be applied to the master part's average core cost (vs the other column, "Cost" which just shows the amount of normal cost that will be applied to that item).
  • Updated: the code that calculates the % in the master part list to take core costs into account.
  • Fixed: column widths in the serial # dialog to be more appropriate. They now resize depending on the length of SNs displayed.
  • Added: if the user chooses to create a new serial # through the serial # dialog, it now defaults all the Q&A to the values stored in the "DEFAULT" entry. This change has been a long time coming.
  • Fixed: if you switch work order types with master parts loaded, the quantity if the items is now updated properly to the new type's default quantity.
  • Fixed: issue where loading a WO mutliple times might get a progressively longer job list.
  • Fixed: opening voided WOs now correctly greys out the parts list.
  • Fixed: several roundoff errors between jobs, the workorder, and the invoice generated for a particular external WO.
  • Fixed: loading a closed/locked WO, then loading an open WO now properly makes the fields editable.
  • Fixed: inherent core lines now no longer have the icon warning that they need a serial number.
  • Fixed: an issue where the WO total didn't correctly calculate shop fees when they were a % of labor.
  • Fixed: assertion caused when clearing the screen after loading a multi-master part WO.

2010-05-05

EE Database Update

  • Added: tables to facilitate new multiple master part internal WOs.
  • Removed: some (now) unnecessary fields from workorder.
  • Added: permission to receive stock on POs (assigned to everyone by default).
  • Added: 4 new customer permissions (assigned to everyone with the edit customers permission by default).
  • Fixed: WO triggers to deal with new WO master part scheme correctly.
  • Fixed: QOO function to take new WO master part scheme into account correctly.
  • Added: several tables used for logging searches.
  • Added: customer aging balance function used by customer screen.
  • Added: lost sales sales order type.