ITrack/Enterprise/Changelog 2011-05

From ISoft Wiki
Jump to: navigation, search

2011-05-31

Appraisals

  • Fixed: Minor little thing which made synchronous appraisals fail.

Common Resources

  • Added: the stores in the choose store dialog are now sorted correctly when there are more than 9 stores.
  • Added: a select all button in the choose store dialog.
  • Added: a lot of shared icons.

CoreManagement

  • Fixed: a query error when searching for customers with a single quote in the name.

Database Updates

  • Fixed: an issue where returning cores to a vendor wouldn't actually adjust inventory quantity.
  • Added: assembly manufacturer and model fields to the vehicle bid tables.

ITMySQLConnection_d

  • Added: support for user-specified MYSQL_INIT_COMMAND strings. This string is a set of queries that automaticall get run on connect or reconnect. This allows us to set a session variable to the currently logged in userid for better query logging.
  • Fixed: if the mysql connect call fails, the password will no longer be reported in the error.
  • Fixed: if the mysql connect call fails, the mysql error information will now be included in the error report.
  • Fixed: an issue where the connection flags weren't being used during reconnection.

ITSQLFramework

  • Fixed: ITSQLMaster::Reconnect now reconnects (instead of disconnecting).

Login

  • Added: whenever the user logs in or out, the database will have a variable set to the currently logged in user id. This way, triggers can capture the ITrack user that was logged in when a change was made.

Parts

  • Added: the link manuf/model to assembly manuf/model now defaults to checked.
  • Fixed: an issue where an invalid model might show up in the model dropdown if the link checkbox was checked.
  • Fixed: an issue where manuf/model wasn't editable during the right times.
  • Fixed: an issue where the link checkbox might check itself if the user changed the manufacturer dropdown.
  • Fixed: an issue where the user might be prompted to save the part a second time when replicating a new part to additional stores.
  • Removed: local interchange options dialog. This is now shared in EECommonResources.
  • Fixed: an issue where the "Core required" checkbox might be checked on the screen, but unchecked in the database.

PurchaseOrders

  • Added: when looking up vendor catalog information, there is now a case that will use the defaults stored inventory if no vendor catalog record was found. This will solve an issue where items with no vendor catalog record always had a "vendor part #" that was empty.

SalesOrders

  • Fixed: an issue where inherent core credit (return) lines might cause an inventory record to get replicated between stores if the core credit was happening in a different store than the store of the core charge.

Search

  • Added: the currency columns are now right-aligned.

Vehicles

  • Added: teardowns and teardown items now correctly inherit most pertinent vehicle fields when being initially created. This includes things like make, model, store, vin, etc. Currently, if these fields are changed on a vehicle, the items will not be updated automatically.
  • Added: teardowns now create inventory and load correctly.
  • Added: checks to make sure certain required fields are filled out in collection items.
  • Fixed: change detection on the bidding tab should now work.
  • Added: all manufacturer/model dropdowns now load 'just in time'. In other words, they delay loading up updated manufacturer or model lists until the user navigates to these fields. This should make navigating around the list a bit faster.
  • Fixed: an issue where teardowns would always show up as modified.
  • Added: there are now 4 columns for the 'flex' data (the 4 more fields that are part type specific). When any of the 4 are invalid, they get greyed out and get a label of N/A.
  • Added: many 'behind-the-scenes' fields are now filled out when an inventory record is created through a teardown.
  • Added: assembly manufacturer/model dropdowns now properly fill with values.
  • Fixed: an issue where sometimes the model dropdown would become an edit rather than a dropdown.
  • Fixed: an error where saves always appeared to fail.
  • Fixed: an issue where deleting an item off of a teardown wouldn't recalculate the totals at the bottom.
  • Fixed: an issue where an item would be visible in the list but would disappear when the user opened the dropdown.
  • Fixed: an issue where clicking on a dropdown too quickly might make it close.
  • Added: going to a dropdown field in the teardown list now automatically shows the dropdown.
  • Added: doubleclicking items in inventory now opens them on the parts screen.
  • Fixed: an issue where the manufacturer/model dropdowns got everything put into them twice.
  • Added: a QoH column to the teardown list. This allows the user to see how many of that item is currently in inventory.
  • Added: setting a quantity for a teardown item now adjusts the quantity of the item in inventory on save. This means we're going to skip the assembly breakdown process. This should be fine since all items being created this way will be 'standard' items.
  • Fixed: a couple crashes.
  • Added: the user can now only have one open teardown. Creating a new teardown simply opens the existing one.
  • Fixed: copying to a new teardown now copies to the existing teardown if one exists (since we're only going to allow one teardown at this point).
  • Added: copying a bid or teardown to a new teardown now copies into the current open teardown if one exists (since we're going with just a single teardown at this point).
  • Fixed: an infinite loop when copying a teardown into itself.
  • Added: if the user switches the side field to "Both", they are asked if they want to split the item into 2 items (one Left and one Right). If they say yes, they get a new duplicate item.
  • Removed: print teardown button on the view.
  • Fixed: hitting the "parts from teardown" button on the view activates the teardown tab and either creates a new teardown (if none exists), or activates the current teardown.
  • Removed: check for "Opt into beta features" that would normally hide the bidding tab.
  • Fixed: an issue where leaving the part type would clear out manufacturer/model selections.
  • Fixed: overactive change detection on the screen having to due with having a teardown.
  • Added: bidding/teardown items now populate prices from model category data.
  • Added: switching the category or the model will now load default prices from the model category pricing.
  • Fixed: an issue where the sales appraisal values were getting HTP appraisals put into them.
  • Added: copy item button that will make a copy of the selected component item.
  • Added: changing assembly manufacturer or model will now pop up an interchange options dialog.
  • Fixed: issues where appraisals wouldn't be run if the model was filled out automatically by copying over the assembly model.
  • Fixed: an access violation caused by the bidding page having a different font than the default system font.
  • Removed: several locally defined icons, this screen now uses the shared versions in the EECommonResources module for lower filesize.
  • Added: icons to many of the screen's buttons.
  • Added: icons to most of the buttons and dropdowns in the bidding tab.
  • Fixed: rejecting a bid was marking it as accepted.
  • Added: some of the buttons are now locked down when they aren't applicable.
  • Fixed: crash when saving new bids.
  • Added: option for vehicle status of B.
  • Fixed: overactive change detection when loading items that previously received an appraisal value.
  • Added: previous appraisal value will now be displayed until the reappraisal is complete for saved items (instead of $0).
  • Added: the add images and clear images options should now work correctly.
  • Added: (bug 2076) when a VIN lookup is performed, the user will be prompted whenever the data returned by the VIN decode would change the user's data. This fixes issues where the VIN decoder returns the wrong model and overwrites the user's selection silently.
  • Added: the 'create copy teardown' and 'create PO' options should now both work when accepting a bid.
  • Changed: the dropdowns on the basic info page are now advanced combo boxes.
  • Fixed: the make/model fields are now faster and should reflect the users changes more quickly.
  • Added: the interchange option dropdown now shows available interchange options.
  • Fixed: an issue where the interchange option dropdown would show duplicate items.
  • Added: switching items in the interchange option dropdown fills out side, interchange, subinterchange, and list price.
  • Added: creating a new vehicle will no longer ask the user to create a PO to receive the vehicle if the status of the vehicle is B.
  • Added: a whole unit's cost and vendor are now set to the most recently accepted bid's amount and vendor. This should mean that adding the whole unit to a PO (to receive the vehicle) should automatically put in the bid amount and pick the correct purchase vendor.
  • Added: accepting a bid and hitting "Create PO" should cause the "Do you want to create a vehicle PO" popup to happen when the user saves the vehicle next.==2011-05-12==

Common Resources

  • Added: more space in the choose stores dialog and added a "select all" button at the bottom.
  • Fixed: an issue where the order of stores in the choose store dialog wouldn't be right if there was more than 9 stores.

Customer

  • Fixed: an issue where payment methods in the payment method list were not being drawn correctly and were invisible.

Parts

  • Fixed: an issue where, when saving a new aftermarket part, the user would answer "yes" to the question "do you want to replicate the part", but then they would be prompted to save again.
  • Fixed: an issue where the "link manufacturer/model to assembly manufacturer/model" was automatically rechecking itself.
  • Fixed: several issues in which the above setting wasn't causing correct synchronization between the dropdowns.==2011-05-11==

Appraisals

  • Added: support for asynchronous (threaded) multi-item appraisals.
  • Fixed: an issue where the second appraisal attempt might throw a "could not initialize the mysql connection" if the first appraisal attempt was made in a thread. This is because the pointer to the master window was temporary and was becoming invalid after the first thread terminated.
  • Added: critical sections around several atomic operations to avoid errors when using an ITAppraisal object from more than one thread.
  • Fixed: several issues where the suppress errors option was being ignored. Now, if the caller of an appraise object wants errors to be suppressed, they will be (the error message is returned with the appraisal object). This is especially helpful when performing appraisals in a thread, and we don't want to pop something up when the user isn't idling.
  • Fixed: a bug with the appraisal item object that was keeping vehicle make from being passed in.

CrystalReports

  • Removed: the 'printer unavailable' dialog has been removed for the time being, as apparently, windows sometimes gives a false positive for a printer being offline when its not. This dialog doesn't seem very useful right now, so it will be removed until it can be made more useful.

Customer

  • Fixed: a couple data leaks related to alternate addresses that were still around.
  • Fixed: an issue where the user would get "The current customer has been modified, do you want to save?" (overactive change detection) on the customer screen when an empty customer was up. This was occurring on any user that was not marked as a salesperson.
  • Fixed: store dropdowns now sort correctly if the user has more than 9 stores.

CustomerList

  • Fixed: the export to CSV dialog was running its export query in an inefficient way. The size of the query has been reduced by 80%. This will help with errors in which the query was too large for the server to handle.

Database Updates

  • Changed: the core class of "N/A" is treated the same as an empty core class when it comes to creating initial core bank records.
  • Changed: the quantity field in the vehiclebiditem table is now a fractional, like most other quantities in ITrack.
  • Added: unique key on breakdown template name per part type.
  • Added: breakdown templates for whole unit types for every teardown.
  • Added: breakdown template items for each item in a teardown.
  • Added: a new index to the inventory table that should make vendor catalog searches much faster.
  • Updated: the primary key of the model table has been changed in order to be smaller and more accurate. It used to be modelid, manufacturerid; it is now just modelid.
  • Added: collection type of teardown to facilitate teardown operations.

DataManagement

  • Fixed: a crash that could be caused if the user had an item selected in the fields tree then changed import types.

Home

  • Fixed: a crash that would happen if the user didn't have the "Can view sales orders" permission when opening the home screen.

ITMySQLConnection_d

  • Fixed: Threading issue where global locks against m_mysql would be gained... but non-global locks were not used, meaning m_mysql could be edited in more than one place at a time, potentially causing crashes. It's so rare that it's only seen in long-term programs like Replikwando (I think, anyways).
  • Added: Error checking for out-of-memory failures on mysql_store_result. The unfortunate part of this is, since the error is internal to libmysql, we can't deallocate the bad memory, essentially leading to a terrible memory leak.
  • Fixed: many of the main query functions are now more thread safe. This means running multiple queries in the same mysql connection should work a lot better than before.

Parts

  • Changed: the HTP appraisal code has been modified to reflect the fact that all asynchronous (threaded) appraisals are returned as multi-item appraisals now.
  • Fixed: bug 2028, Added a checkbox in the basic tab to allow the user to link the Assembly/Model manufacturer to the Part Model Manufacturer. This should further simplify the manufacturer/model entry system on the parts screen.

PurchaseOrders

  • Added: as per a request by VTP, a saved PO now mentions the successfullness of the save (as well as the PO #) in the corner like the other documents.

SalesOrders

  • Added: there are now checkboxes for controlling the recently added payment method fields in the payment method dialog. These checks are "Customer payment method" and "Vendor payment method" which allow the user to configure which screens/documents these payment methods can show up on.
  • Fixed: an issue where a customer's email address wasn't carrying over into the billing address email blank correctly.
  • Fixed: an issue where hitting enter to close the address modification dialog might not properly perform a zip code lookup.
  • Fixed: an issue where the billing address might not stay synchronized with the shipping address when the shipping address of "Billing Address" was selected.

Search

  • Fixed: a small data leak when sending items to a screen.

Vehicles

  • Added: hitting enter when the cursor is inside the lookup field now performs a vehicle lookup.
  • NOTE: most of the following refers to the new bidding and teardowns tab. This tab is still in development, but create bids should work and the user is welcome to test things. Teardowns from this area still don't save/create inventory
  • Added: all bid fields now get saved into the bid object when the values are changed.
  • Added: the list of available whole unit teardown templates is now being populated based on the currently selected whole unit part type.
  • Fixed: date field is now saved.
  • Fixed: Part type field is now much wider.
  • Added: OEM # column.
  • Fixed: switching bids now saves all bid items for when you come back to that bid.
  • Added: picking a vendor fills out defaults for seller phone # and seller contact
  • Fixed: vehicle bids now save and load correctly when a vehicle is saved and loaded.
  • Added: columns for filling out the assembly manufacturer and model in the bidding/teardown list.
  • Added: hooked several more fields up to save and load in the component list.
  • Added: changing anything in the bidding list will cause that item to be marked as in use.
  • Added: alternating colors in the component list for easier reading.
  • Added: remove items button now removes all selected components.
  • Fixed: an issue where previously saved bids wouldn't load their models when they were loaded again.
  • Fixed: side now saves and loads correctly on components.
  • Added: the appraisal columns now attempt to perform lookups when the user changes the model or category of the item.
  • Fixed: remove items button now properly deletes new and existing components.
  • Added: add new component button now properly creates a new component in the current bid.
  • Fixed: a crash that could happen if the user deselected the current bid after beginning an appraisal.
  • Fixed: an issue where core price wasn't displaying correctly.
  • Added: model dropdowns are now normal dropdowns, rather than edits that turn into dropdowns, in order to keep the interface simple.
  • Fixed: an issue where the model dropdown wouldn't clear out previous options.
  • Added: an indexed appraisal cache. This means that, whenever an appraisal is run, it automatically gets applied to all bid items that share the information. Also, if an appraisal is done, the outcome is saved to make future appraisals faster.
  • Fixed: an issue where model wasn't always updating.
  • Added: part type and quantity columns are now bold, as they are pretty important.
  • Added: a totals area at the bottom of the screen. This will show the total for various items displayed in the list.
  • Added: a manual "refresh appraisals" button so that the user can manually force the items to be reappraised.
  • Added: local sales history appraisals should now be working similar to how they worked in pro.
  • Added: if an appraisal has already been performed (and exists in the appraisal cache), the value will be returned from the cache instead of looked up again.
  • Added: when a bid is visited, if any of the items in it have no up to date appraisal values, the entire bid will be re-appraised.
  • Added: the totals at the bottom of the screen now refresh properly as the figures update.
  • Added: a delete bid button that allows the user to delete a selected bid.
  • Added: the copy bid button now creates a copy of the currently selected bid and activates the copy.
  • Added: when the user switches the template, an initial appraisal is now automatically run against the 'empty' spreadsheet of items to give a baseline appraisal of the items based on nothing but part type and vehicle make/model.
  • Fixed: an issue where loading multiple vehicles would cause the list to duplicate items.
  • Added: bidding page now uses split buttons for the "New" and "Copy" bid buttons. The dropdown has options for creating new bids or teardowns.
  • Added: the screen can now store teardowns in the document list as well as bids. Not all of the teardown functionality is complete yet.
  • Added: when the user accepts a bid, a dialog pops up that asks them what post-acceptance steps they wish to take. This includes closing all other open bids, marking the vehicle as status A, updating the seller information on the Vehicle Info tab, creating a teardown that is a copy of that bid (not yet implemented), and creating a purchase order to the selected vendor for the bid amount (not yet implemented).
  • Added: if a new vehicle is status B when being saved, the user won't be asked if they wish to automatically create a PO to receive the vehicle (this will be done after a bid is accepted).
  • Added: if the user switches the status to B, a new bid is created. If the user switches the status FROM B to something else, they will be asked if they wish to close all open bids.
  • Added: ability to close/reject bids.
  • Fixed: various crashes related to being able to put either bids or teardowns on the screen.
  • Added: teardowns should now be able to have breakdown templates loaded into them on the bidding screen.
  • Fixed: a crash on load related to recent status changes.
  • Added: change detection to the bidding tab.
  • Added: appraisals work on items on teardowns now.
  • Added: checking the 'use' checkbox will now recalculate totals at the bottom of the bid tab.
  • Fixed: lots of crashes related to removing a bid then adding one.
  • Fixed: some crashes related to having teardowns in the list.
  • Fixed: the remove bid/teardown confirmation dialog used to always say "Bid" even on teardowns.
  • Added: when the user selects a teardown, most of the bid information area is hidden.
  • Added: some fields that are teardown only (currently) like tag #, OEM #, jobber price, etc.
  • Added: the "Copy to bid/teardown" should now work when copying a teardown to a bid and vice versa.

Vendor

  • Fixed: a couple data leaks related to alternate addresses that were still around.
  • Added: there is now a set of fields on the additional info tab for controlling a vendor's default AP payment method and a vendor's default AP terms.
  • Fixed: the email field can now properly expand to 100 characters, and the web address field is now no longer limited at all.
  • Added: several tabs were still turning all enter keystrokes into tab keystrokes. Now, the user setting "User Interface"->"Enter key goes to next field" controls whether this is true.

WorkOrders

  • Fixed: bug 1776, where the price column shows $0 in the invoices dialog. this also fix the same issue in the home screen work order tab.
  • Fixed: a bug reported by VTP in which the user wouldn't be able to add new jobs to a WO if the user selected the empty item from the job template dropdown.==2011-04-20==

PurchaseOrders

  • Fixed: an issue where resizing list controls to 0 height or width might not completely hide the list.

SalesOrders

  • Fixed: an issue where resizing list controls to 0 height or width might not completely hide the list.

WorkOrders

  • Fixed: an issue where resizing list controls to 0 height or width might not completely hide the list.