This release went live on the evening of February 16, 2024.


Enable reverse conversions for non-inventory line items in Order Entry

Only those companies with Construction subscriptions have access to the options to enable reverse conversions. For more information about subscribing to Construction functionality, see Configure Construction.

Use new fields to enable reverse conversions for non-inventory line items in order entry transactions. When reverse conversions are enabled, you can reduce the net amount previously converted for a transaction line item. You can use reverse conversion amounts when creating a transaction (using <create_sotransaction>) or updating a transaction (using <update_sotransaction>) by setting the <reverseconversion> field to true for a transaction line item (<sodocumententry>).

When the <reverseconversion> field is set to true, downstream conversions for that transaction line item must include an amount using the opposite sign (positive or negative) of the upstream document. In addition, when set to true, the <reverseconversion> field requires that the conversion for that line item be the opposite of the upstream document. For example, let’s say that on an OE order, you:

  • enter a line for 100 units
  • convert 50 units
  • determine that the original conversion should be 25.

You can convert the order again to add a negative 25 (-25) units for the original converted line of 50. This conversion corrects the original converted unit amount from 50 to 25 and creates the downstream invoice with a credit for that line to the customer.

In addition, when reverse conversions are enabled for Order Entry, several new read-only fields are calculated and returned in <SODOCUMENTENTRY> and <SODOCUMENT> query and list responses:

  • <reversepriceconverted>
  • <reverseqtyconverted>
  • <stdpriceconverted>
  • <stdqtyconverted>
  • <sourcedocid>
  • <sourcedoclineid>

For more information, see:

Accounts Receivable

Starting with the 2024 R1 release, several changes have been made to the fields and information provided when you use the get_companyprefs function to list Accounts Receivable (AR) preferences.

All AR selectable preferences have a new property exposed that holds the record number. The following example shows the new value for the overpayment account preference:


The preference value, <prefvalue>, for all General Ledger accounts previously included both the account number and account name. Now only the account number for General Ledger accounts is returned as shown in the following example:


The preference value, <prefvalue>, for all General Ledger journals previously included both the journal symbol and name. Now only the journal symbol is returned as shown in the following example:


In previous releases, the Aging setup was returned with the name and a single set of preference values like so:

        <prefvalue>0-30, 31-60</prefvalue>

Now several objects are returned to represent the Aging setup, including the name, record number, module key, and more, as shown in the following example:

        <prefvalue>0-30, 31-60</prefvalue>

For more information about the get_companyprefs function, see List Subscription Preferences.


Option not to generate Lien waivers in Vendor Compliance Definitions

The Vendor Compliance feature continues to offer more flexibility. A lien waiver is a document between two parties that states payment is made for work performed or material supplied. You might not want lien waivers with negative amounts, though. Use the new Vendor Compliance Definition field, ALLOWNEGATIVELIENWAIVERS, to indicate your preference.

When using create or update, use true (default) to indicate that lien waivers can be generated with negative amounts, otherwise use false. This value only affects the generation of future lien waiver compliance records and applies when CATEGORY is set to ‘Lien waiver’. If CATEGORY is not set to ‘Lien waiver’ and a value is supplied, an error is returned.

Track Insurance and Miscellaneous compliance records by either Primary document or Vendor.

With this release, you can use a Primary document to track Insurance and Miscellaneous compliance records. Previously, you could only track Insurance and Miscellaneous compliance records by Vendor. The Vendor Compliance Definition’s TRACKBY field description has been updated to reflect this change.

NOTE: To enable the Vendor Compliance subscription, first enable Accounts Payable, Purchasing, and Construction. Vendor compliance is available only for Construction at this time.

For more information, see:

Project Contracts

Project Contract Billing enhancements

New fields have been added to the Accounts Receivable invoice object (ARINVOICE) for better integration with project contract billing:

  • EXTERNALREFNO - An external reference number
  • PC_DESCRIPTION - A description for the contract
  • CONTRACTDATE - Contract date
  • ARCHITECTKEY - Unique identifier for the architect
  • ARCHITECT - Architect
  • BILLTHROUGHDATE - Billing through date
  • BILLAPPLICATIONNO - Billing application number


Renewal dates in contract object

A recent release added read-only fields for renewal dates to both the CONTRACT and CONTRACTDETAIL objects.

  • For the CONTRACT object, the new field is CN_RENEWAL_DATE
  • For the CONTRACTDETAIL object, the new field is CN_LINE_RENEWAL_DATE

Provide feedback