This release went live on the evening of August 19, 2022.

Web Services

Use rownum with readByQuery to specify the rows that your query returns

When querying custom objects, you might want to limit your query to rows that you specify. The rownum condition returns a number for each row that readByQuery returns, so now you can reduce the amount of data returned to just what you need. For example, use rownum to verify if a query result will contain expected data by returning a set of 5 rows instead of all rows. Or you might want to target rows in your query that were added later; if so, you can select rows greater than a specified rownum.

For more information, see:

General Ledger

Dynamic allocation by dimension values

A new option allows dynamic allocation of funds based on the values in the project and employee dimensions. For example, payroll could be allocated automatically based on the number of hours in the employee dimension. When an allocation definition with this setting is used, the system will apply a ‘per dimension value’ filter and generate a journal entry for each dimension value. Note that this is currently only available for project and employee dimensions.

For more information see FOCUSPROJECT and FOCUSEMPLOYEE in the GLACCTALLOCATION object in these requests:

Accounts Receivable

Retrieve PDF data for invoices

This release introduces a new retrievepdf function to return Base64-encoded data for PDF versions of invoices.

For more information, see Get Invoices as PDF Data


Automatic invoice generation with scheduled invoice policies

You can now automatically generate invoices on a set schedule using the new scheduling fields of the Contract Invoice Policy object. For example, you can automatically generate a monthly invoice for all work on a specified contract, or all work at a specific location.

For more information, see the scheduling fields for:


Retainage balances in Order Entry Transactions for Project contract billing

A previousretainagebalance field has been added to order entry transactions to track the sum of all pending retainage amounts for a project contract. By passing in retainage billing parameters while creating an order entry invoice, you can bill retainage along with the typical project contract billing. The released retainage is accounted for in the retainage balance for the project and the project contract. For more information, see the previousretainagebalance field in:

Provide feedback