Acctivate Version 12
Version 12.3
Inventory Manager, Create Reorders, Create Assemblies, ShipStation sales order import, OneDrive/SharePoint integration for storing note and email attachments, Edit Product Substitution window, Manager window improvements, improvements to the presentation of Product Prices, Product Vendor, and BOM information. Improvements to the Payment, Vendor, and Activities lists.
12.3 sp2
Version 12.3 sp2 was made generally available on October 9, 2024 (Build 6736)
⭐ = Features and improvements
Attachments
- Fix the error "Sequence contains no matching element" that may occur when trying to upload a file to SmartVault.
- Fix the error "OneDrive returned a server error: Either 'folder' or 'file' must be provided, but not both." that would occur when converting a Quote to a Sales Order when there are no attachments on the quote yet.
Create Company
- Fix the error "Error Code: 91:0x0000005B Description: Object variable or With block variable not set Application Module: fCreateCompany, Subroutine: CreateCompanySync, Source: Acctivate" that would occur during the initial Create Company import when no inventoried products exist in QuickBooks.
Custom Fields
- If Custom fields with the same name and data type are created for Sales Orders and Sales Invoices, or for Sales Order Detail and Sales Invoice Detail, the values of these custom fields will automatically be copied from the order fields to the corresponding invoice fields. This fixes an issue where this behavior quit working.
Customer
- In the CYMA edition of Acctivate, creating a new customer will not require a Contact ID unless a Contact Name has been entered. This fixes an issue where each new customer required a Contact ID to be entered, even though it's not a required field.
EDI
- Fix an issue where "No Pack" EDI shipments used the transaction type value "856SOPI" in the 856 transaction file, rather than the correct "856SOI" value.
- Fix an issue where forwarding an email from Acctivate would not allow the user to enter a To address.
- Fix an issue where attempting to send an email without first configuring email in Acctivate could result in the Email window showing a message that the email couldn't be sent, but then the Email window cannot be closed. Now, after receiving the message that email needs to be configured, the window can be closed.
Inventory
- Hide cost related columns in the Transactions list when a user's View Cost permission is set to No.
- In a saved inventory session, using Ctrl+F will open the search pane and the cursor will automatically be placed in the search field. This fixes an issue where Ctrl+F only showed the search pane but did not focus the cursor in the search field.
- Fix an issue where users with View Only Product permission could remove products from a warehouse using the Inventory Manager window. As part of this change, the "Delete Warehouses" Action in the Inventory Manager has been renamed to "Remove From Warehouse".
Inventory Assembly
- Fix an issue where Assemblies created from the Create Assemblies window would be converted to an integer, resulting in residual decimal quantities being left as needing to be assembled. Only serial numbered assembly products will be converted to an integer.
- When splitting an Assembly Transaction that was created from a sales order, the new Assembly Transaction will also be linked to the original order. This ensures that the new transaction's posted qty updates the original order.
Inventory Receipt
- Change how Inventory Receipts for a foreign currency calculate a unit cost and amount so that it's more accurate and generally more consistent with its related Purchase Order. A difference in the amount for a Purchase Order line and Inventory Receipt line could occur, and in some cases may still occur, due to the exchange rate and rounding methods.
Landed Cost
- In QuickBooks Online companies, fix the error "Multiple-step operation generated errors. Check each status value. Creating landed cost bill header" that would occur if creating a Landed Cost session with a vendor ID longer than 41 characters. Now, the vendor field supports up to 500 characters to match QuickBooks Online.
- Fix an issue where vendor bills created from a Landed Cost transaction in a multi-currency company would not have a currency assigned.
Lookup
- In the Product lookup, only Inventoried or Special Order Only products will show an Available or On Hand quantity. Other items types (Labor, Non Inventoried, Shipping, Other Charge) will return null, rather than zero.
- In QuickBooks Online companies, sync will check whether or not account numbers are being used and store the option so that the GL Account lookup window will display account number when they're enabled in QuickBooks Online.
- Fix an issue where typing Korean characters into the Find box of the Lookup windows would cause the typed text to be cleared, unless the first character typed was a non-Korean character such as a space.
Mobile
- The default warehouses in the Acctivate Android Transfer module is based on the warehouse assigned to the default Branch found in the Customer Options section of Configuration Manager. If the default warehouse is inactive or missing, the Transfer warehouses will now default to the first warehouse in the list. This fixes an issue where the From and To warehouse fields were blank and selecting a warehouse would cause the app to crash.
- Fix an issue in Android Picklist Picking where scanning a location barcode would increment the picked quantity for a line with the same location. Now, scanning a location barcode will show "Found location 'Some Location'" if it matches the current or any line's location. If it matches a different line, the user will be taken to that line.
Product
- Kit products are not compatible with average cost-based pricing methods (such as Average Cost + Amount or Average Cost + Percent). As a result, when the default Price Type in Configuration Manager is set to one of these methods, kit products will override this setting and default to a Price Type of "Price."
- In the list windows (Products list, Customers list, etc.), if the currently selected tab does not apply when switching between records then the first tab will be selected. E.g., if viewing the lot numbers tab in the Product list and you switch to a standard control product, the Product tab will become selected.
- In the Product list sidebar, change the headings to match the quantities being displayed. Recent Orders and Recent POs now use the column header "Ordered". Also, canceled POs are excluded. The Recent Invoices section now shows the invoiced quantity and is labeled as "Invoiced".
- Modify the LotSerialLocationSummary data view to increase performance. This should prevent timeouts from occurring when viewing a large list of Lots by Location in the Lots tab of the Product list.
- Make a change to the Edit Product window so that a new connection is established when there is an interruption between the workstation and the database. This should prevent the "Communication Link Failure" error.
Purchasing
- In QuickBooks Online companies, sync the balance of Purchase Invoices/Vendor Bills back to Acctivate.
- Fix an issue in QuickBooks Online companies where entering a Purchase Invoice with a length of 21 characters would result in the error "Acctivate error (-2147217887:0x80040E21) Multiple-step operation generated errors. Check each status value. , fPurchaseInvoice:SavePO, Source: Microsoft Cursor Engine".
Reports
- When checking in a modified report file (.rpt), the Report Catalog and Report Selection Criteria windows will be automatically closed if they're open. This ensure that the checked in file is used, rather than report data cached with those windows.
- Make the Manage Reports window modeless, but limit it to only one copy open at a time. Also, rename the window's caption to Manage Reports to better distinguish from the Report Catalog.
Sales Order
- If a custom kit with variable components has been partially invoiced and the user tries to delete the component, a message box will appear stating "This line has been invoiced and cannot be deleted." Previously, the message was reported as an exception error when it should have been a message box. Invoice lines must be associated with an order line, therefore deleting a partially invoice component is not allowed. However, you may change the component quantity to zero which excludes it from picking and packing documents and the subsequent invoice.
- When copying a sales order, the tax percentages will be refreshed in case the tax rate has changed since the original order was created.
- When creating a sales invoice, the Packages, Weight, and Distance values entered in the sales order's Create Invoice window are written to the fields NumberOfPackages, PackageWeight, and DeliveryMiles in tbOrders, then copied to their corresponding fields in tbInvoice, then finally the fields in tbOrders are cleared. Prior to this change, NumberOPackages and PackageWeight were not being copied to tbInvoice.
- Fix an issue where cost based prices were not updated after changing the warehouse on a sales order.
- In QuickBooks Online companies with only a "Tax" and "Non" tax code, the tax column of the Enter Sales Order window will simply show a checkbox. When checked, the line is taxable. When unchecked, the line is non-taxable.
- In the Invoice list, disabled the Void button for users who do not have the Void Invoices permission.
- Add back the keyboard shortcut Ctrl+Shift+B to open the Kit Components window in the Enter Sales Order window.
- When closing a Kit or Assortment Components window, the cursor focus will return to the grid, rather than leaving the focus on the Components button of the detail.
- For Numeric custom fields, only the necessary decimal places will be displayed in custom fields. For Currency custom fields, at least two decimal places will be displayed. This fixes an issue where unnecessary trailing zeros after the decimal were displayed.
- Fix the error "Incorrect syntax near the keyword 'IN'" that would occur when changing the Sales Order lookup window to search by the Contact Email.
Sales Tax
- Adjust the tax rounding on sales orders in QuickBooks Online VAT editions to match how QuickBooks Online calculates tax. This fixes an issue where Acctivate and QuickBooks Online could calculate tax slightly different under certain scenarios.
Synchronization
- When a journal created by Acctivate needs to be updated, for example due to a cost recalculation, the QuickBooks Online background sync will delete the original journals before resyncing journal. This fixes an issue where the background sync would try and resync the journal without removing the original journal, resulting in the sync error "Duplicate Document Number Error".
- Include journals in the QuickBooks Online background sync. Journals sync to QuickBooks Online when they're created or updated, however if an error occurs, for example due to a journal number already being used, the background sync would not try and sync it again.
- Fix the QuickBooks Online sync error "Object reference not set to an instance of an object." that would occur during the syncing of Charges.
Web Store
- In QuickBooks Online companies, fix an issue where customers imported from a web store did not use the Default Values for the Tax Exemption Reason. When a customer is imported from the web store, a mapped value or the Default Value for the Tax Exemption reason will be used. If creating customers from the sales order (e.g., guest customers), the Default Values for Tax Code and Tax Exemption Reason in the Customer section of the web store template will be used if set. If a Default Value for Tax Code is not set, then the default tax code for new customers, found in the Customer Options section of the Configuration Manger, will be used.
- Add support for configurable products in Adobe Commerce integrations. Acctivate will update Adobe Commerce integrations to support configurable products but only if the Order Detail xpath has not been changed from the default and neither has the detail_name (Product Description) source field Select and Match xpaths.
- Fix the error "Run-time error '-2147217887 (80040e21)': Non-nullable column cannot be updated to Null." that may occur when attempting to edit a BigCommerce web store template.
- Change the description of the web store option "Export empty packages" to "Export shipments having empty packages". In the Big Commerce web store connector, if that option is enabled then only packages with items associated with them will be exported because Big Commerce requires a list of items for each tracking number. If the shipment was not packaged in Acctivate, then all items invoiced will be associated with the first tracking number and exported; additional tracking numbers will not be exported.
12.3 sp1
Version 12.3 sp1 was made generally available on August 13, 2024 (Build 6727)
Business Activity
- Improve the performance of opening the Business Activity Billing wizard by improving the SQL queries used to get the data for the grid.
- Fix an issue where Sales and Service Orders created from a Business Activity would not be assigned the customer's default Marketing Code.
Custom Fields
- Fix the error "Object reference not set to an instance of an object." that would occur in the CYMA edition of Acctivate with custom fields set up.
Customer
- Fix the error "Item cannot be found in the collection corresponding to the requested name or ordinal." that would occur in QuickBooks Online companies when trying to create a job for a parent customer.
- Fix the error "Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record." that would occur when trying to save a new customer in the CYMA edition of Acctivate.
- Fix an issue where editing a saved email in Acctivate would cause any email attachments to be deleted.
- Fix an issue where the email window's Send button would not send an email that was generated from the report's preview window.
General
- Fix the error "Value of type 'DBNull' cannot be converted to 'Date'" that could occur in the manager windows when a date value is null.
- Fix an issue where GDI resources may not be deallocated, potentially causing an out of memory error.
- Fix an issue where rows that have been checked off in the Manager windows would not remain checked if an action had been applied and caused the rows to move to a new button or bar.
- Fix an issue where the Manager windows' buttons may display incorrectly when running Acctivate in a terminal services environment.
Import
- Fix an issue where an Inventory Receipt import for a Purchase Order would fail if the PO Number in the import file contained upper case letters.
- Fix an issue where exchange rates mapped in an Inventory Receipt import were ignored.
Installation
- Fix an issue where the installer may show placeholder values for some of the steps. Now, the installer will show messages for each step which do not rely on placeholder values.
- Fix an issue where updating Acctivate from a version prior to 11.1 to version 12.2 or later may result in a run-time error, or some other error, due to the installer uninstalling components required for the current version.
Inventory
- ⭐ Improve the message displayed when attempting to add ineligible products to the Create Reorders or Create Assemblies window. Now, the reason the product(s) can't be added is included in the message as well as the number of products associated with each reason.
Landed Cost
- ⭐ When loading a transaction into the Enter Landed Cost or Enter Transfer window, the user will be asked if they wish to continue if the selected transaction has already been loaded.
- Reduce the number of queries performed when loading transactions into the Enter Landed Cost window. The improvements to the queries should improve the performance of loading large transactions into a Landed Cost session.
Mobile
- Fix an issue where using the lot/serial number lookup in the Android Sales Order Picking module would result in the selected lot/serial number not being added to the Add Lot/Serial screen.
- Fix an issue in Android Mobile Sales Order Picking where changes to the Picked quantity using the touchscreen would not be saved.
Product
- In the Lots grid in the Lots tab of the Product List, the location column has been removed since a lot may be stocked in multiple locations. Instead, the By Location grid can be used to view which locations lot numbers are stocked in.
- Use "Date Received" rather than "Received" as the column header in the Lots grid in the Lots tab of the Product list since there is already a column named "Received" which shows the received quantity.
Reports
- Fix an issue where attempting to email an attachment with with invalid file name characters from Acctivate would result in an error such as "Acctivate error (-2147024893:0x80070003) Could not find a part of the path..." Now, these invalid characters are removed from the attachment name.
Sales Order
- Remove the Cancelled button from the Workflow Statuses bar of the Sales Order Manager. Also, only show the Picklist button in the Workflow Statuses bar of the Sales Order Manager if Picklists are enabled.
- Fix the error "Item cannot be found in the collection corresponding to the requested name or ordinal. create tbShipment* records on Order..." that would occur in the CYMA edition of Acctivate when adding shipment tracking information in the Create Invoice window.
Synchronization
- Add some debug logging for a QuickBooks Online sync issue where it seems like Acctivate creates a new record in QuickBooks Online, but doesn't update the TxnID/ListiD on the Acctivate side, so it's left NULL and sync thinks it needs to create it again, which then causes an error from QBO saying that it's a duplicate.
- Fix an issue where merges of customers, vendors, and GL accounts in QuickBooks Online were not properly handled by the Acctivate sync.
- Fix an issue where Acctivate would sync Credit Memos with tax to QuickBooks Online with a negative tax amount, reducing the overall credit amount.
- When syncing an email address to QuickBooks Online, if the address is "Redacted", it will be synchronized as "redacted@redacted.invalid", since QuickBooks Online requires an RFC822-compliant address.
- Fix an issue where payments entered in QuickBooks Online and synchronized to Acctivate may be assigned the incorrect accounts receivable account. The QuickBooks Online API may not indicate which accounts receivable account was assigned to the payment, therefore during the sync Acctivate assigns the oldest A/R account for the customer's currency to the payment. However, inactive A/R accounts were not being excluded which could result in the wrong A/R account being assigned.
- Fix an issue where Customer Jobs relationships created in Acctivate would not sync to QuickBooks Online as a Customer Job relationship.
Vendor
- Fix an issue where text entered into the Look for search box on the Products tab of the Vendor list would not filter the list of products.
Web Store
- ⭐ Update the default Shopify web store mappings so that the Shopify Order's Contact Email Address is mapped to the Acctivate Sales Order's Contact Email Address field.
- ⭐ Update the default Shopify web store template to import in the payment information from the last payment transaction associated with the order. Previously, the payment information from the first payment transaction was used. If multiple payment transactions for an order occurred, for example due to the payment failing, the last one would be the successful transaction and therefore should be imported.
- Fix an issue with the eBay web store sync where the sync could not be reestablished by a user once the eBay sync token had expired. Now, once the sync token has expired, the session ids and token ids will be cleared and the log will contain a hyperlink that allows reestablishing the sync.
- Update the default Shopify web store template to use the current quantities and current total price instead of the quantity and total price fields. Also, ignore details with current quantity of zero or less. This fixes an issue where edits to the quantities and prices on a sales order in Shopify were ignored when the sales order was imported into Acctivate.
- Fix an issue where the LastTransactionDate and LastWebStoreProductUpdateDate web store values weren't being written to the database. Now, after a web store sync, the LastTransactionDate is updated to the most recent LastModifiedDate value of products marked as "Available on web" for the web store. LastModifiedDate comes from the ProductAvailabilityByTemplate data view For BigCommerce web store integrations, the LastWebStoreProductUpdateDate is updated to track the last updated date of products in the web store in order to maintain the tbImportSku table.
12.3
Version 12.3 was made generally available on June 26, 2024 (Build 6719)
Attachments
- ⭐ Add support for storing email and note attachments in Microsoft 365 (OneDrive / SharePoint).
Business Activity
- ⭐ Update the Business Activities list window to use a style consistent with the other list windows. Change the Time and Materials grids to support displaying or hiding optional columns.
Create Company
- ⭐ Allow leaving inventoried products active in QuickBooks Online after the Create Company import completes, however the on-hand quantity will still be set to zero for inventoried products. Leaving the products active keeps the product names unchanged since deactivating products appends them with "(deleted)". That allows for reprinting historical invoices and other reports from QuickBooks Online.
Database Maintenance
- In Acctivate Database Maintenance, if there's an error connecting to the Acctivate data source, disable just about all of the menu items except for Database Sources so that the connection information can be corrected.
General
- ⭐ In the Manager windows (Business Activity Manager, Inventory Manager, Purchase Order Manager, Sales Order Manager), add the ability to group by fields and search the grid of a filtered button.
- ⭐ Add support for selecting records in a button of the Manager windows using a USB scanner configured with a carriage return/line feed (Enter key) suffix after every scan. This makes it easy to quickly select records by scanning barcodes with a USB scanner.
- ⭐ In the Sales Order Manager, Purchase Order Manager, and Business Activity Manager, the Due Date column will be color coded based on the date in relation to today. Green indicates that the date is 8 or more days in the future, Orange indicates that the date is due in the next 7 days, Red indicates that the date is one or more days overdue.
- ⭐ Check of a range of rows in the Manager windows when clicking anywhere in a row, then holding the down the shift key while clicking on a row above or below the first row. The first and last rows clicked and all rows between will be checked off. There is no need to have an option to select rows without checking them, therefore the Selection menu has been removed and replace it with the Check by ID button.
- Reduce the number round-trips that occur when executing SQL queries during the starting of Acctivate and opening of sales orders.
Inventory
- ⭐ When adding an inactive product to an inventory transaction, a pop-up warning message will appear indicating that the product is not active.
- ⭐ Remove horizontal grid lines from the Enter Inventory Transaction windows.
Inventory Assembly
- ⭐ Add the Create Assemblies window, replacing the Assemblies tab of the Business Alerts window.
- ⭐ In the Enter Assemblies window, if a serial numbered assembly product is entered and the assembly quantity is changed to something other than -1, 0, or 1, the user will be asked if they want to split the assembly quantity into individual transactions, each with a quantity of 1. Choosing Yes will auto create the transactions while choosing No will change the quantity of the current session to 1.
Inventory Receipt
- Fix an issue where data entered into the Lot/Serial Specification field pop-out window would save to the Note field of the Enter Receipts window.
Login
- ⭐ During login, if a database upgrade is required and the user lacks administrative privileges, a list of Acctivate system administrators who can perform the upgrade will be displayed.
Mobile
- ⭐ When scanning a lot/serial barcode while in the order details screen of Android Sales Order Picking, the Add/Edit window will not open unless the product is catch weight and the weight is not in the barcode. Instead, lot/serial attributes, e.g., the location and expiration date, will appear on the order detail screen below the lot/serial number.
- ⭐ Add a workflow status filter to Picklists picking in Acctivate Mobile on Android.
- ⭐ Add an option to filter on all Branches in Android sales order picking, rather than filtering on one Branch at a time.
Payment
- ⭐ Improve the presentation of payment information in the Payment window.
- Fix an issue where a payment discount was being removed from the Amount Due column in the Payment window. The Amount Due is the total amount due before payments and discounts.
Product
- ⭐ Add the Inventory Manager.
- ⭐ Improve the presentation of the BOM tab of the Product list. The BOM tab is now searchable and the Components grid has optional columns, including a new Extended Average Cost column.
- ⭐ Improvements to the presentation and filtering capabilities of the Prices tab of the Product list.
- ⭐ Improve the layout of the Vendors tab of the Product window.
- ⭐ Create a standalone window for Adding and Editing Product Substitutions from the Substitutions tab of the Product list.
- ⭐ Add "Type" as an optional column to the Purchasing button of the Product List's Transactions tab which displays "Drop Ship PO", "Special PO", or "PO" for standard purchase orders.
- Fix an issue where "P" lines on a Special Order PO would not show in the "On PO" quantity for a product warehouse.
Purchasing
- ⭐ Add the Create Reorders window, replacing the Reorders tab of the Business Alerts window.
Reports
- ⭐ Update the Inventory Reorder, Inventory Reorder by Supplier, Inventory Reorder Proof, and Inventory Reorder Proof by Supplier reports to use values calculated in the database views rather than complex formulas in Crystal Reports.
- Fix an issue where printing a posted count from the Transactions list would result in the error "Report definition for 00000000-0000-0000-0000-000000000000 not found." Now, printing an unposted count session from the Transactions list will print the Count Sheet while printing a posted count session will print the Inventory Variance Report.
Sales Order
- ⭐ Add support for syncing invoices to QuickBooks Online with the "Online payments" options enabled if the QuickBooks Online company has online payments enabled.
- ⭐ Remove horizontal grid lines from the Enter Sales Order window.
- ⭐ Add "Send to Excel..." to the right-click context menu of the Enter Sales Order window's Lot #s tab.
Synchronization
- When querying for vendor bills and purchase invoices from QuickBooks Desktop, use an iterator to get them in chunks rather than querying them all at once.
Vendor
- ⭐ Improvements to the presentation of information in the Vendors list.
Web Store
- ⭐ Import sales orders from ShipStation for fulfillment in Acctivate.
Version 12.2
Android Inventory Assemblies, improved Sales Order data entry grid, updated Inventory Receipt, Inventory Assembly, and Landed Cost data entry grids, add Customer Ship-To, Contacts, and Prices tabs to the Customer list, improvements to the Sales, Sales Invoice, Purchase Order, and Purchase Invoice data presentation windows, improved installation process and infrastructure.
12.2 sp3
Version 12.2 sp3 (Build 6651) was not a general release, however the fixes and improvements below are included in the 12.3 general release.
Configuration
- Increase the length of the email password field to store encrypted passwords that are up to 100 characters in length.
Import
- Fix the error "Run-time error '-2146233080 (80131508)': There is no row at position 0." that would occur when attempting to import a transaction when no warehouse has been set up. Instead, the error "Warehouse is not a valid choice" will be returned.
Inventory Assembly
- Fix an issue where the assembly product's location in the Enter Assembly window wouldn't be updated after changing the assembly transaction's warehouse.
- Fix an issue where the Warehouse dropdown in the Enter Assemblies window showed the assembly product's description rather than the warehouse description.
- In the Enter Assemblies window, only show the lot/serial fields for number when invoiced assembly products if the assembly session was created from a sales order.
- Starting in version 12.2, assembly sessions for serial numbered assembly products were restricted to a quantity of 1. Now, existing assembly sessions for serial numbered products with an assembly quantity greater than one can now be split off. Serial numbered assembly session with a quantity greater than 1 which were created prior to 12.2 were blocked from being split off, but now it is allowed so that these sessions can be completed.
- During the posting of an assembly session, wrap the posting of each inventory transaction in its own SQL transaction to reduce the amount of time SQL Transactions are kept open. Also add an index that speeds up querying ProductWarehouseSummary by GUIDProduct and GUIDWarehouse. Together, these changes should prevent other users from experiencing a lock up while another user posts a large inventory assembly session.
Inventory Receipt
- After changing the PO Number for a receipt transaction in the Enter Receipt window, make the first row of the grid focused and visible. This fixes an issue where the grid may appear to not load when actually the Enter Receipt window was scrolled past the last line of the grid.
Landed Cost
- Fix an issue where the Landed Cost allocation percentage and amount for Landed Cost details was incorrect for products which had a Landed Cost Factor other than one.
- Fix an issue where changing the warehouse on a Landed Cost wouldn't update the Quantity or Value fields.
Sales Order
- Make improvements to reconnecting to the database when the SQL connection is lost temporarily which should prevent "An existing connection was forcibly closed by the remote host" or "Communication link failure" errors. Also, make the sales order window more resilient to lost connections.
- Fix the error "Either BOF or EOF is True, or the current record has been deleted." that would occur when setting a Line Type for a sales order detail line before a product has been added.
- In VAT Tax editions, fix an issue where the Tax Code field in the Enter Sales Order window would be set to the default tax code for new Customers. That behavior would potentially result in a Tax Code override of the sales order's detail lines. Now, if customer's tax code is blank, the Enter Sales Order window will also be created with a blank tax code and the product's Sales Tax Code will be honored.
Sales Order Import
- Fix an issue in the VAT editions of Acctivate where tax codes mapped at the detail level in the Sales Order import were ignored. If no detail tax codes are mapped then the customer's default tax code will be used. That fixes an issue where the default taxable tax code for new products was used as the tax code override rather than the customer's assigned Ship To tax code.
Sales Tax
- Acctivate companies that are integrated with QuickBooks Online and AvaTax will no longer send the AvaTax calculated tax amount as an invoice line since Acctivate now passes the AvaTax calculated tax amount to QuickBooks Online in the invoice header tax field.
Shipping
- Fix an issue where importing a 945 EDI transaction file containing kit components would result in a shipment being created without the parent kit item.
Synchronization
- ⭐ In QuickBooks Online companies, validate that contents of customer and sales order email fields to ensure it's a valid email address format. This prevents sync errors with QuickBooks Online due to improperly formatted email addresses.
- ⭐ When syncing invoices from Acctivate to QuickBooks Online, the Product ID will now be included with the product description in the Description field of the QuickBooks Online invoice.
- Fix the QuickBooks Online sync error "The account period has closed and the account books cannot be updated through through the QBO Services API. Please use the QBO website to make these changes" that would occur when an invoice in a closed period is printed in QuickBooks Online or emailed to a different email address, therefore updating the invoices email address. These changes in QuickBooks Online will not trigger a re-sync of the invoices. Also, null and zero tax amounts will be treated the same to avoid an unnecessary update to invoices.
- Fix an issue where invoice quantity and unit fields were blank for invoices imported from QuickBooks Online.
- Fix the QuickBooks Online sync error "Cannot cast DBNull.Value to type 'System.Guid'. Please use a nullable type." that would occur if the invoice has a null GUIDTaxCode.
- Fix the QuickBooks Online sync error "Column 'CurrencyCode' is constrained to be unique. Value 'CAD' is already present." which may occur during the currency portion of the sync.
- Fix the QuickBooks Online sync error "The account period has closed and the account books cannot be updated through through the QBO Services API." that would occur after a change to the GL accounts associated with a Product Class that had been used on invoices in a closed period. The QuickBooks Online sync would default to updating all transactions rather than just using the new GL account for new sales transactions.
Web Store
- Fix an issue where the web store shipment export would not include kits if the kit's components were packaged in different cartons. Now, the shipment export will start with the first package and continue summing kit components across all packages available for export. The last package that contains the remaining components will be the package that has its tracking number associated with the kit in the web store.
12.2 sp2
Version 12.2 sp2 was made generally available on April 11, 2024 (Build 6639)
Create Company
- Improve the method for copying inventoried products during the Create Company process to prevent "Out of memory" errors from occurring. Also fix an issue where using the option is selected to preserve the item hierarchy could cause an "Invalid use of null" error.
Database Maintenance
- Prevent a Run-time error from occurring when launching Acctivate Database Maintenance. This could occur when Acctivate needs to update the structure of the Acctivate master DB, but the user Acctivate is connecting as doesn't have the proper privileges. Instead of the error, the SQL user can be changed to a user with privileges.
- Prevent saving invalid connection information for the Acctivate database in Acctivate Database Maintenance. Database Maintenance can now be launched even when it can't connect to the Acctivate database. This allows corrections to the Acctivate source's connection information.
- In CYMA editions, fix the error "Run-time error '30434': Invalid Parameter" that would occur when creating a new database source in Acctivate Database Maintenance.
- Display a user friendly message when attempting to save an Acctivate Data Source in Acctivate Database Maintenance with missing information.
General
- When a user chooses to delete a row from various grids in Acctivate the default button in the delete confirmation dialog window will be Yes, delete.
- Fix an issue where the What's New popup was not displayed for some users. Future updates to the What's New popup will be displayed to these users.
- Fix an issue where the LogDirectory option for a company site was ignored.
Installation
- Fix an issue where the Acctivate installer couldn't download AccessDatabaseEngine.exe. Additionally, fix an issue where the installer would unnecessarily download components that were already installed.
Inventory Assembly
- Fix an issue where zero quantity component lines were removed when an assembly session was posted.
- Fix an issue where the related sales order number was not displayed in the Session dropdown of the Enter Assemblies window.
Inventory Receipt
- Fix an issue where entering a lot number for an assembly product or receipt line would cause the location to revert back to the product's primary location. Also, improve the text that appears in the Enter Inventory Transaction windows when no session exists.
- Fix the error "Product...cannot have a lot number because it does not use Actual costing." that could occur when the sum quantity of Inventory Receipt lines for a single product and lot number is zero.
Landed Cost
- Fix an issue in VAT editions of Acctivate where creating a new Landed Cost session could lead to Acctivate hanging then closing unexpectedly if a default Landed Cost tax code had been set in the Inventory section of the Configuration Manager.
- Fix the error "Conversion from type 'DBNull' to type 'Decimal' is not valid." that would occur when attempting to post a Landed Cost with lines having no cost allocated to them. New Landed Cost transactions will support having lines with zero cost, however existing Landed Costs may need to be edited and saved before posting to prevent the error.
- Fix an issue where lot/serial numbers could be selected for a non-actual cost product in the Enter Landed Cost window. Lot/serial products which are not actual cost allocate landed costs at the product warehouse level, not the lot/serial level.
License
- Fix the error "UNSAFE ASSEMBLY permission was denied on ... database 'master'" that may occur when starting Acctivate.
Product
- Fix an issue where the "Update open transactions with new product ID?" prompt would appear after changing a product's Product ID.
Purchasing
- Fix an issue that would occur when attempting to post a Purchase Invoice with tax assigned to an associated Landed Cost in VAT editions of Acctivate.
Sales Order
- Add an index on tbPicklistDetail.GUIDWHLocation that includes several other columns to improve the performance of the LocationSummary view.
- Fix an issue where the sales order detail grid would no longer be the focus of keyboard inputs after dismissing a popup message box. Now, after dismissing the message box, the next editable grid field will be the focused field.
- Fix an issue where the Warehouse column wasn't display in the Lot/Serial dropdown of the Enter Credit Memo window.
- Fix an issue where a completed picklist could be reopened by using the Picking Completed action. This reopened the picklist with no way to mark it completed again other than voiding the related invoice and then recreating the invoice. Now, when a picklist is completed, the Picking Completed action is not displayed.
- Fix an issue where the Cancel Order window only supported cancellation reason text up to 50 characters in length.
- Fix an issue with the availability computation in the lot/serial and location dropdowns of the Lot/Serial tab of the Enter Sales Order window.
Shipping
- Disable the ShipStation integration if at least 25 "401 Unauthorized" errors occur and it has been more than 24 hours since the last successful sync. This fixes an issue where the ShipStation integration would be disabled due to an unexpected and intermittent 401 Unauthorized error returned by ShipStation.
Synchronization
- Fix an issue where payments/credits applied at the time of invoicing in Acctivate would sync to QuickBooks Online but would not be applied to the invoice.
- Fix an issue where customers would sync to QuickBooks Online immediately after being created from a Customer import, despite the option "only sync new customers with transactions" being enabled.
- Change how Acctivate calculates and rounds sales tax for a Sales Tax Group in QuickBooks Online companies to match the method used by QuickBooks Online. The Acctivate computed sales tax amount will be included on invoices sent to QuickBooks Online rather than letting QuickBooks Online compute it.
- Fix the error "Invalid use of Null Getting department information" that could occur when creating a sales or purchase invoice when QuickBooks Online locations are enabled, but the mapping hasn't been configured in Acctivate yet.
12.2 sp1
Version 12.2 sp1 was made generally available on February 16, 2024 (Build 6630)
Business Activity
- Fix an issue where some Business Activity header fields may not appear populated when opening the Enter Business Activity window.
Create Company
- During the product import from QuickBooks Online, the purchase cost will be imported as the preferred vendor's price.
Customer
- Fix the error "Invalid column name 'SalespersonID'." that may occur when opening the Customer list while logged in as a user who has their access restricted by salesperson.
General
- Fix an issue where if you typed in an address box, the first letter you typed would cause the Revert button to become visible and would take the focus out of the address field, requiring you to click back into the address box to continue editing.
Import
- Fix an issue where the Customer import would fail if the Price Code field was mapped but the source value was empty or a default value was used.
- Fix an issue where the Customer import would not prompt to save an exception spreadsheet if import rows had failed due to an error.
Installation
- When upgrading to version 12.2, the installer will copy its installation files to the server's AcctivateData\Update directory if it exists.
- Fix an issue where the Acctivate installer may not write SQL Server connection information to the acct.ini if custom connection information is used during an Acctivate Database Server install.
Inventory
- Fix an issue where the posting progress bar may not show or properly update when posting an inventory transaction.
- Fix an issue where the Restore Settings option wouldn't restore the inventory transaction grids back to their default layout. This change requires that the inventory grids will be restored back to their default layout after updating.
Inventory Assembly
- Fix the message that is displayed when posting an assembly session that has components with negative quantity on hand prior to the Assembly session date. The message would incorrectly display the warehouse for the assembly product, not the component products.
- Increase the width of the Assembly Product ID field in the Enter Assembly window so that more of the Product ID is visible.
- Fix an issue where assembly component notes would not carry over to the Enter Assembly window.
- Fix the error "Cannot insert explicit value for identity column in table 'tbINVTransactionDetail'..." that would occur after an assembly component line is split due to not enough lot/serial numbers being available.
- Allow numbered when invoiced components to be assigned an lot/serial number when used in an Assembly transaction.
- Fix an issue where the component lookup in the Enter Assemblies window only included Inventoried items.
- Fix an issue where creating an assembly session from a sales order may result in the assembly transaction have a location that does not match the location of the sales order detail line and also result in the error "Error in [SalesOrder].[AddAssemblyTransaction].New assembly transaction could not assign a GUIDWHLocation." being logged to the Acctivate log file.
Inventory Issue
- Fix the error "Column 'Active' does not belong to table tbGLAccount." that would occur when selecting a GL account in the Enter Inventory Issue window in the CYMA edition of Acctivate.
Inventory Receipt
- Change how the Enter Receipt window is generated from a Purchase Order to fix an issue where the Enter Receipt window may open with an unnecessary vertical scroll bar and scroll position.
- Fix the error "The parameterized query '(@RegNumber int,@TransactionNumber int,@TransactionDate datetime' expects the parameter '@Location', which was not supplied." that would occur when posting a receipt that would put a FIFO or LIFO costed product's on hand quantity into the negative (i.e., a negative receipt).
- Fix the error "Specified cast is not found" that would occur when clicking the Receive button in the Enter Purchase Order window in CYMA editions.
- Fix the error "The parameterized query '(@GUIDINVTransactionDetail Uniqueidentifier,@RegNumber int,@Tran' expects the parameter '@GUIDINVTransactionDetail', which was not supplied." that would occur when creating a negative receipt requiring multiple cost layers for a FIFO or LIFO costed product.
- Fix the error "Column 'QuantityOrdered' does not belong to table PODetail." that could occur when adding an item to a PO Receipt when the item had already been received in full.
Landed Cost
- Fix an issue where allocating a landed cost may cause Acctivate to crash due to the discrepancy allocation endlessly looping.
- Fix the error "'table' argument cannot be null. Parameter name: table" that may occur when opening the Enter Landed Cost window in VAT editions of Acctivate.
- Fix an issue where loading an inventory transaction into a Landed Cost session would also load the lot/serial number of products which are not actual cost, resulting in the Landed Cost session from being blocked from posting.
License
- If Acctivate is unable to update the user license after five attempts due to being unable to connect to the database, a message will be displayed to the user indicating that a connection issues exists.
- Prevent the error "Acctivate has lost its user license …" that may occur after a computer wakes up from sleep.
Login
- Fix an issue where the Icon Bar in Acctivate would reset every other login.
Mobile
- Fix the Acctivate Mobile error "Could not load file or assembly 'Avalara.AvaTax.RestClient...'" that would occur when attempting to submit a picked sales order in a company integrated with AvaTax.
- Fix the error "Invalid value for Sql parameter." that may occur when typing certain characters into the warehouse location lookup window on Acctivate Mobile.
- Fix an issue where changing the default form used when submitting Showroom Orders would result in the new form not appearing in the Printer assignment page of the Acctivate Mobile web service.
Payment
- Fix the error "Data at the root level is invalid. Line 1, position 1." that would occur when processing payments using Authorize.net
Product
- ⭐ If location tracking isn't enabled but a location is assigned to the warehouse then a Location card will be displayed in the Inventory tab of the Product window.
- ⭐ Update the Lot/Serial tab of the product window to include configurable columns, filtering options, and a style that is consistent with other grids.
- Fix the error "Either BOF or EOF is True" that could occur in the Edit Product window after editing custom fields, saving, and closing window.
- Fix an issue where opening the Product window from another window, e.g., the Enter Sales Order window, and clicking on the Lots tab would result in the Lots tab being blank.
- Fix an issue in the ProductTransactions data view where a product would be duplicated if it was used as a component multiple times in the same inventory assembly transaction.
Sales Order
- Fix an issue where the Lot/Serial number dropdown in the Kit Components window of the Enter Sales Order window would no longer be sorted to match the sort order in the Lot/Serial tab of the Edit Product window.
- Fix a bug where qty could be entered without a lot/serial number for Numbered When Invoiced products.
- In the Lot/Serial tab of the Enter Sales Order window, pressing Enter will move to the same field of the next row, unless it's a new lot/serial, in which the cursor will move to the Lot/Serial field.
- Fix the error "Conversion failed when converting from a character string to uniqueidentifier" that would occur when entering a lot/serial product as a drop ship line in the Enter Sales Order window.
- Fix an issue where adding a lot numbered product to a sales order with location tracking enabled could be slow.
- Fix an issue where lot numbers with available quantity may not show for lot controlled assembly products with negative availability.
- Fix an issue where Acctivate crashes when the Picklist window is closed for a completed Picklist.
- In the Enter Sales Order and Picklist windows, remove the Lot/Serial location from the lot/serial dropdown list. This matches the behavior of previous builds. Instead, the lot/serial location field can be used to select a lot/serial location.
- Fix the error "ExecuteNonQuery: Connection property has not been initialized..." that could occur when invoicing a FIFO or LIFO costed product for more quantity than is on hand.
- Add shortcut keys reminders to the Enter Sales Order grid's Move menu.
- Improve the performance of the Enter Sales Order window by only loading lot/serial inventory and location tables when they are needed, such as when creating the lot/serial details or when navigating through them.
- Fix an issue where the Special and Shipping instructions fields in the Enter Sales Order window could be edited without being in edit mode.
- Fix the error "Conversion from type 'DBNull' to type 'Boolean' is not valid." that could occur in the Invoice list when a null tax code exists.
- Fix the error "Ambiguous column name..." that would occur when viewing the Sales Order window if a sales and purchase custom field had the same name.
Sales Tax
- ⭐ Add support for selling Not for Resale products with an AvaTax integration. Acctivate will pass "Taxable" as the Exempt Override Code for Not for Resale products, ensuring that a tax amount is charged for the item despite the customer being non-taxable. "Taxable" is the default Exempt Override Code in AvaTax and therefore should not be changed in the AvaTax admin console.
Shipping
- Fix the error "Can't show non-modal form when modal form is displayed" that would occur when the Shipping Workstation background sync occurs.
Synchronization
- ⭐ Add support for mapping Branches and Warehouses to QuickBooks Online locations. Sales and credit invoices synchronized will be assigned a location that corresponds to an Acctivate Branch. Likewise, purchase invoices and journals synchronized will be assigned a location that corresponds to an Acctivate Warehouse.
- Fix an issue where certain sync errors could cause the Acctivate sync to hang.
- In QuickBooks Online companies, enable batching of SQL statements when updating tbINVTransactionDetail, to reduce the effects of latency to the SQL Server.
Web Store
- Treat the eBay web store sync response "Invalid AutoAccept price." as a warning rather than an error since inventory availability is exported, not prices.
12.2
Version 12.2 was made generally available on January 22, 2024 (Build 6621)
Customer
- ⭐ Add a Contacts tab to the Customer list. The Contacts tab displays all additional customer contacts with configurable columns."
- ⭐ Add a Ship To tab to the Customer list. The Ship To tab displays all Ship To locations with configurable columns.
- ⭐ Add a Prices tab to the Customer list. The Prices tab displays customer specific price rules.
Data Presentation
- ⭐ Improve the Contact Popup window in the list windows so that each piece of contact information can be copied.
- Update the filter button in the list windows so that the filter icon is to the left of the text "Filter".
Installation
- ⭐ Move the Acctivate company list from the configuration file (Acct.ini) to the Acctivate database.
- ⭐ Streamline the Acctivate installer steps and change the installer to connect to an Acctivate database server rather than the AcctivateData share, which is no longer required.
- ⭐ When an Acctivate database has been accessed with a newer version than the one currently installed, a message offering to download and install the appropriate version will be displayed.
- Fix an issue where the installer's "/layout" command-line option did not download all third-party components. Now, third-party component except for SQL Server, will be downloaded.
Inventory
- ⭐ When posting an inventory session with more than one transaction, the transaction count will be included in the posting confirmation message box.
- ⭐ When a new location is being entered into an inventory transaction, the "Create this location?" message box will have the No button as the focused button to prevent the user from accidentally creating new locations.
- ⭐ Move the Add Transaction, Delete Transaction, and Delete Session buttons into an Action menu in the Enter Inventory Transaction windows. Also, add a Split Transaction option to the Action menu which supports splitting an entire transaction off into its own session.
- Fix a bug where the Enter inventory transaction windows may show columns that shouldn't be shown based on changed configuration settings; e.g., disabling/enabling location should hide/show locations automatically.
Inventory Assembly
- ⭐ Add the ability to substitute a component of Custom and Process assembly products in the Enter Assemblies window.
- ⭐ Update the Enter Assemblies inventory transaction grid to support configurable columns.
- ⭐ Add the assembly quantity to the transactions drop down in the Enter Assemblies window.
- Assign the GUIDWarehouse in INVTransactionDetail for the assembly product ("P" TransactionType).
- When posting an assembly created from a sales order, the assembly quantity will be allocated to its related sales order line rather than being added into inventory and rescheduling the line. The latter could sometimes result in the inventory not actually being allocated to the related sales order if the product's warehouse availability was negative.
Inventory Receipt
- ⭐ Update the Enter Inventory Assembly window's data entry grid to a single line grid with configurable columns.
- When attempting to receive a PO that has no receivable lines, a message will be displayed stating that no lines are valid for receipt rather than creating a blank Inventory Receipt session.
- Change the behavior of how the cursor moves through the Enter Receipts window when a carriage return or Enter key is used. The cursor will move to the Product ID column of the next row in the grid however, if that next row already has a valid product selected, the cursor will move to that row's Lot/Serial # column instead. If the cursor was originally in the Product ID column and the line is lot/serial controlled, the cursor will move to the Lot/Serial # column of the same line rather than the next line.
Inventory Transfer
- ⭐ Add the ability to load the details from a previously posted Assembly, Receipt, or Transfer session into a new Inventory Transfer.
- Fix a bug where the To location in an Inventory Transfer would be cleared after selecting a lot or serial number.
Mobile
- ⭐ Add support for scanning a Purchase Order barcode in the Android Inventory Receipt module.
- ⭐ Add the Inventory Assembly module to the Acctivate Android app.
- Fix the error "Invalid column name 'PrinterDriver'. Invalid column name 'PrinterPort'." that would occur when trying to assign a printer in the Acctivate Mobile Web Service.
Product
- ⭐ Improve the layout of the Product window's Substitutions tab. Also add the option to configure which columns show.
- Make the Product ID and Description at the top of the Product window selectable. Selectable text cannot trail off with ellipsis however, so as much as the description as possible will be shown. Also make the Product ID in the Product card selectable.
- Fix an issue where the AmountOpen and AmountReceived fields of the PODetailSimple database view would show $0 and 0, respectively, until an inventory receipt had been posted for the related purchase order line.
- Fix an issue where after editing the lot/serial Specification field in the Edit Product window would continue to show the original or no value until the window was refreshed.
- Fix an issue where inactive lot were not displayed in the Edit Product window when the "Include Inactive Lots" option was enabled. Also, update this checkbox to say "Include Empty Locations" when the tab's View options is set to be "By Location".
Purchasing
- ⭐ Improvements to the layout and presentation of purchase orders in the Purchasing list.
- ⭐ Improvements to the layout and presentation of purchasing invoices in the Purchase Invoice list.
- ⭐ In the Purchase List, the Received, Invoiced, and Outstanding columns will be hidden for Purchase Orders that aren't in an Issued status.
Reports
- ⭐ In the Invoice list window, if there are multiple invoice reports available, the Print button will allow the user to choose which report to print. The first report in the list will be the Invoice report the invoice was created with.
- Fix an issue where running a report with a Crystal Reports SQL Command could result in database tables being locked until the report is closed.
Sales Order
- ⭐ Add a new ScheduledWeight column to the Orders database view that summarizes the total weight for the scheduled quantity.
- ⭐ Update the Enter Sales Order window's grid to use a single line, configurable grid. Move the buttons from above the grid into a footer panel which also display product information including the product image and primary alternates. Lot/Serial entry and custom fields have also been moved to a footer tab as well.
- ⭐ Improvements to the layout and presentation of sales documents in the Sales list.
- ⭐ Improvements to the layout and presentation of sales invoices in the Invoice list.
- ⭐ Add the total cost, margin amount, and margin percentage fields as optional sales order columns for the product's average cost, last cost, or management cost.
- Fix an issue where the invoice format selected in the Create Invoice window was ignored and the default invoice form was used instead.
- Fix an issue where clearing the Product ID field in the sales order then changing the line type to a note would result in some product related order fields not being cleared.
- Attempt to reduce the performance impact of network latency to the SQL server when creating an invoice for an order by reducing the number of SQL queries made and batching multiple SQL statements into a single batch.
Sales Tax
- ⭐ In the TaxCategory and CustomerShip data views, add a "TaxRate" column which includes the calculated tax rate for the tax category. A "PurchaseRate" and "SalesRate" column have been added to the TaxCode data view, however these will only be calculated in VAT editions where there are separate sales and purchase rates.
Synchronization
- ⭐ Include tax table changes in the QuickBooks Online background sync.
- ⭐ In QuickBooks Online companies, changes made to the discount field in QuickBooks Online will sync back to Acctivate, rather than be reverted back to their original value.
Version 12.1
Android Inventory Counts, Business Activity Manager, Customer Transactions tab, Store Custom Reports in the Acctivate database, and update Inventory Adjustment, Balance Adjustment, Issue, and Transfer data entry grids.
12.1 sp3
Version 12.1 sp3 was made generally available on November 16, 2023 (Build 6542)
Business Activity
- Fix an issue where the Status filter's list in the Business Activity Manager's button configuration was not including all statuses.
- Fix an issue where copying Business Activities with billed materials would result in the material lines as being copied as completed.
- Fix the error "Credit memo was not created. Invalid character value for cast specification" that would occur when creating a Credit Memo from the Enter Business Activity window.
Business Alerts
- When creating Purchase Orders using the Reorders tab of the Business Alerts window, a PO will be made only for the selected products in the currently filtered warehouse(s).
Configuration
- Fix an issue where the FTP Port number for a Trading Partner in the EDI section of the Configuration Manager may display the default port number instead of the port number that had been saved for the Trading Partner.
- Fix an issue where the Order Option "Allow Product Class Change on Order Entry" was not being enforced. Now, if that option is disabled, the Product Class field on a sales order line cannot be changed.
Create Company
- When querying currencies from QuickBooks Online, if more than one records is returned for a single currency then Acctivate will take the active one, or if none are active, the most recent one. This fixes the error "These columns don't currently have unique values." that may occur during Create Company.
Customer
- In the Sales list window, the customer link will be disabled if the current user has "Restrict access by salesperson" enabled and their salesperson does not match that of the sales order's customer.
- Hide recent orders, invoices, and payments if the current user has "Restrict access by salesperson" enabled and their salesperson does not match that of the record's customer.
- Fix the error "Invalid column name 'Completed'" that may occur when opening the Customer list in CYMA editions of Acctivate.
- Fix an issue where the Recent Invoices listed in the right side panel of the Customer list in CYMA editions had a blank Date column. Now, the invoice date will be displayed.
Data Presentation
- In data presentation screens, don't set the transaction filters to the default after creating or editing a saved filter.
EDI
- Fix the error "The conversion of the varchar value...overflowed an int column" that may occur when exporting an 856 EDI Transaction. The Line Number (or Line Identifier) now supports a 20 character string value.
General
- Make additional fixes to parts of Acctivate that query the database so that Acctivate is more resilient to dropped database connections.
- Fix an issue where clicking into certain toolbars, for example clicking the Edit button of the Enter Payment window, wouldn't trigger the action if the user had previously clicked outside of Acctivate.
Import
- Fix an issue where importing a default price code for a customer would pass even when the Price Code is not a valid code.
- Fix an issue where Product Imports may create products despite import errors related to invalid Product Class or Product Type values.
Inventory
- Restrict the product lookup window to only display Inventoried items when opened from the Enter Inventory Adjustment, Balance Adjustment, and Issue windows. The product lookup window opened from the Enter Inventory Transfer window is restricted to include only Inventoried and Special Order products.
Inventory Count
- Extend the SQL command timeout for the Print Count Sheets window to be 10 minutes. The longer timeout period should help prevent Query Timeout Expired errors that occur when creating a count sheet for a large number of products.
Landed Cost
- Fix an issue where Landed Cost transactions would show the wrong account in the sidebar of the Transactions list. Now, Landed Cost transactions will show the A/P Account in the sidebar when the session is posted and a landed cost invoice (vendor bill) is created for the transaction.
Mobile
- In Mobile Inventory Transfers, the From Location for lot/serial numbers will default to the primary location if the lot/serial is stocked there, otherwise it will default to the last location the lot/serial was received into. The To Location will default to the primary location of the To Warehouse.
- Fix an issue in Acctivate for Android where a lot/serial number would not appear onscreen when scanned into the Add Lot/Serial # window.
- When submitting an Inventory Receipt using Acctivate for Android, validate that the mobile license includes Mobile Receipts rather than Mobile Inventory Management. This fixes an issue where a license for Mobile Receipts would not allow submitting receipts if the license did not also include Mobile Inventory Management.
- When parsing two digit years from a supported date application identifier in a GS1-128 barcode, the resulting year will be between 49 years in the past to 50 years in the future. This matches the GS1 specification for parsing two digit date years. This fixes an issue where the year may be interpreted improperly. E.g., the expiration year "30" was being interpreted as 1930 instead of 2030.
Payment
- Fix the error "Column 'Applied' does not belong to table Pmt." that would occur in the Enter Payment window when at least one invoice was selected and then the Auto Apply button was checked.
- Fix the error "Guid should contain 32 digits with 4 dashes..." that would occur when attempting to email from the Payment window.
Product
- Fix a bug in the Components tab of the Edit Product window where a component's warehouse may change to the first warehouse in the list after changing the warehouse, clicking back into the Product ID field, and then saving.
- In the lots tab of the Edit Product and Product list windows, hide the Unit Cost and Value columns for lot or serial numbered products that are not using the Actual cost method.
- Fix an issue where modified lot/serial values in the Lot/Serial tab of the Edit Product window may display their original values even though the data has been changed by the user.
Purchasing
- In QuickBooks Online companies, accept up to 500 characters for the vendor name. This fixes an issue where the error "Multiple-step operation generated errors. Check each status value., fPO:SetupContactRS, Source: Microsoft Cursor Engine" would occur if the vendor or contact name was longer than 41 characters.
Reports
- After saving changes to a report description in the Report Catalog, update the report tree to show the new name.
- Change the Location filter in the Inventory Location On Hand report to use the LocationSummary.Location field. When multiple locations are enabled you can now filter on locations other than the primary location.
Sales Order
- Fix an issue where a sales order assortment line may not have its Scheduled and Backordered quantities updated properly when scheduled.
- When attempting to void an invoice, the error "The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION..." could be returned due to a "SQL DBCC CHECKDB" error. Now, if the "SQL DBCC CHECKDB" error occurs it will be displayed in Acctivate.
- In a company that does not have multiple-locations enabled, selecting a lot/serial number in the Lot Number window of the Enter Sales Order window will default the lot/serial location to the location currently assigned to lot/serial number. The lot/serial location is set by an inventory receipt, or can be defined by opening the Lot Information window from the Edit Product window.
- Fix the error "Sort order cannot be applied" that could occur when opening the Components window from the sales order when a component was lot/serial controlled and the lot/serial numbers for the product had been previously sorted by the Lot/Serial Specification field.
- Move the Pick Pending button in the Sales Orders and Workflow Statuses bar to be after Ready to Pick and before Pick in Progress.
- Fix the error "Index (zero based) must be greater than or equal to zero and less than the size of the argument list." that would occur when entering an invalid address in Acctivate that could not be automatically parsed. If text in the address field cannot be parsed due to it being an invalid address format, the Edit Address Info window will open so that the address can be parsed manually.
Sales Order Import
- When importing sales orders, the sales order will be assigned just before the final stage of the import. This resolves an error where entering sales orders on another workstation would receive the message that there were no unused sales order numbers available, despite there being available order numbers.
Shipping
- When a ShipStation sync fails due to an HTTP request exception, which is typically caused by misconfigured or invalid credentials, the ShipStation integration will be disabled in the Service section of the Configuration Manager and a message will be recorded in the ShipWorkstation logs.
Synchronization
- Fix the error "Invalid Number : (some number)-S" that would occur in US QuickBooks Online companies when the Out of scope Sales tax category was selected for a customer's ship to address.
- When RateValue is not returned from QuickBooks Online for a tax rate, the current EffectivateTaxRate will be used instead.
User Interface
- Enable the vertical scroll bar in the Special Instructions window that can be opened from the sales order and inventory details.
Web Store
- Fix an issue where WooCommerce inventory update requests were sent per product rather than sending requests of 100 products at a time.
12.1 sp2
Version 12.1 sp2 was made generally available on October 2, 2023 (Build 6531)
Business Activity
- Fix error "Acctivate error (3021:0xBCD)..." that would occur when attempting to add multiple blank Material lines to a Business Activity and then fill them in.
Create Company
- Fix an issue where list price records imported during the Create Company process from a QuickBooks Online company with multiple currencies enabled would appear blank because they did not have a currency associated with them.
- Fix an issue where the Preferred Supplier on products in QuickBooks Online did not synchronize to Acctivate during Create Company.
Custom Fields
- Resize text and list custom fields to match the maximum number of characters that the custom field can accommodate.
- Microsoft 365 refresh tokens will be saved each time an email is sent. This fixes a problem where a refresh token was saved and then would expire after 90 days, even though emails were being sent during that period. Now, a Microsoft 365 refresh token will only expire if an email has not be sent for 90 days by a user.
General
- ⭐ Add support for CYMA 23.
- Make changes to Acctivate so that it is more resilient to losing the database connection, helping to prevent the "Communication link failure" error.
Mobile
- Fix the error "Could not load file or assembly 'Avalara.AvaTax.RestClient..." that would occur when attempting to submit a picked sales order on Windows Mobile when AvaTax has been enabled.
Payment
- Fix a bug in the Enter Payment window where the Payment amount in the invoice grid may become negative after editing the invoice's payment discount.
- Fix the error "SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM." that may occur when creating a payment in the Enter Payment window.
Reports
- When importing an .acctrpt file with a problem, give the user an error rather than failing silently. Also, when exporting an .acctrpt file, a local copy of the .rpt file will be saved with its original name rather than a unique identifier, fixing an issue which may cause subsequent imports of the .acctrpt to fail.
- Fix the error "A DataTable named 'ReportDefinition' already belongs to this DataSet." that would occur when opening the Report Catalog.
Sales Order
- When a Picklist is submitted as Picked in Acctivate Desktop or Mobile, the Picklist.PickedBy and Picklist.PickedDate database fields will be updated. This allows reporting on who submitted a Picklist and when.
- Improve the speed of saving a sales order with many lot/serial numbers when there has been no changes to the order.
Synchronization
- When syncing invoices with a discount to QuickBooks Online, the invoice will always be created by Acctivate with tax calculated after the discount. This ensures that QuickBooks Online and Acctivate have invoice totals calculated the same.
12.1 sp1
Version 12.1 sp1 was made generally available on August 24, 2023 (Build 6526)
Configuration
- Fix an issue where default reports were not assigned for sales, inventory, and purchasing forms after creating a new Acctivate company.
Create Company
- Fix the error "Execute with results failed for Database..." that would occur when creating an Acctivate company in an empty database that had been previously created.
- Fix an issue where creating a new Acctivate company for QuickBooks Desktop would result in an "Out of memory RAM..." error message.
Customer
- Fix the error "Incorrect syntax near the keyword 'ORDER'." that would occur when opening the Customer List as a user that has the "View Invoices" permission set to "Not Allowed".
General
- When attempting to save an address that has one or more lines that are too long, a message will be displayed indicating which address lines exceed the line length. After dismissing the message box, the Edit Address Info will appear so that the address can be corrected.
Installation
- Fix the error "Error running database update: Error running post-upgrade script" that would occur when updating Acctivate to version 12.1 from a version prior to 11.0.
Inventory Adjustment
- Fix an issue where posting a Balance Adjustment of a lot/serial numbered product that doesn't use Actual cost method would be blocked with the message "Product...cannot have a lot number because it does not use Actual costing.", even though a lot number was not selected.
Inventory Transfer
- Fix an issue where selecting a blank location in the From location field of the the Enter Inventory Transfer window would result in the field error "Unable to cast object of type 'System.DBNull' to type 'System.String'."
- Fix an issue where the To Location field in the Enter Transfers window would show "System.Data.DataRowView" rather than the selected location.
Landed Cost
- Improve the speed of the LotSerialInventory data view and post Landed Cost and Receipt transactions in batches rather than keeping a SQL transaction open until the entire session has posted. These changes prevent large Landed Cost and Receipt transactions from impacting other workstations during posting.
Lookup
- Make a change to the Lookup window that should prevent the error "Cannot find column..." that could occasionally occur.
- Fix the error "Invalid column name 'Assembly Product'." that could occur when opening the "Choose Inventory Transaction" window from the Enter Landed Cost window.
Mobile
- ⭐ In Acctivate for Windows Mobile, when opening and submitting an existing assembly session for a lot or serial controlled assembly product, the "Save assemblies?" screen will now allow entering in a lot or serial number for the assembly product.
- Fix an issue in the Android Count module where products that were added to a count sheet then deleted from the count sheet still appeared in the count sheet on desktop after the count was submitted.
Product
- Fix the error "Invalid column name 'GUIDSalesperson'" that would occur on the Product Transactions tab for users with "Restrict Access by Salesperson" permission.
- Add an index to tbPicklistDetailLot that speeds up the LotSerialInventory view when there are picklists.
Reports
- Fix an issue where standard reports may be slow to load. Also, disable the "Verify on First Refresh" report option in Crystal Reports and set the default printer for standard reports to "No printer".
- Fix an issue where report filters added to standard reports would be deleted after an upgrade.
- Fix an issue where the standard reports in a newly created Acctivate company would be missing their report selection prompts.
Sales Order
- Prevent the error "Application uses a value of the wrong type for the current operation." that might occur when invoicing a sales order with an address line longer than 41 characters. If a shipment is being created with the invoice, and if the address is too long, a message will appear explaining that the address must be corrected on the sales order before the invoice and shipment can be created."
- Fix an issue where non-standard lines ("N" line type) on a sales order would be deleted when a shipping charge was added in the Create Invoice window.
- Fix the error "Closing delimiter not found for the string..." that would occur when creating an invoice for a sales order that has a single quote in the Order Number field and the sales option "Use Order Number as Invoice Number" is enabled.
Sales Order Import
- In the Sales Order import, remove UTF8 BOF (Beginning Of File) characters that may appear next to the first column heading. This fixes an issue where the exclusion or inclusion of these characters, due to how the source file was created, may require re-mapping if the Sales Order Import template was or was not expecting them.
Synchronization
- Fix the error "Column 'DiscountAmount' does not belong to table." that would occur in QuickBooks Online companies when syncing an invoice with a line level discount.
- Fix an issue where the Billing and Shipping addresses for an invoice could be switched after a sync with QuickBooks Online.
12.1
Version 12.1 was made generally available on July 13, 2023 (Build 6518)
Business Activity
- ⭐ When copying a Business Activity, you will now have the option to copy the Time and Materials entries from the original Activity to the new Activity.
- ⭐ Add the Business Activity Manager.
- Fix an issue where deleting a Material line from a Business Activity and then adding a new Material line would cause a loop of errors that would require closing Acctivate.
- Fix an issue that prevented the Business Activity form from printing if there were no Related Items.
Configuration
- ⭐ New Acctivate companies with Acctivate Mobile will have "Picked" configured as the default workflow status for a submitted sales order.
- ⭐ Move the report configuration out of the Configuration Manager and into a standalone Report Catalog window which is accessible by selecting Manage Reports in the the Acctivate File menu.
Custom Fields
- ⭐ Add support for the keyboard shortcuts Ctrl+C and Ctrl+V to copy and paste into the Custom Field's Name field.
Customer
- ⭐ Add a Transactions tab to the Customer List which includes all open customer activity, orders, accounts receivable transactions, and product history. The Transactions tab includes the ability to hide/show certain columns and perform advanced filtering.
Data Presentation
- ⭐ When opening the List windows, the Timeline will load separately in the background. This allows readily available information to be viewed without having to wait for the Timeline to complete loading.
- ⭐ In the Transactions tab of the Customer and Product List, when scrolling horizontally, the left most columns that are frozen will be given a shaded edge to better illustrate that other columns are scrolling behind the fixed columns.
Database Maintenance
- Make changes and increase the timeout period of the database verify step to prevent a SQL timeout from occurring.
- When sending or closing an email message window which was created from a report preview, the email will be saved to the document window from which the preview was generated, if it supports saving emails. E.g., previewing a report from the Enter Sales Order window and then emailing from the report preview will save the email message to the Enter Sales Order window's Email tab. If the preview was generated from a window that does not support saving emails, e.g., the Report Catalog, and the message is sent or the window is closed, the user will be asked if they want to save the email. To save, you must choose which document to link it to, or cancel the save which closes the window.
Installation
- ⭐ New installations of Acctivate will install Microsoft SQL Server 2022 Express.
- ⭐ Install Crystal Reports runtime 13.0 sp33.
Inventory
- ⭐ Add Not Allowed, View Only, or Maintain user permissions for each type of inventory transaction.
- ⭐ Improve the layout and presentation of the Transaction List window.
- Fix an issue where the error message that would displayed when posting an inventory transaction that would cause a lot/serial number to go into the negative would include all lot/serial lines. Now it only shows the lot/serial numbers that caused the error.
- When selecting a lot/serial number in an inventory transaction, the location will default to the product's primary location if the lot/serial number is stocked in it. Otherwise, the location will default to the last location that the lot/serial number was added into.
Inventory Adjustment
- ⭐ Update the Enter Inventory Adjustment window's data entry grid to a single line grid with configurable columns.
- ⭐ Update the Enter Inventory Balance Adjustment window's data entry grid to a single line grid with configurable columns.
Inventory Assembly
- ⭐ Add "Assembly Workflow Status" as a filter to the Transactions list window.
- ⭐ Split assembly transactions will now have the parent assembly session displayed in the Transactions list window.
Inventory Issue
- ⭐ Update the Enter Inventory Issue window's data entry grid to a single line grid with configurable columns.
Inventory Transfer
- ⭐ Update the Enter Inventory Transfer window's data entry grid to a single line grid with configurable columns.
Lookup
- ⭐ The lookup window that opens when using the Landed Cost window's Load Items button will now display the assembly workflow status of Assembly transactions.
Mobile
- ⭐ Add Inventory Counts module to the Acctivate Android app.
- Fix an issue where an inventory receipt for a purchase order may appear blank or have missing lines on Acctivate mobile if the product had been renamed after it was added to the related purchase order.
- Fix the error "Nullable object must have a value." that may occur when trying to update printer assignment in the Acctivate Mobile web service page.
Notes
- ⭐ Add a "Create Note" action to the Purchase Order Manager and Sales Order Manager windows. The entered note will apply to all selected orders.
Payment
- ⭐ Allow voiding payments entered in Acctivate if the payment has not been included in a QuickBooks Online deposit.
Product
- ⭐ Convert the Product List Transaction tab's filters to lists.
- ⭐ On Product Lists Transactions tab, show some quantities as dashes when they're not applicable due to the transaction type or status.
- Remove the mobile option "Ship Complete Lots" option from the Edit Product window. The options was legacy and replaced by the Mobile Order Picking option "Pick full lot quantity".
- Fix an issue where the LotSerialInventory database view would not show a location if the last transaction to add the lot/serial number was a credit memo.
- Fix an issue where the Product List's Transactions tab may list a WIP session multiple times.
Purchasing
- Fix an issue where PO lines for products that are not inventoried, and therefore cannot be received on a purchase order, would show an outstanding quantity in various places in Acctivate after the PO was invoiced in full. Now, PO lines that can't be received will show an outstanding quantity that represents the quantity that has yet to be invoiced on a PO.
- In the Purchase Order Manager window, PO lines that can't be received will not be considered when calculating the Percent Received value. This fixes an issue where an PO may not show as fully received even though all the inventoried products have been received.
- Add a database index to prevent a query timeout from occurring when voiding a Purchase Invoice.
Reports
- ⭐ Custom Reports are now stored in the Acctivate database. When Acctivate is upgraded, the CustomReports folder will be renamed to CustomReports_Legacy and will no longer be used.
- ⭐ When previewing a report from a window associated with only one record, such as the Enter Sales Order window, the Group Tree in the report preview window will be collapsed. Other reports, which may include multiple groups, will continue to preview with the Group Tree displayed by default. In both instance, the Group Tree can be toggled to show or hide as necessary for the current preview.
- ⭐ When checking a report out of Acctivate using the "Check out report" button, the report will be saved with the SQL Server and database connection info.
- Fix an issue where custom fields set up in the Configuration Manager were not available as a Selection Prompt for reports.
- Add Alternate Customer ID, Marketing Code, and Web address data fields to the QuickBooks Edition of the Customer Information report.
Sales Order
- ⭐ When a new invoice with a valid contact email is created in Acctivate and synchronized to a QuickBooks Online company integrated with QuickBooks Merchant Services (QBMS), the invoice link generated by QBMS will be stored in the Acctivate database. This allows creating message templates with the "Invoice Link" field so that customers can pay their invoice online.
- ⭐ When canceling orders using the Sales Order Manager, you will now be given the opportunity to enter a "Reason for lost business". The selected reason and description will be applied to all the selected orders.
- ⭐ In the Sales List, change some of the filter criteria entry boxes to lookups/dropdowns.
- When resetting the scheduled quantities on an order in a Shipped workflow status, the workflow status will be updated to the default workflow status for the Scheduled action in the Order Options section of Configuration Manager.
- Fix the error "Run-time error '3001'" that would occur when using the Tab key to move out of the discount field and into the Tax field in the Enter Sales Order window.
- Fix an issue where a sales order may display the wrong tax category for a customer if the customer's location was assigned a tax category that is no longer active. Now, the sales order will default to the customer locations' tax category even if it's not active. Instead, the customer should be updated to have an active tax category.
Sales Tax
- ⭐ Add an option in the Avalara configuration window to enable logging of Avalara calls.
- ⭐ Add support for Avalara's AvaTax REST API.
Synchronization
- Fix an issue where Acctivate invoice discounts weren't syncing to QuickBooks Online.
User Interface
- ⭐ Update all Acctivate windows to only show the Save and Undo icons when the window is in Edit mode.
- ⭐ Support using the left and right keyboard buttons to change the What's New slides. Pressing escape (Esc) on the keyboard will close the What's New window.
Web Store
- Fix the error "Could not sync customer to QuickBooks; it couldn't be found in the Acctivate Database" that would occur when creating customer during the web store sync.
Version 12.0
QuickBooks Online integration, Purchase Order Manager, Product List Transactions tab, Picklist improvements, Microsoft 365 email integration
12.0 sp3
Version 12.0 sp3 was made generally available on June 7, 2023 (Build 6477)
Create Company
- Fix an issue where using the tab key in a grid in the Create Company wizard would change the selected field, but the selected field would not be editable unless clicked in.
Customer
- When entering a new contact in the Edit Customer window, the Contact ID will now be required. If a Contact ID is entered before a name, the Contact ID will populate the Name field and vice-a-versa. Also, include an on-screen tip for how to add a contact if none exist for the customer.
- In the right hand sidebar of the Customer List, change the sorting for the Recent Invoices so that the three most recent invoices, based on invoice date, are shown. Also, show the invoice date rather than the due date.
Import
- ⭐ In the import utilities, the preview of the data to be imported will only be refreshed if the source file's file path or worksheet has been changed, or if the "First row of spreadsheet contains field names" option has been changed. This prevents the source file from being re-loaded each time a column is mapped.
- Fix an issue where QuickBooks Online UK companies did not have the option to map a purchase tax code in the Product Import window.
- Fix an issue in VAT companies where the Ship To Tax Code would not be assigned to the Ship To location when creating a a customer using the Customer Import. Also fix the alignment of the Tax Code label in the Edit Customer window.
Installation
- Provide a user friendly message when error code 0x80070020 is encountered during an install. Error code 0x80070020 is a sharing violation that may be caused by install files in the Update folder being in use by someone else. Waiting for the files to no longer be in use, or restarting may resolve the error.
- Change the message that is displayed when CLR Functions are not found in the database. The message will now say "The database must be updated in order to continue." rather than the incorrect message "A new version of Acctivate has been installed and the database must be updated."
Inventory
- Fix the error "Failed to convert parameter value from a Tuple`2 to a Guid." that may occur when posting inventory transactions.
Landed Cost
- Fix an issue where a run-time error may occur when setting the Tax Code in the Enter Landed Cost window of a VAT-tax QuickBooks Online company.
Login
- Fix an inaccurate message that would appear when a system administrator would attempt to log into Acctivate with an incorrect password after installing an update that requires a database verify. Rather than the message telling the user that their password was incorrect, it would tell the user that they must login as an admin user. Now, the correct message will be displayed.
Lookup
- ⭐ Display the availability of kit products in the Product Lookup window. Kit availability is calculated as the total number of kits that can be made based on the availability of components used in the kit.
Mobile
- When picking Picklists using Android Mobile, Picklists are marked as being picked by another user, but still in the status of "Ready to Pick" will display in the list of Picklist available to pick. This addresses a workflow where one user may print a picklist from the Desktop version of Acctivate for another user to pick on mobile.
- Fix error "Receipt session could not be posted due to exception: System.NullReferenceException: Object reference not set to an instance of an object." that would occur when posting an inventory receipt using Acctivate Mobile.
- Fix a bug where transfer detail notes entered in the Android Acctivate Mobile app would not get saved when the transfer was submitted.
Payment
- Fix an issue where the Unapplied field at the bottom of the Enter Payment window would not show after saving a payment with an unapplied amount.
- Fix the error "The source contains no DataRows." that would occur when processing a payment using Authorize.net in the Enter Payment window without apply the payment to any invoices.
- Fix an issue where the "A/R Account" field would unnecessary show when opening the Enter Payment window for the first time.
- In QuickBooks Online companies, the Payment Method field in the Enter Payment window will be locked if the payment has been included in a QuickBooks Online Deposit.
Product
- ⭐ Display the availability of kit products in the Inventory tab of the Product List. Kit availability is calculated as the total number of kits that can be made based on the availability of components used in the kit.
- Adding a kit as a component of itself will be blocked in the Edit Product window and in the Product Components Import. If a kit is detected as a component of itself in the Product Components import, that component row will not be imported in and it will be logged in the import exception file.
- Change the LotSerialInventory data view to filter on posted transactions. This improves the speed of queries using the LotSerialInventory view, preventing timeouts from occurring.
Purchasing
- Prevent purchase invoices from being created with a date that falls in a QuickBooks closed accounting period.
- Fix an issue where voiding a purchase invoice may result in an "Execution Timeout Expired..." error.
- When creating a Special Order PO, the purchase unit will now default to the sales order unit. This fixes an issue where Special Order POs would use the sales order's price unit.
Sales Order
- ⭐ Display the availability of kit products in the warehouse dropdown and substitutions window of the Enter Sales Order window. Kit availability is calculated as the total number of kits that can be made based on the availability of components used in the kit.
- ⭐ Allow users to change the workflow status of a sales order/quote/credit memo in the Enter Sales Order/Quote/Credit Memo and Order Manager windows when the "Change Workflow Status" permission is set to "Yes" but "Customer Order/Quote/Credit Memo" is set to "No".
- Fix a bug where lot/serial records on a credit memo would not have their warehouse location updated when the credit memo line's warehouse changed. Now, if the credit memo line's warehouse changes after lot/serial records have been entered then the locations will be updated to the primary warehouse location for the new warehouse. Also, update the informational message that appears when attempting to create an invoice or credit with too many or too few lot/serial records selected.
- Fix the error "Sort order cannot be applied." that would occur when opening the Enter Lots window of the Enter Sales Order window after sorting lot numbers by the Specification field on the Lots tab of the Edit Product window.
Sales Tax
- Fix an issue where inactive tax rates were being included in Tax Categories of QuickBooks Online companies.
Shipping
- Fix an issue where verbose logs were not saved when orders were exported to ShipStation. Now, when the verbose log option for the ShipStation integration is enabled, the export request and response files will be saved in the ShipWorkstation log directory.
- Fix an issue where switching between cartons in the Package Shipments window would cause the last entered weight to be copied to the other cartons viewed before saving.
Synchronization
- ⭐ If a payment's related customer or invoice hasn't synchronized with QuickBooks Online yet, then the payment will be unable to sync. The sync log message that explains this scenario has been improved.
- ⭐ In QuickBooks Online, if the vendor or amount of an Acctivate-created bill changes a sync warning will be logged and the vendor bill will be changed back so that it matches Acctivate.
- ⭐ Support current versions of Reckon accounting software by changing the supported version of the Reckon and Intuit SDKs to version 6.0 or greater.
- When creating invoices from the Sales Order Manager in a QuickBooks Online company, a single cost of goods sold journal will be created at the end of the invoice creation process rather than after each invoice. This improves the speed of invoicing multiple orders at once.
- In companies connected to QuickBooks Online, customers with a balance cannot be made inactive; they will be reactivated automatically when saving. If the customer does not have a balance and is made inactive in Acctivate, the Customer name will update to match the Customer display name in QuickBooks Online; e.g., "Some customer (deleted)".
- Add an index to tbINVTransationDetail to speed up the journal creation process to help prevent the journal sync error "Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding." Also, increase the journal creation timeout period in QuickBooks Online companies.
- Fix the QuickBooks Online sync error "Column 'GUIDCustomer' is read only." that would occur when the customer on a payment was changed in QuickBooks Online. Now, changes to the payment's customer or any other payment field will sync back to Acctivate.
- In QuickBooks Online companies, Tax Categories include the active tax rates. Now, if there are duplicate tax rates from QuickBooks Online's Automated Sales Tax engine, the other duplicate(s) will be made inactive and the most recently created tax rate will be used in Acctivate's Tax Category.
- Fix an issue where a new customer created in QuickBooks may get deleted from QuickBooks by sync instead of the customer being created in Acctivate.
- Fix the sync error "Column 'CustID' does not belong to table." that may occur when syncing customers with QuickBooks Online.
- Fix an issue where the Bill To and Ship To addresses were reversed on Acctivate invoices synchronized to QuickBooks Online.
- Truncate any credit card name longer than 50 characters that syncs from QuickBooks Online. This fixes the error "Cannot set column '~CCName'. The value violates the MaxLength limit of this column."
User Interface
- Fix an issue where right-clicking in the Enter Sales Order window's grid and selecting Restore Settings would not restore the grid columns to their original settings. This also fixes an issue where certain column positions may not be remembered.
Web Store
- ⭐ If an error occurs when the web store sync is set to auto-sync on an interval, the web store sync will now retry at the next scheduled sync time.
- ⭐ When an order contains a product with product options, Shift4Shop sends the product and product options as a single line item with the primary product and options delimited by a pipe character. An option, "Split product options into one detail per product", has been added to the Shift4Shop integration which separates the options to their own order detail lines.
- When exporting shipments to eBay, a shipment will not be exported if none of the shipment's items have a WebOrderLineID. The WebOrderLineID is the eBay line identifier and sending lines that did not originate from eBay may result in the order being marked as sold but not Shipped.
- Remove legacy web store options from the Shopify and BigCommerce web store connectors. Notably, The invoiced quantities, or packaged quantities if Packaging Manager is used, will be the quantities sent to Shopify. Other options which are not supported have been removed.
- Improve the query used to retrieve shipment information for web store sync. Also, increase the timeout period to five minutes. These changes should help prevent the error "Execution Timeout Expired." that could occur during web store shipment exports. Also, fix an issue where the inventory export timestamp may not get updated if the shipment portion of the web store sync fails. Previously, a failed shipment export could cause the web store sync to unnecessarily re-sync some product's availability.
- An Acctivate product's GUIDProduct will be stored in the tbImportSKU table as a secondary lookup other than SKU for a BigCommerce Product/Variant ID. If a Product ID is renamed in Acctivate and the SKU in Big Commerce has not been updated to match yet, the GUIDProduct will be used as a secondary look up to find the inventory availability.
- Fix an issue where changing the customer on sales order that was imported from a web store would cause the GUIDTemplate and WebCustomerID in tbOrders to be overwritten with the new customer's values from tbCustomerInfo.
12.0 sp2
Version 12.0 sp2 was made generally available on April 27, 2023 (Build 6469)
Business Activity
- Fix an issue where entering a Product ID in the Material tab of the Enter Business Activity window would cause the window to flash repeatedly before, preventing additional user input until the flashing stopped.
- Fix an issue where Acctivate would close with "Run-time error '94': Invalid Use of null" when the Product ID field on the Material tab of the Enter Business Activity window was set to a blank value.
Configuration
- Remove the minimize and maximize buttons from the Configuration Manager window.
- Remove the Ship To Tax Category default for new customers from the Configuration Manager in VAT companies since it is not used.
- Increase email fields up to 253 characters for QuickBooks Desktop and 100 characters for QuickBooks Online.
Create Company
- Fix a bug in the QuickBooks Desktop Create Company wizard where returning back to the Create Acctivate Company screen would not re-sync information from QuickBooks, such as GL accounts added after the Create Company wizard had been started.
- Fix an issue in the QuickBooks Desktop Create Company sync where credit memos that have been applied to invoices in QuickBooks would not be imported into Acctivate applied to their linked invoices.
- Fix an issue where Create Company import would fail with the error "Object reference not set to an instance of an object." during the Creating branches step if an Accounts Receivable account does not exist in QuickBooks Online. Instead, a message box will be displayed with the required action to take in order to continue with the import.
- Fix an issue where products imported from QuickBooks Online during the Create Company import did not have their tax code assigned.
- In the QuickBooks Online create company, set the Product Class grid's max column lengths to match the database fields column length. This prevents an exception error and data being truncated due to the entered data being too long.
- Fix a bug where non-inventoried, service, and bundle products created from the QuickBooks Online create company import would have the cost method of "Average", which was invalid. Instead, these item types will be imported with the cost method of "None".
- Fix a bug where service products in QuickBooks Online would be created in Acctivate as non-inventoried item types rather than Labor item types during the create company import.
- When creating a Production Acctivate Company, regardless of the the "Import items from QuickBooks" option's setting, inventoried items will be deactivated and their on hand quantities set to zero. Any other items types that are selected for deactivation will also be deactivated. This fixes an issue where items that are not imported from Acctivate would remain as active in QuickBooks Online for Production Acctivate companies.
- Fix an issue where all VAT tax codes where treated as taxable in QuickBooks Online. If a tax code has a 0% rate, or all the tax codes in a group are 0%, then the tax code or group will be considered non-taxable.
- Fix the error "The given key was not present in the dictionary." that would occur when performing create company against a non-US QuickBooks Online company.
Customer
- Fix error "Row handle referred to a deleted row or a row marked for deletion." that would occur when saving a customer after deleting a customer contract.
Data Presentation
- Fix an issue where list custom fields may show in the List windows as "AcctivateUI.CustomFieldInfo" rather than the custom field's list value.
- Fix an issue where the Gmail or Microsoft Office 365 email refresh token would be cleared if a change was made to the user.
Installation
- ⭐ The last screen of the Acctivate installer will display a reminder message about installing the Acctivate Mobile update if an Acctivate Mobile web service URL exists in the web service section of the Configuration Manager.
Inventory Issue
- Fix error "Column 'Quantity' is read only." that would occur when posting a draft Inventory Issue transaction in the Transaction List.
Landed Cost
- Improve the speed of posting Landed Cost sessions from a workstation and make changes that prevent Acctivate from locking up while voiding inventory sessions.
License
- Fix an issue where the Acctivate installer may return "Invalid License Signature in Acctivate Database" if the Acctivate license contains an apostrophe.
Mobile
- Fix the error "Invalid Input: Quantity exceeds quantity to be picked." that would occur in the Acctivate Android Order Picking module when picking a lot/serial product that was sold in a unit other than the stocking unit.
- Fix an issue where Acctivate Mobile may crash when a Zebra Android device that doesn't support the GS1 Data Matrix symbology scans a GS1 Data Matrix symbol.
Payment
- When entering a payment in the Enter Payment window for a customer that does not have a default branch, and more than one accounts receivable account exists, the AR Account drop down will be visible so that the payment can be associated with the correct AR account. This fixes an issue where some payments were not associated with an A/R account until they have been synchronized to QuickBooks.
- When using Authorize.net to process a payment that is applied to more than one invoice then the list of invoices, the amount applied, and payment discounts given will be itemized in the Authorize.net Transaction Detail report.
- When opening the Enter Payment window, if not active A/R accounts are found display a user friendly message rather than the exception error "InvalidArgument=Value of '0' is not valid for 'SelectedIndex'. Parameter name: SelectedIndex".
- In QuickBooks Online Acctivate companies, increase the Name on Card and Name on Account fields for payments to be 50 characters.
Product
- Hide the list price from the Product List and Sales Info card if the user's Product Price permission is set to Not Allowed.
- Fix an issue where the Unit of Measure card in the Product List may not show the table of unit factors for the product if there is only one related unit.
Purchasing
- ⭐ Modify the Sales Order field of the Purchase Order Manager so that it shows the related sales order number for Special Order and Drop Ship purchase orders. If more than one related sales order exists for a Special Order, then the Sales Order field will display the count of related order; e.g., "3 Orders".
- ⭐ In the Purchase Order Manager, remove the Ship Name, Ship Attention, and Ship Address columns from the Open, Entered, Request For Quote, Pending Approval, and Special Order buttons. Also, remove the Sales Order column from all but the Special Order and Drop Ship buttons.
- Fix an issue where the Requested By field in the Purchase Order Manager window always appeared blank.
Reports
- Fix a permission issue with the standard report directory that prevented report thumbnail previews from appearing in the Reports window in Acctivate.
Sales Order
- Fix an issue where lot or serial numbers created from a credit memo could not be selected in sales or inventory transactions.
- Fix an issue where the Customer Timeline may not reflect changes to an invoice balance after a payment had been applied.
- Fix the error "Cannot resolve the collation conflict between "Latin1_General_CI_AS" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation." that would occur due to different SQL collation settings between the company database and the temporary database used in the lot query.
- Fix issue where all QuickBooks Desktop tax items and tax group may appear in the Enter Sales Order window. Only tax groups and tax items that are not in a tax group should appear.
- Ensure that exceptions that occur during invoicing are displayed in the exceptions error window rather than a message box.
Shipping
- ⭐ When exporting orders to ShipStation, if the ship to address line 1 in Acctivate matches the Ship Attention field, then the Company field in ShipStation will be left blank. If address line 1 is different than the Ship Attention field, then address line 1 will be sent as the Company. Also, add default Ship Attention mappings to web stores that did not already have one.
- If a shipment for an EDI sales order has not yet been exported in an 856 transaction file then the user will not be prompted with the "Re-Export EDI Advance Ship Notice (ASN)?" message.
- If a sales order is completed, the workflow status will remain as Completed when the sales order's related shipment has its status is set to Shipped.
- Fix an issue where Acctivate would crash with a "Run-time error '91'" error if the Inner Pack field label was clicked in the Package Shipments window.
- When packaging products using the Product text box of the Packaging Manager window, display a message window when all items have been packaged.
- Fix various issues relating to the creation and packaging of shipments including a "Division by zero" error that would occur when creating shipments containing kits, items being duplicated in a carton when editing and saving a shipment, "Key is not unique in collection" error that would occur when packing items that were split on a picklist, and address scenarios that could result in incorrect quantities appearing in the Packaging Manager. Also, improve the Package Shipment experience by removing unnecessary prompts relating to inner/outer pack and weight and change the shipment's status to Packaged when all items have been packed.
- Fix an issue where typing a carton number in the Carton drop-down of the Package Shipments window would not result in that carton being displayed. Instead, the carton that is being viewed will be refreshed as each key-press occurs.
- When creating shipments from the Enter Sales Order window, Acctivate will first check to see if an open shipment already exist. If so, that shipment will be opened. If no open shipment exists, a new shipment will be created.
- Revert created shipments and packages if a SQL Timeout occurs during the package creation process. This prevent duplicate packages from being created after a SQL Timeout.
Synchronization
- ⭐ Improve the QuickBooks Online sync log information by removing the exception stack trace part of the message and including information about which record is encountering the error.
- When syncing data with QuickBooks, all control characters except CR and LF will be replaced with a space. This prevents one of the causes of the sync error "There has been an internal error when processing the request".
- Add support for changes in QuickBooks Online to certain header fields of an Acctivate-created invoice. Changes to an invoices sales tax amount will result in a sync warning, but the invoice in Acctivate will be updated. Change to the Terms code, Due date, QuickBooks Online Class, and Tax category (QuickBooks Online tax rate) in QuickBooks Online will not log a sync warning, but will update the invoice in Acctivate. Changes to line items, the invoice customer, and invoice date in QuickBooks Online will result in a sync warning and those changes will be reverted so that the invoice in QuickBooks Online matches Acctivate.
- Fix the sync error "GUIDCustomer System.Data.ReadOnlyException: Column 'GUIDCustomer' is read only." that would occur when the customer is changed on an invoice in QuickBooks Online.
- Fix the QuickBooks Online sync error "Amount is not equal to UnitPrice * Qty" that would occur when an invoice line discount was given in Acctivate. Now, Acctivate will compute the Rate on the invoice line as the invoice line amount divided by the invoiced qty.
- Fix the Purchase Invoice sync error "All items need a tax rate. Please add one where it's missing." that would occur in VAT QuickBooks Online companies.
- Fix the customer sync error "Details: Invalid Number..." that may occur in VAT QuickBooks Online companies.
- QuickBooks Online only allows tracking numbers up to 31 characters. If the tracking number entered in Acctivate is longer than 31 characters then only the first 31 characters will sent to QuickBooks Online. This fixes the QuickBooks Online Invoice sync error "String length specified does not match the supported length. Min:0 Max:31 supported."
- Implement a change to prevent multiple workstation from performing a QuickBooks Online background sync at the same time. If a new workstation has assumed the background sync role, a message will be logged and the other background sync will be stopped.
- In QuickBooks Online companies, increase the length of the PO Invoice number field to 21 characters to match QuickBooks Online. This fixes the PO Invoice sync error "Cannot set column 'InvoiceNumber'. The value violates the MaxLength limit of this column".
User Interface
- ⭐ When logging into Acctivate for the first time after a new install, the main Acctivate window, Business Alerts, Sales Order Manager, Purchase Order Manager, Business Activity Manager, Service Scheduling, and Report Preview windows will open maximized. Any changes to those window sizes will be retained and used upon subsequent logins.
Web Store
- Shopify requires that shipped quantities be integers. If the shipped quantity is a decimal number (e.g., 12.5), the quantity will be rounded up in the Shopify shipment export. This resolves the error "{'errors':{'quantity':'expected Float to be a Integer'}}".
- Fix Native web store sync error "System.InvalidCastException: Operator '<>' is not defined for string " and type 'DBNull'." that could occur if the imported web order does not have a WebOrderNumber mapped and the Export Shipments option is enabled.
- Fix the exception error "System.Data.DeletedRowInaccessibleException: Deleted row information cannot be accessed through the row." that could occur when exporting shipments to a web store.
12.0 sp1
Version 12.0 sp1 was made generally available on March 14, 2023 (Build 6455)
Create Company
- Fix the error "Acctivate error (91:0x5B) Object variable or With block variable not set" that would occur during the customer import portion of the Create Company process. The error is caused by customer ship to addresses that have no "name" (i.e., Location ID). Instead, those locations will be ignore during the import.
Custom Fields
- Fix a bug where control characters such as Ctrl+C (copy) and Ctrl+V (paste) wouldn't work in numeric custom fields. If a non-numeric value is pasted into a numeric custom field, the value will be cleared when saving the related record.
Customer
- Fix an issue where QuickBooks Desktop Acctivate companies could receive the error "Could not get Intuit access token: HTTP 400: {"error":"invalid_request"}" when opening a customer.
Data Presentation
- Fix issue where deleted product warehouses would continue to show in the Inventory tab of the Product List.
- Fix an issue where the Transactions List would cause Acctivate to not respond when viewing a transaction with a large number of detail lines. Also, fix an issue where the "Draft" text may be hidden behind transaction lines.
EDI
- Prevent errors from occurring when opening the Process EDI window by ensuring that EDI partner mailbox paths are constructed and formatted properly when used by Acctivate.
- Fix an issue where the Connect button for Microsoft 365 in the user section of the Configuration Manager could incorrectly be displayed as "Disconnect" even though the user's Microsoft 365 account had not been connected.
General
- Attempt to prevent the the error "Cannot access the Acctivate data directory. Your system administrator must add permissions…" that may occur when launching Acctivate when an antivirus program is scanning the AcctivateData directory. To test that the workstation has access to the AcctivateData directory, a temporary file is created in the AcctivateData folder and then deleted by the workstation. If the file is being scanned by an antivirus program the delete may fail, causing the error. Instead, Acctivate will retry the deletion three times before reporting an error.
Installation
- When performing an Acctivate installation, a different message will be shown if the AcctivateData directory is not accessible versus an Acct.ini file not being present in the AcctivateData directory. This fixes an issue where an ambiguous message was displayed when the installer could not complete.
- Fix an issue where the /layout command line option would upgrade Acctivate rather than generate an offline copy of the Acctivate installation files.
Inventory
- Fix the color theme of the Void Inventory Session window to match the theme used throughout Acctivate.
Mobile
- When transferring lot/serial products using the Android Transfer module, the lot/serial number's total transfer quantity will be compared against the lot/serial number's quantity on hand to prevent over selecting of a lot/serial number.
- When picking lot/serial products using the Android Order Picking module, the lot/serial number's total picked quantity will be compared against the lot/serial number's quantity on hand to prevent over selecting of a lot/serial number.
- In Android Sales Order picking, when attempting to over pick an order line, a warning sound will occur and a message stating that the quantity picked cannot exceed the quantity to pick. The qty will then revert to the quantity picked.
- In the Acctivate app for Android, on screen messages that auto hide will now stay visible on screen for six seconds, however tapping the message will dismiss it sooner. Previously, these messages would stay on screen for only one second which was too brief in most cases.
- Make changes to the audible feedback in the Acctivate Android app so that they are more consistent. Warning messages, such as the message "The quantity ordered of product 'SomeProduct' has already been fulfilled", will play three ascending tones. Error messages, such as "Product not found", will play a harsher sound. If the error is related to missing or invalid barcode information, the error sound will play and the barcode info screen will display in an attempt to give more context to the error.
- Fix "Invalid value for Sql parameter" error that would occur when using the product lookup in Acctivate on Windows Mobile devices.
- Fix an issue where it wasn't possible to enter a decimal point in some of the weight and quantity fields of order picking, picklist picking, inventory receipts, and inventory transfers on Acctivate Mobile for Android.
- In Android Sales Order picking, if a lot/serial barcode is scanned while in the Add/Edit Lot # window and the line has its full qty already picked, the scanned lot/serial number is added and the qty is changed to zero. Previously, these zero qty lot/serial lines would get added to the order. Now, when the Add/Edit Lot # window is closed the zero qty lot/serial numbers will not be added.
Payment
- When processing an Authorize.net payment for multiple invoices, the invoice numbers will be transmitted with a quantity of one and the invoice's total amount will be sent as the Unit Price/Item Total, rather than sending $1 as a placeholder amount.
- When creating a payment from the Enter Sales Order window, the cursor will start in the Payment Amount field of the Enter Payment window. When typing or looking up a customer, the cursor will move to the Payment Amount field after the customer is found.
- Fix an issue in QuickBooks Online Acctivate companies where payments created in a model company would get deleted.
Product
- ⭐ Create a new data view, ProductUnitFactor, which includes the unit factor relationship between a product's stocking unit and its primary sales, purchasing, and packaging units.
- Fix "Sort order cannot be applied" error that would occur when viewing the Lot/Serial tab of the Edit Product window.
- Increase the performance of product related queries by removing the Unit, UnitFactor, FactorBasis, Basis fields from the Product view for the product's sales, purchasing, and packaging units. These fields were added in 12.0, but resulted in a decrease of the Product view's performance. Also, add the NOEXPAND table hint to the ProductWarehouseSummary data view, where necessary, to ensure its indexed views are used to maximize the data view's performance.
- Add an index to increase the performance of the LotSerialInventory data view to and prevent time outs when viewing the lot/serial tab of the Edit Product window and Product List.
Sales Order
- Fix the error "Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record." that may occur when viewing an invoice in the Customer Invoice / Credit memo window.
- Fix an issue where the Tax field in the Customer Invoice / Credit Memo would appear blank.
- When cancelling a quote, the workflow status will be set to Cancelled. This prevents the error "Cannot set workflow status on Quotes."
- Fix issue where lot or serial numbers could not be viewed and selected in the Enter Credit memo window.
Sales Tax
- In QuickBooks Online US Acctivate companies, only sync the Tax and Non tax codes. This prevents the sync error "Valid line TaxCodes for US should be TAX or NON." that would occur when an unsupported tax code was made available in Acctivate.
Shipping
- ShipStation requires the qty to ship be an integer, therefore scheduled sales order quantities that include decimal will be rounded up to the nearest integer. This fixes an issue where the error "The request is invalid. Could not convert string to integer" would be returned when orders are sent to ShipStation.
Synchronization
- Disable the QuickBooks Online background sync for Model companies.
- Fix an issue where applying a payment to a journal in QuickBooks Online would cause the journal to have double its amount in Acctivate. Also, support has been added to sync charges from QuickBooks online during the background sync.
- Increase the max length of tbCharge.RefNumber to 21, to match QuickBooks Online's Journal no. field length. This resolves the QuickBooks Online sync error "Cannot set column 'RefNumber'. The value violates the MaxLength limit of this column."
- Support syncing customer refund checks from QuickBooks Online to Acctivate.
- Fix a problem where payments in a QuickBooks Online Acctivate company may have been re-synced from Acctivate to QuickBooks Online after upgrading to version 12.0. Instead, Acctivate will perform a one time sync of payments from QuickBooks Online to Acctivate to ensure all payments have the most up to date information in Acctivate.
- Don't attempt to sync $0 payments that aren't linked to any other transaction in a QuickBooks Online Acctivate companies. This resolves the QuickBooks Online sync error "Business Validation Error: Enter a transaction amount to continue."
- Add support for syncing QuickBooks Online check transactions that are related to a customer. This fixes the sync warning "A payment line for payment 0adddc33-9248-4a95-95e8-a2f8c652c89b is linked to an unsupported transaction type Check".
- Increase the max length of tbActivityLog.Reference to 500 characters. This prevents the error "String or binary data would be truncated in table 'Acctivate$AdvancedQuickBooks Online.dbo.tbActivityLog', column 'Reference'." that would occur when saving a customer ID that is over 200 characters in length in QuickBooks Online Acctivate companies.
- When the invoice date of an Acctivate invoice is changed in QuickBooks Online, the sync will display a warning message that the date has changed and the invoice date will be reverted back to match the Acctivate invoice date. This fixes an issue where the sync error "System.NullReferenceException: Object reference not set to an instance of an object." would be returned instead of the warning.
Web Store
- If none of the order lines in a shipment are associated with BigCommerce order lines, then the shipment information will not be sent to BigCommerce; instead, a message will be logged. This avoids BigCommerce rejecting the shipment with the error "BigCommerce returned HTTP Status 400: Bad Request. The required field 'items' was not supplied."
- When syncing with WooCommerce, if the web server returns a 5xx http status then the sync will pause ten seconds and retry again, up to four more times. This prevents the sync from abruptly ending due to intermittent web server issues.
- When a "502 Bad Gateway cloudflare" error is returned by WooCommerce the sync will pause ten seconds and retry again, up to four more times. This prevents the sync from abruptly ending due to intermittent web server issues.
- Fix an issue which caused the order fulfillment lines sent to Shopify to be empty, which Shopify interprets as the entire order being fulfilled. Now, only the fulfilled items and quantities will be sent to Shopify.
- In BigCommerce V2 web stores, if the web store option "Export Carrier when exporting shipments" is enabled, a shipment's carrier will be exported as tracking_carrier to BigCommerce instead of shipping_provider. tracking_carrier supports a multitude of carriers, whereas shipping_provider only supports shipping service providers.
- When the web store sync looks for orders pending redaction, it will not consider open Business Activities related to the customer but not related to the sales order. I.e., Acctivate will redact sales orders that have their directly related records completed (i.e., the order has no open invoice, Business Activities, Shipments, etc.), but if a customer has open Business Activities not related to the order, it will not prevent the completed order from being redacted. Redaction will occur in batches of up to 100 after each web store sync.
- Fix a bug where the web store sync error "HTTP Status 400: Bad Request" returned by WooCommerce wasn't being treated as a warning as intended. This error is commonly due to the Web Order Number field on the Sales Order not corresponding to a WooCommerce Order ID. Instead, the warning "WooCommerce reported invalid order id: xxxx (Subdocument 'shipment')" will be returned and the sync will continue.
12.0
Version 12.0 was made generally available on January 30, 2023 (Build 6444)
Business Activity
- ⭐ Add support for multiple forms/reports for Business Activities. Reports assigned the Document Type "Business Activity Form" will be available to print from the Activities List, Enter Business Activity window, or Reports → Business Activity → Forms.
Configuration
- ⭐ Allow editing the Branch ID of an existing Branch.
- ⭐ Copy warehouse GL accounts when copying an existing warehouse in the Create Company wizard or in the Configuration Manager.
Create Company
- ⭐ As part of the Create Company process, the Acctivate GUIDProduct will be recorded with the QuickBooks Item name in the table [tmpQBProd].
- Fix an issue where choosing the Create Company option "Preserve Item Hierarchy when generating Acctivate Product IDs" while also importing in sales orders from QuickBooks would cause the orders to be imported with non-standard lines rather than linking to the related Acctivate product.
Customer
- In the CYMA edition of Acctivate, block changing the accounts receivable account of a Branch if there are customers or invoices that use that Branch. If customers should be using a new A/R account, then a new Branch can be created.
Data Presentation
- ⭐ Add the ability to print inventory transactions from the Transactions List.
- In the Product List filter window, rather than show filter values by their short code, display the filter value's description.
- Display the full transaction type description rather than the abbreviated transaction code in the Transaction list filter window. For example, the Transaction Type filter will now show "Receipt" rather than "R".
Database Maintenance
- Fix issue where the Database Maintenance window would close with the error "Run-time error '6': Overflow" when maximizing the Backup/Restore window within a maximized Database Maintenance window.
- Improve the speed of a database update by batching insert scripts into groups of 100 to minimize the number of database calls that need to be made.
- ⭐ Add support for sending email using Microsoft 365's REST API.
- Fix an issue where the save/undo buttons weren't enabled when using the Insert Field button to insert a field into a message template.
General
- ⭐ Add "Close All" function to the Window menu in Acctivate. When selected, all open windows in Acctivate will be closed.
- ⭐ If Acctivate's data directory permission check fails due to an error Acctivate will attempt to show more information on why the permission check failed.
Import
- ⭐ Add the ability to import in a location's position using the Warehouse Locations import. A position is the footprint in the warehouse the extends vertically and is occupied by multiple locations.
- ⭐ In the Customer section of a customer import and the Order section of a web store import, allow mapping either a salesperson's name or salesperson ID for the Salesperson field.
- ⭐ Add a "Skip import validation step" option to the data imports. When unchecked (default), a data validation step will occur which allows reviewing errors and editing certain data fields prior to import. When checked, the data validation step will be skipped, however invalid data will still be rejected and the user will be given the opportunity to save failed import data in a spreadsheet for re-importing.
- In the Ship To section of a customer import and the Detail section of a web store import, allow mapping either a warehouse description or warehouse ID for the Warehouse field.
- When an Inventory Receipt import template has the option "Post transactions" enabled and the receipt can't be posted due to duplicate serial numbers, a user friendly message will be displayed which includes information about the Product ID and duplicate serial numbers and the receipt session will not be created.
- If a product is serial numbered, but doesn't use the Actual cost method, the Balanced Adjustment import would incorrectly give an error that the "Quantity must be 1, 0, or -1 for serial numbered products". Now, the import will not give the error, however a Balance Adjustment for a serial numbered product must be for the total on hand quantity as of the transaction date; only the value can be changed. This matches the behavior of the Enter Balance Adjustment window.
- If a product is being created by the Product import and the item type is Inventoried or Special Order Only, require that a warehouse be provided.
- When updating a product's bill of materials using the Product import, the validation that occurs now mimics the validation that occurs within the Edit Product window. This fixes an issue where the Product Import may unnecessarily block the updating of a product's bill of materials with the message "Assembly Type: Cannot change assembly type because the product is referenced by a sales order."
- Fix the scenario that caused the error "InventoryControlType: Control Type is required" by removing the check for a mapped Control Type when using the import to update other fields of an existing product.
- If a product is lot numbered, but doesn't use the Actual cost method, the Balanced Adjustment import would incorrectly give the error "LotNumber: Lot/Serial number is required." Now, the import will not give the error since a Balance Adjustment for a lot numbered product must be for the total on hand quantity. For products configured this way, the quantity or lot number fields should either not be mapped or, if they are mapped, should not contain any values. Only the unit cost or value can be changed for these types of products.
- When importing inventory transfers, the stocking unit will be used if a unit is not mapped. When importing in inventory receipts, the stocking unit will be used if a PO number isn't mapped. If a PO number is mapped, the unit from the purchase order line will be used.
- Fix a bug where the new customer Branch default set in the Configuration Manager was not being used when creating new customers using the customer import.
- When importing a Balance Adjustment, block items that are not inventoried from being added to the transaction. If a product that is not inventoried is included in the import source file, the error "The product's Item Type must be Inventoried or Special Order Only." will be returned.
- Rename Pager and Pager Description to Other and Other Description in the customer and sales order imports.
- Prevent non-inventoried products from being imported with a List Price Type of Average Cost + Percent (C%) or Average Cost + Amount (C$).
- When updating a product's bill of materials using the Product import, the validation that occurs now mimics the validation that occurs within the Edit Product window. This fixes an issue where the Product Import may unnecessarily block the updating of a product's bill of materials with the message "Cannot change assembly type because the product has inventory transactions."
- When performing a product import the Control Type will be validated. This fixes an issue where products that aren't inventoried could be created with a Lot Numbered, Serial Numbered, or Numbered when invoiced Control Type.
- When using the Product import to update a product's item type, check to see if the product has existing transactions before allowing the change.
- When attempting to update a product's control type using the Product import, you will no longer be blocked from making the change due to the product being a component as long as the product does not have transactions and the new control type is valid.
Inventory
- ⭐ Use indexed data views to improve the performance of the ProductWarehouseSummary data view.
- Modify the UnpostedTransferLotSummary database view to filter out posted transfers transactions.
- Include Draft Inventory Transfer transactions in the LotSerialInventoryWithoutLastReceipt data view.
- Modify the LotSerialInventory data view so that intra-warehouse transfers aren't considered when determining the last posted transaction date that added quantity to the lot/serial number (i.e., LotSerialInventory.TransactionDate).
Inventory Accounting
- ⭐ When Prior Period Adjustment transactions are created, use the related receipt transaction's GUIDPODetail and PONumber. Also set the original receipt's GUIDINVTransactionDetail as the adjustment's GUIDAssociatedITD.
Inventory Assembly
- ⭐ Improve certain assembly messages by including the affected assembly transaction number.
- Fix "Object variable or With block variable not set Error" that would occur when opening the Enter Assemblies when the Windows Region settings are set to a region which has a number format where the decimal character is a comma instead of a period.
- Fix error "There are fewer columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement." that would occur when opening the Enter Assemblies when the Windows Region settings are set to a region which has a number format where the decimal character is a comma instead of a period.
Inventory Count
- When a count session is generated and multiple location control is enabled, the count session will now include lot/serial numbers that have zero on hand if it has locations that have non-zero on hand. The "Include Empty Warehouse Locations" count option will include all locations used by that lot/serial number if checked and only those with non-zero on hand if unchecked. This allow correcting bin locations with incorrect on hand quantities.
Inventory Receipt
- ⭐ Add support for multiple forms/reports for Inventory Receipts. Reports assigned the Document Type "Inventory Receipt Form" will be available to print from a Posted or Draft Inventory Receipt.
- ⭐ Allow printing the Put Away List for Inventory Receipt form for a Draft or Posted Inventory Receipt. The Put Away list can be printed from the Enter Inventory Receipts window.
Inventory Transfer
- ⭐ Create a new database view, UnpostedTransferLotLocationSummary, which includes unposted transfer records for lot/serial controlled products. The data view also includes the From warehouse location.
- Fix a bug where the UnpostedTransferLocationSummary database view would use the product's primary location rather than the unposted transfer's From location.
- Modify the Available calculation for the LotSerialLocationSummary data view. The availability for lot/serial locations is calculated by getting the quantity on hand, subtracting the quantity on open order lot/serial lines are not on an open picklist, subtracting quantities on open picklists, subtracting quantities on unposted assemblies, and subtracting quantities on unposted transfers.
- Modify the UnpostedTransferSummary database view to ignore transfer detail lines that are not associated with a transfer session.
Mobile
- ⭐ Add support for the mobile picking option "New line for each lot number scan" when Picklists are enabled. The option can be enabled in the Mobile Order Picking section of the Configuration Manager.
- ⭐ Add support for parsing GS1 encoded Data Matrix symbols on Android devices. This fixes an issue where the application identifiers were not parsed and the encoded data was interpreted as a single string of text.
- Fix error "Could not get product information InvalidCastException" that would occur in Windows Mobile when adding a product to the an order in the Order Entry module.
Product
- ⭐ Add the default Sales, Purchasing, and Packaging factor units and factor basis type (e.g., Standard, Product Specific, etc.) to the Product data view.
- ⭐ Add a Transactions tab to the Product List which includes all open, sales, purchasing, and posted inventory transactions. The Transactions tab includes the ability to hide/show certain columns and perform advanced filtering.
- ⭐ In the Edit Product window, sort the Price Category field alphanumerically.
- Return a user friendly message explaining that a lot/serial number already exists if an existing lot/serial number is being renamed to an existing lot/serial number.
- Change the query used to populate the Lots (or Serial #'s) tab of the Edit Product window to match the query used to populate the Lot/Serial tab of the Product List.
- Fix "Object variable or With block variable not set" error that would happen when creating a new FIFO product, opening additional windows, then clicking on the FIFO tab of the Edit Product window before saving the product.
- If a location has zero quantity available and on hand, then the location will not be shown in the Locations card found on the Product List's Inventory tab. However, the primary location will always be displayed.
Purchasing
- ⭐ Add the Purchase Order Manager.
- When multiple purchase invoices are created for a PO line that has inventory receipts in a closed period, first try and delete any previously prior period adjustments and create a new prior period adjustment for the sum of all prior period adjustments. If prior period adjustments can't be deleted, then a new prior period adjustment will be created for the adjustment amount of the invoice being created.
- Prevent a Purchase Order from being reverted to the Entered status if the Entered status is not enabled in the Configuration Manager.
- Block a user from reopening a Purchase Order if they do not have permission to issue POs and the default PO status is the Issued status.
- Fix issue where Acctivate may crash when Avalara address validation is configured and an invalid address is entered in the Enter Purchase Order window.
- Modify the Vendor and PO list window timelines to use the posted date for receipt and landed cost transactions. This fixes an issue where the session's created date was used rather than the posted date.
Reports
- ⭐ Add catch weights to customer facing sales order forms (Order, Pack List, Invoice). The total line weights are suppressed and could be un-suppressed if necessary.
- ⭐ Improve the Put Away List for Inventory Receipts report. If multi-location tracking is enabled then the report is sorted by the warehouse location sort order. Otherwise, the report is sorted by the receipt line location.
- Fix bug where the "Print Pack Lists for Picklists" button in the Picklist window would cause the Picklist to print. Now, the Pack List form for a Picklist is used.
- If lot/serial numbers have been pre-selected for an order, show the lot/serial warehouse location. If only some, or none, of the lot/serial numbers have been selected then show the location from the sales order line as a reference for the picker.
Sales Order
- ⭐ Allow filtering on a sales order's Marketing Code in the Sales Order Manager window.
- ⭐ Add a "Shipment Due Date" field to the Sales Order Manager which corresponds to the Promised Ship date if set; otherwise, it's the customer's Requested Ship date.
- ⭐ Add the Last Shipment Date field to the Sales Order Manager window as an optional column.
- ⭐ Add the Web Order Number field to the Sales Order Manager window as an optional column.
- ⭐ Add the individual ship to and sold to address lines to the Sales Order Manager as optional columns.
- ⭐ Add a Line Count field to the Sales Order Manager window as an optional column. Line Count represents the number of order lines (excluding components).
- ⭐ Include non-inventoried products in Picklists. Non-inventoried products are tangible products that still need to be picked, but their inventory and locations are not tracked in Acctivate.
- ⭐ Add the Amount Paid and Payment Method fields to the Sales Order Manager window as optional columns.
- ⭐ Add the Total Amount field to the Sales Order Manager window as an optional column.
- ⭐ Add an option to control the priority of which locations are selected when creating a Picklist. "Highest available first", the default, maintains the existing behavior of selecting locations with the most availability first in order to minimize the number of locations visited. Alternatively, the option "Lowest available first", will prioritize locations with the lowest availability, allowing you to deplete secondary/overflow locations first. When multiple locations have the same availability, the location selected will be based on the location sort order (in the Locations section of the Configuration Manager) and then by location name.
- ⭐ Allow clicking the Create Invoice button in the Enter Sales Order window while in edit mode. When clicked, the user will be asked if they want to save any changes and create the invoice. Once in the Create Invoice window, the Available Credits button will show the number of credits after any have been selected and applied to this invoice.
- Remove the minimize button from the Enter Lot/Serial window and Component window of the Enter Sales Order window since it is a modal window and you must close it in order to work with other windows. This also prevents an issue where Acctivate would crash when minimizing the lot/serial window. The window can still be maximized and restored.
- Fix an issue where a product's sales order pop-up note may not pop-up when the Product ID is typed into an order detail line rather than being added by using the Lookup window.
- When preparing shipments from an order, invoiced quantities that have not been packaged will be excluded from the quantities added to the shipment. Also, if a kit's components have already been packaged, then the parent kit item will not be included any packages created later.
- When changing a sales order's line type to Special Order (S), the line's outstanding quantity will be backordered and the warehouse will be changed to the special order warehouse associated with the order's branch, if one exists. When changing from an "S" line to a "P" line, the warehouse will be changed back to the Branch's warehouse and the line will be re-scheduled.
- When Picklists are enabled, the Enter Sales Order window's lot/serial location will not be pre-filled. When you create a Picklist, the Picklist will assign the location(s) to be picked from. If you assign a location on the lot/serial line, the Picklist will use the location provided.
- Make a correction to the message displayed when trying to update a sales order to an invalid workflow status; e.g., changing a Booked order to Ready to Pick.
- Improve the warning message that would appear when invoicing a line with no scheduled quantities. Instead of "Order A1234T has no billable lines.", the message now states "Order A1234T has no lines with a scheduled quantity." Also, this warning is no longer logged to the Acctivate Exception log.
- Increase the width of the On Hand and Available columns in the Lot/Serial selection window of the Enter Sales Order window.
- Fix label and appearance issues in the Generate Serial #s window. Also, when the Generate Serial #s window is opened it will now open centered over the Enter Lot or Serial #s window.
- Fix a bug where the Print Invoices window did not pass the invoice number range entered by a user to the report. Also fix a bug where using the "Print unprinted invoices" option may include more invoices than it should.
- Add support for typing a Tax Category in the Enter Payment window to find a match. Once a typed character results in no match, the Tax Category list will display so that a selection can be made.
- When cancelling sales order or quotes using the Sales Order Manager, change the workflow status to "Cancelled" to match the behavior that occurs when canceling a sales order from the Enter Sales Order window.
Sales Order Import
- Fix a bug where the Import Sales Order utility would freeze during the sales order import step if both a source file field and default value was mapped. Now, the import will complete and the mapped field will be used if a value exists in the file, otherwise the default value will be used.
Shipping
- When using the Package Shipment function in the Package Shipments window, kit items will be packaged rather than the components. This fixes an issue where the kit item and components would be packaged, resulting in the message "This shipment contains one or more items with shipped quantities greater than the quantity ordered.
- Fix the error "Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record." that would occur when using the Packaging Shipment button in the Package Shipments window when the shipment was created from a Picklist containing kit components.
- Fix "Object variable or With block variable not set" error that would occur when creating and packaging a shipment created from a Picklist containing kit components.
Synchronization
- ⭐ Add support for integrating Acctivate with QuickBooks Online Plus and Advanced plans in the US and non-US regions.
- ⭐ In order to construct the recommended address format in QuickBooks Online companies, the Company name field in QuickBooks Online will sync to Acctivate's Company field and address line 1 if address line 1 in Acctivate matches the Company name. If the customer doesn't have a Company name defined, then the customer's Display name will be used as address line 1 if address line 1 in Acctivate matches the customer's Display name. If Address line 1 in Acctivate doesn't match the Company or Display name in QuickBooks Online, then updates to the Company/Display name field in QuickBooks Online will not be synchronized to Address line 1 in Acctivate. Edits to Address 1 in Acctivate will never sync back to QuickBooks Online. The customer's street address 1 and 2 in QuickBooks Online will by synchronized to address 2 and 3 in Acctivate (and updates in Acctivate will sync back to QuickBooks Online with these mappings as well).
- Fix "Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record." error that would occur during the payment portion of the QuickBooks sync.
- Fix an issue that prevented changes to payments in QuickBooks Desktop from syncing back to Acctivate.
User Interface
- ⭐ Increase the height of the Sales Order and Purchase Order manager rows to match the height of the sales order and purchase order grid rows. The horizontal grid lines that separate rows have been removed as well.
- Center various pop-up windows over the window it was opened from or over the main Acctivate window. This fixes an issue where a pop-up window may open on a different monitor in multi-monitor environments.
Web Store
- Add UpdatedDate and UpdatedBy fields to tbINVRegister to record the last updated date of an inventory session and the user who performed the update. A new field, LastINVUpdatedDate, was added to the ProductAvailabilityByTemplate and ProductKitSummary views. LastINVUpdateDate is the most recent updated date from unposted assembly components and inventory transfer sessions. The LastModifiedDate from ProductAvailabilityByTemplate is used to determine which products have been updated since the last web store sync. LastModifiedDate is the most recent of LastTransactionDate, LastVoidedDate, and LastINVUpdatedDate. These changes should result in a more accurate inventory availability export to web stores.
- When the web store option "Provide confirmation before importing sales orders" is enabled, customer records will not be created until the related sales orders have actually been imported in. This fixes a bug where the customer would be created even if the import hasn't been confirmed.
- Downgrade the WooCommerce error "woocommerce_rest_shop_order_invalid_id" from a 400 Bad Request to a logged warning. This error is probably due to the Web Order Number field on the Sales Order not corresponding to a WooCommerce Order ID.
- When importing guest customers from a web store, the web order's Sold To Name will be used as the customer's Company Name, if provided. This fixes a bug where the Company Name in the Edit Customer window would always be set to the order's Customer ID.
- Fix the error "The specified key 'customer_email' does not exist in the ExpandoObject" that would occur when running a Shopify sync.