Changelog

General Changes

Date Build
Number
Change
Type
Description
01/25/2023 8425 NetSuite Added
  • Added Bom, BomRevision, BomRevisionComponent tables to SuiteQL schema.
12/19/2022 8388 NetSuite Added
  • Added Role, EmployeeRoles, EmployeeRolesForSearch tables to SuiteQL schema.
12/14/2022 8383 General Changed
  • Added the Default column to the sys_procedureparameters table.
10/20/2022 8328 NetSuite Added
  • Added support for custom fields on address record types in SuiteQL.
09/30/2022 8308 General Changed
  • Added the IsPath column to the sys_procedureparameters table.
08/31/2022 8278 NetSuite Added
  • In the SuiteQL schema, added the NextTransactionLineLink.nexttype column.
  • In the SuiteQL schema, added the TransactionAccountingLine.amountlinked column.

Changed
  • In the SuiteQL schema, changed NextTransactionLineLink.lastmodifieddate to a timestamp data type from a date data type.
  • In the SuiteQL schema, changed TransactionAccountingLine.transactionline to a varchar data type from an integer.
08/17/2022 8264 General Changed
  • We now support handling the keyword "COLLATE" as standard function name as well.
07/11/2022 8228 NetSuite Added
  • Added the InventoryBalance table as view for SuiteQL.
06/14/2022 8200 NetSuite Changed
  • Changed the CurrencyRate.LastModifiedDate and TransactionLine.LineLastModifiedDate fields from Date to Timestamp in the SuiteQL schema. These were originally copied over from NetSuite documentation which had them incorrectly marked as Date.
05/31/2022 8187 NetSuite Added
  • Added the AccountSupportsSuiteAnalyticsConnect connection property which controles the query splitting feature. By default this is set to true which will trigger the driver to split the queries in case the result set exceeds 100,000 records.

Changed
  • Modified the query splitting logic for determining when a given query would return more than 100K results to be more accurate and execute more quickly.
  • Modified the data type for the transaction.number column to be of type double instead of long. This impacts the SuiteQL schema.
05/13/2022 8166 NetSuite Changed
  • Modified ColumnSize calculation for custom fields freeFormText, textArea, longText, and richText. This impacts the SuiteTalk schema.
04/18/2022 8143 NetSuite Changed
  • Modified CreateRestletSchema to generate schema files using the complete label name for columns (instead of enforcing alphanumeric + underscore).
04/07/2022 8132 NetSuite Added
  • Added support for custom list tables in the SuiteQL schema.
03/21/2022 8115 NetSuite Added
  • Added the DefaultDecimalPrecision and DefaultDecimalScale connection properties to control the default scale / precision in SuiteQL views.
02/28/2022 8094 NetSuite Changed
  • Added support for performing a RowScan during metadata detection for SuiteQL. The RowScan connection property controls this behavior. This should improve the driver's ability to dynamically ensure the columns available for a given table are actually supported for your account and role.
  • In most tables, the default list of columns will be smaller than it was previously. Set RowScan = 0 to disable this feature.
02/07/2022 8073 NetSuite Added
  • Added the columns Attendence, Response, Calendarevent to the Attendee table on the SuiteQL schema.
01/27/2022 8062 NetSuite Added
  • Made updates to a number of SuiteQL tables to try and mark primary keys properly where they were not being marked previously.
  • Added additional support for attempting to handle requests where more than 100K rows are retrieved from SuiteQL. The built in limit for a given query in SuiteQL that NetSuite will throw an exception after 100K results. However, we attempt to anticipate when this might occur and break up the query into multiple smaller queries that can be executed.
01/19/2022 8054 NetSuite Removed
  • Removed the column Response from the CalendarEvent table in the SuiteQL schema.
11/03/2021 7977 NetSuite Added
  • The following SuiteQL tables were added: accountingbook, accountingperiod, actiontype, activity, addressbook, automatedclearinghouseaccounttype, budgetexchangerate, costcategory, currencysymbol, demandsourcetype, dual, employeeexpensesourcetype, employeestatuscategory, employeetypecategory, employmentcategory, expensereportpolicy, fiscalcalendar, formatprofile, importedemployeeexpense, importedemployeeexpensestatus, limittype, onlinecaseform, onlineleadform, plannedorderstatustype, projectrevenueruletype, ratableeventpurpose, retirementplancontributiontype, retirementplantype, scriptcustomrecordtype, scriptrecordtype, statustype, subscriptionstatus, supplychangeorderstatus, transactionhistory, umdfield, usagestatus, usrauditlog, usrdsauditlog, usrdsexecutionlog, usrexecutionlog.

Changed
  • Updated our default Version to 2021.2.
  • As of 2021.2, NetSuite no longer produces a Schema Catalog for the API our SuiteQL tables rely on and has recommended switching to the Records Catalog. Due to this shift, some of the column data types have changed from Varchar to Int.
  • Some columns have been removed from our SuiteQL table definitions that were tested for being non functional. Every column is tested on every table for functionality - columns that no longer work are removed automatically.
09/02/2021 7915 General Added
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
08/07/2021 7889 General Changed
  • Added the KeySeq column to the sys_foreignkeys table.
08/06/2021 7888 General Changed
  • Added the new sys_primarykeys system table.
07/23/2021 7874 General Changed
  • Updated the Literal Function Names for relative date/datetime functions. Previously relative date/datetime functions resolved to a different value when used in the projection vs te predicate. Ie: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly the two LAST_MONTH() methods would resolve to different datetimes. Now they will match.
  • As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. Ie: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that previously were calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
07/08/2021 7859 General Added
  • Added the TCP Logging Module for the logging information happening on the TCP wire protocol. The transport bytes that are incoming and ongoing will be logged at verbosity=5.
07/09/2021 7857 NetSuite Added
  • Added support to Attach and Detach relationships between Contact and Entity, i.e: Customer. ContactRole can also be specified.
06/23/2021 7844 NetSuite Changed
  • Fixed an issue with naming duplicate columns when the custom field is of type record reference. Previously the '2' , '3', or additional index was added at the end of the column name. However, this was causing issues when there were clashes with non custom fields that were not themselves record references, resulting in columns like: Manufacturer, Manufacturer2, Manufacturer_InternalId. The correct naming convention should be Manufacturer, Manufacturer2, Manufacturer2_InternalId since both of the later are tied together. This may result in column names showing up differently when there is a clash.
06/08/2021 7829 NetSuite Changed
  • Updated the length of InternalId columns on the special views of the SuiteTalk schema to length 32 to match the dynamically determined InternalId sizes. This includes BudgetExchangeRate, CustomFields, CustomRecords, CustomSegments, CustomTransactions, PostingTransctionSummary, SavedSearches, and Transactions.
05/26/2021 7816 NetSuite Changed
  • The default Version has been updated to 2021_1.
05/25/2021 7815 NetSuite Added
  • The following SuiteQL tables are added: CashSaleItemShippingAddress, Classification, CreditMemoItemShippingAddress, CurrencyRateType, EmployeeStatus, EmployeeSubscriptionMessageHistory, EmployeeSubscriptions, EmployeeSubsidiaryRelationship, EmployeeTaxOptions, EmployeeType, EstimateItemShippingAddress, IntercompanyDestination, InvoiceItemShippingAddress, SalesOrderItemShippingAddress, ServiceSaleItemCorrelateditem, UserAuthorizationConsent, VendorSubsidiaryRelationship.

Changed
  • The SuiteQL scripts are updated following 2021.1 changes from NetSuite. Some columns have been removed that were tested for being non functional. Every column is tested on every table for functionality - columns that no longer work are removed automatically.
  • Primary keys have been added or removed from SuiteQL tables automatically following the the pattern: If the only column was the primary key, the primary key is removed. If the table supported a primary key but it was not marked, the primary key is now marked (assuming more than just the primary key exists).

Removed
  • The following SuiteQL tables are removed as they no longer work: GlobalInventoryRelationshipCustomerReturn, GlobalInventoryRelationshipFulfillment, ItemRevision, ItemSegmentCustomerSegmentMap, UserEventScriptDeploymentScriptLocalizationContextMap.
04/23/2021 7785 General Added
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
04/23/2021 7783 General Changed
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
04/16/2021 7776 General Added
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2

Changed
  • Reduced the length to 255 for varchar primary key and foreign key columns.
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you would need to generate new metadata caches if you are currently using CacheMetadata.
  • Updated index naming convention to avoid duplicates
  • Updated and standardized Getting Started connection help.
  • Added the Advanced Features section to the help of all drivers.
  • Categorized connection property listings in the help for all editions.
04/15 /2021 7775 General Changed
  • Kerberos authentication is updated to use TCP by default, but will fall back to UDP if a TCP connection cannot be established