Created by Harry Lewis, Modified on Thu, 30 May 2024 at 02:47 AM by Damien Zwillinger

Applies to:

  • Velixo NX
  • Sage Intacct

The Velixo NX SI.QUERY function returns the contents of the specified Sage object.


The available objects are listed in the Sage API Reference:  API Reference | Sage Intacct Developer



This is the syntax for this function:

Top, OutputColumns1, OutputColumns2, ... OutputColumnsN)


The SI.Query function has these Parameters:






The name of the connection, as specified in the Connection Manager



The Query and List Legacy entities which can be accessed are listed in API Reference | Sage Intacct Developer





This parameter is
Case Sensitive and must be enclosed within quote marks

SQL-like query based on fields on the object. The following operators are supported: <, >, >=, <=, =, like, not like, in, not in, IS NOT NULL, IS NULL, AND, OR


Illegal XML characters must be properly encoded, and single quotes must be escaped with backslashes ('Jane\'s Deli'). 


Joins are not supported.



Comma-separated list of columns to be included in the resulting dataset. If this parameter is empty, all the columns from the object will be returned.

A column may come from:

  • the Object itself
  • A related Object (refer to Platform Services > Object for information about relationships and column names)


  • Columns from related Object must specify both the related Object and the Column name, e.g. CUSTOMER.NAME 
  • It is possible to return columns from multiple levels deep, e.g. MANAGER.EMPLOYEEPOSITION.NAME



TRUE or FALSE, indicating if should column headers be included in the dataset.



Returns the number of records specified.  If a value is specified, the results are sorted by Record Number (RECORDNO).  Otherwise, they are not sorted.

OutputColumn1OptionalSpecify a cell of your Worksheet to return the data of the first column specified in the Select parameter as a data table.
OutputColumn2OptionalSpecify a cell of your Worksheet to return the data of the second column specified in the Select parameter as a data table.
Must be on the same row as OutputColumn1

OutputColumnNOptionalSpecify a cell of your Worksheet to return the data of the Nth column specified in the Select parameter as a data table.
Must be on the same row as OutputColumn1 and every other OutputColumn.

Excel Online

Important: Loading large datasets with SI.QUERY() is not performant in Excel Online due to the limitations of the Excel platform in the browser.  If your dataset contains more than approximately 100,000 records, we strongly recommend using a desktop version of Excel 365 for Windows or Mac OS.



Example 1 - Top 10 records


Description: Returns the top 10 records returned by the GLBatch object.




Example 2 - Filter example 1

SI.QUERY("Sage","TaxSolution", "TaxMethod='VAT or GST'", "SolutionID,TaxMethod")



Returns the SolutionID and TaxMethod fields from the TaxSolution object where the TaxMethod field is set to VAT or GST:




Example 3 - Filter example 2

=SI.QUERY("Sage","TaxDetail","DESCRIPTION LIKE('%Sales%')", "RecordNo,DetailID,Description,TaxType,Value,Include, GLAccount,TaxAuthority,Status")



Returns the specified fields (in the order specified) from the TaxDetail object where the Description field contains the case-sensitive substring Sales 





Example 4 - Mirrored in Excel data table



The SI.QUERY in Cell A2 returns the specified fields (in the order specified by the OutputColumns) from the Project object in an Excel data table.

Example 5 - Columns from related objects

=SI.QUERY("Sage", "Project",


This SI.QUERY example queries the PROJECT Object and returns 3 columns for a single, specified ProjectId. 

The third column: NAME originates from the EMPLOYEEPOSITION Object that is related to MANAGER and then PROJECT, demonstrating multi-level "lookups".


  • the above formula is equivalent to the formula in this screenshot, demonstrating the use of cell references for function arguments.
  • The query automattically understands which relationships to use when specifying prefixing column names with related Object names.

Here are the relationships of the related objects:

  • From the PROJECT Object, the Employee relationship relates to Object: MANAGER

  • From the MANAGER Object: the Employee position relationship goes to: EMPLOYEEPOSITION Object

  • The column: NAME is then used from the EMPLOYEEPOSITION Object to return the name of the Employee Position

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article