ITrack/Pro/Changelog Version 14

From ISoft Wiki
< ITrack‎ | Pro
Jump to navigationJump to search

Pro change log v14 SVN REVISION 22497-22793

eCommerce App

  • Added: support for ITrack pro quotes created from internet orders.
  • Added: support for Python version 3.9
  • Added: support for document/inventory stores, which will be adjusted soon.
  • Added: support for quote.storeid in pro systems. Removed references to some deprecated fields that are being removed in future versions.

Image Synch App

  • Fixed: there was a unicode error being thrown leading to crashing if a query contained binary data. Now that data is present but backslash escaped wherever possible. Its still not always possible to copy the data out of the file to paste into SQLYog, but at least its not crashing. If we wanted queries that can be copied and pasted, we'll need to do HEX/UNHEX so that all the data is transmitted as hex strings. The downside here is that it will double the size of the data.

Attachment Views

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

Database

  • Added: quantity as a flex field search option
  • Fixed: a bug where the user view was trying to reference useraccount.email which is now workemail.
  • Fixed: a bug where the WHERE clause in the f_get_report_printer function wasn't using the report type passed in.
  • Removed: an unused view, wa_user
  • Fixed: released some changes to the reportqueue table that hadn't yet been released in pro yet.
  • Added: (case 46390) defaults for invmaster.dateentered and invmaster.lastchanged times, so that they get set on creation (and update for lastchanged) automatically.
  • Added: view wa_report_printer
  • Added: (case 35686, 46035) websaleid and websaletype to the quote table. Also, added websalelineid to qline. Together, this should help track incoming documents from the internet.
  • Added: new database functions f_calculate_tax (for computing the correct tax, given a tax item id and a taxable amount), f_invoice_tax, which returns the correct tax for a given sale, and f_quote_tax, which does the same for a quote document. These are useful for import scripts that want to be able to get correct tax values.
  • Changed: invmaster's primary key no longer involves store #, as the stocknum is (and always has been) globally unique.
  • Added: quote.storeid for tracking a document store #.
  • Added: invoice.storeid for tracking a document store #.
  • Added: the following fields were set to a valid default if they were set to NULL in the quote table: document, lastmodified, invsub, tax, invtotal, date, closed, company, name, street, city, state, zip, country, phonenum, shipcompany, shipname, shipstreet, shipcity, shipstate, shipzip, shipcountry, shipphone. All those fields now have reasonable column defaults and now no longer allow NULL.
  • Changed: rearranged some columns in quote, qline, invoice, lineitem and added some column comments for better documentation.
  • Added: the following fields were set to a valid default if they were set to NULL in the qline table: part, vinnum, make, model, manufacturer, mod, year, bodystyle, interchangenum, price, core, rank, quantity. All those fields now have a reasonable column default and now no longer allow NULL values.
  • Changed lineitem/qline.interchangenum are now limited to a reasonable maximum length.
  • Fixed: v_quote no longer references some unused columns.
  • Changed: the following fields were set to a valid default if they were set to NULL in the invoice table: document, date, lastmodified, phonenum, taxable, taxrate, tax, shipping, invsub, invtotal, paid, AppliedCredit, invbalance, CheckAuthNum, authorizationnum, trackingnum, shipcompany, shipname, shipstreet, shipcity, shipstate, shipzip, shipcountry, shipphone, shipmailing, PONumber. All those fields now have reasonable column defaults and now no longer allow NULL.
  • Changed: the following fields were set to a valid default if they were set to NULL in the lineitem table: part, vinnum, make, model, manufacturer, mod, year, bodystyle, interchangenum, price, cost, core, quantity, coreqbid, journalentryqbid, rank. All those fields now have reasonable column defaults and now no longer allow NULL.
  • Dropped: unused old_itemnum columns in qline/lineitem.
  • Dropped: unused table DEPRECATED_useroption.
  • Deprecated: the following columns in the quote table. They have been renamed for now, but will be dropped later: taxable, taxrate, type, shipping, core, notify, timeentered, qbid, qbes
  • Deprecated: the following columns in the qline table. They have been renamed for now, but will be dropped later: tax, status, store, qbid, coreqbid.
  • Changed: made the address fields consistent widths across the customer, vendor, invoice, and quote tables. Also, rearranged some address columns for easier exploration.
  • Changed: set a default value to many columns in place of NULL values. These columns have been altered to no longer allow NULL and to have a valid default value. This affects customer, vendor, and invoice tables.
  • Deprecated: several unused columns in the lineitem and invoice tables
  • Changed: wa_quote, wa_invoice now have a storeid column, and no longer reference deprecated columns. wa_quote_line and wa_sale_line also no longer reference deprecated columns.
  • Changed: now, invoice and quote now retroactively set their storeid correctly instead of defaulting to 1.
  • Added: billing address fields to the invoice table. These fields are now set retroactively for historical documents.
  • Fixed: v_parts_on_hold no longer references unused fields.
  • Fixed: t_lineitem_pre_insert now correctly runs.
  • Removed: wa_invoice view, which is redundant with wa_sale.
  • Added qline.interchangenum default per case 46984
  • Added: (case 47002) triggers to ensure newly created inventory records will get label1 through label4 copied from the associated partuse record.
  • changed: broke up a recent db update into two because one of the fields is not on every database, and I don't want to prevent the other changes in that case.
  • Changed (case 47454) the payments table now allows NULL values in the comments column to avoid errors. Also removed the invalid default of 0 for the customernum column.
  • Fixed: (case 47532) an issue where f_get_attachment_data would not work for attachments larger than 16 MiB. Now it should work on files up to 4 GiB.
  • Re-added f_get_invoice_balance because of a missing delimiter statement at the start of the function statement.
  • Fixed: database API function f_get_company_product_code was reading from a setting instead of from the store table, which is where pro stores company codes. The setting created by these checks has been cleaned up.

Crystal Reports Extension

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

Customer

  • Removed: shipping charge from quotes tab, which is unused.
  • Removed: references to several unused invoice fields.

Customer List

  • Added: (case 46371) a new clear button (hotkey: alt+c) that will clear filters/results.
  • Fixed: some minor resizing issues.

Data Management

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

Importer

  • Fixed: (case 46970) another bug with the auction importer.
  • Further fixes to solve bad auction imports.
  • Fixed: a crash on double clicking the lineitem list on a large import.

Manual Interchange App

  • Added query and query error logging based on the logfile option in the ini.

Options

  • Fixed: (case 46384) an issue where adding a payment method to all customers would throw a database error.
  • Fixed: (case 48436) a crash when deactivating a tax item that was in use on at least one customer.
  • Added: column to the configure tax items dialog to show how many invoices a tax item had been used on, since if this is > 0, the user cannot edit the tax item.
  • Added: column tooltips and good column sorting, as well as resizing the UI to better use space on the configure tax items options page.
  • Added: (case 48587) the invoice memo box now creates linebreaks when the user hits enter. Previously, the user had to use the ctrl+enter combination or paste text in.

Parts

  • Changed: part type labels are now referenced from the part type table instead of inventory.

Quotes

  • Fixed: (case 46306) an issue where hitting enter in the customer lookup would not perform a customer search like it does on the sales screen.

Report Viewer

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

Sales

  • Fixed: (case 46364) an issue where hitting clear on an unsaved invoice, then either hitting cancel or hitting save (and there is a save error) the document would be cleared anyway.
  • Added: saving invoices now sets billing address fields based on the customer.
  • Fixed: string maximum lengths have been updated to match the fields in the database.
  • Removed: references to now-unused fields.
  • Added: document store # is now saved on new invoices.

Search

  • Removed: a reference to lineitem.store when calculating sales.
  • Changed: part type labels are now referenced from the part type table instead of inventory.

Vehicles

  • Changed: part type labels are now referenced from the part type table instead of inventory.
  • Deprecated: the last use of the espmodel table has been removed and replaced with searching the `model` table instead. The espmodel table hasn't been updated for awhile, so it is being deprecated. The user should not notice any difference, but this will speed up new deployments and time for backups.

Vendor List

  • Added: (case 46371) a new clear button (hotkey: alt+c) that will clear filters/results.
  • Fixed: some minor resizing issues.

Tools

  • Fixed: (case 47700) ISO8601 formatted datetimes and times were being opinionated about timezone in the output. This had been done to resolve issues with XML communication with ebay, which always communicates in UTC, but was causing issues in right-click graphing and other javascript exports where the times were not in UTC timezone. This would cause local times to be written as though they were UTC, which could cause display issues to the user. Now, timezone is an optional additional argument that opinionated time formatting code can use.
  • Added: ITDialog/ITView/ITPropertyPage now have extra tooltip handling code where, if a control doesn't have a registered tooltip, and it is an ITLabel, it looks for the control it is labeling and attempts to get the tooltip for that control.
  • Performance: removed a lot of the 'guard rails' on list control operations. This was taking as much as 40% of the time to load a bunch of stuff onto Presage' sampling history.
  • Performance: skipping some invalidation of the list control when redrawing is locked. This speeds up intensive load operations somewhat.
  • Performance: optimized several high-traffic areas in the list control.
  • Added: ITPropertySheet now has support for icons/bitmaps in property page tabs, just pass a valid icon resource ID to AddPage.
  • Added: support for page icons to ITPropertySheetParent::AddPropertyPage.
  • Added: if the user uses a hotkey to activate a property page, it should now correctly set focus into that page. This only happened in some scenarios before.
  • Fixed: depending on where the user's focus was, hitting a hotkey (alt + <key>) to activate a property page or button might not work correctly. This would occur in situations with 'nested' property sheets, when the user's focus was in a child sheet. Now those hotkeys should 'float up' to be handled by parent sheets and forms.

Reports

Default Invoice (Invoice11in.rpt)

  • Changed: (case 46793, case 47079) modernized field references

Default Quote (Quote11in.rpt)

  • Changed: (case 46676) updated report field and font sizes to more closely match the Invoice report.
  • Changed: (case 46793, case 47079) modernized field references

Default Tags (Tag.rpt)

  • Changed: (case 47079) modernized field references

Invoice7in.rpt

  • Changed: (case 46793) modernized field references

Labels (Label.rpt)

  • Fixed: (case 46709) saved 2x4 TSC printer settings with the report
  • Fixed: (case 46709) moved up logo underlay and made the header smaller
  • Fixed: (case 46709) moved the logo to a detail section to avoid issues with printers that don't understand how headers work
  • Changed: (case 47079) modernized field references

Labels 5160 (Label5160.rpt)

  • Changed: (case 47079) modernized field references

Labels 5160 - Simple (Label5160Simple.rpt)

  • Changed: (case 47079) modernized field references

Lost Sales (LostSales.rpt)

  • Changed: (case 46793, case 47097) modernized field references

Pick List (PickList.rpt)

  • Changed: (case 46793, case 47097) modernized field references

Quote7in.rpt

  • Changed: (case 46793, case 47097) modernized field references

Sales By Vehicles (SalesReportByVehicles.rpt)

  • Changed: (case 46793) modernized field references

Vehicles By Date

  • Added: (case 46184) a new report based on the older Purchased Vehicles report that gives basic information about reports Purchased OR Entered in a date range. Whether it cares about Purchase Date or Date Entered is based on a parameter.