In order to bring you the best possible user experience, this site uses Javascript. If you are seeing this message, it is likely that the Javascript option in your browser is disabled. For optimal viewing of this site, please ensure that Javascript is enabled for your browser.
Login  |   On Demand  |   Home  |   qad.com




Query Service API
The Query Service is an SI API that is called by using a native Progress call, a Progress appserver call, or an XML Web service (QXI) call. The API is serviced by the Query Service engine, Business Object Manager, and Profile Manager.

Query Service API
The Business Object Manager and Profile Manager create the business object and profile datasets. The Query Service engine connects to the source application database, extracts the data, and returns it to the calling application as a profile dataset.
Note: If a business object is domain-enabled, the domain must be passed in the request. The domain code is a session context parameter and does not have to be included in the query filter.
When accessing the API, the calling application can specify filter conditions that control the data returned by the Query Service. These are defined as a single-character expression or string, and the data can only be filtered using the primary table in the business object. When using XML (QXI) to call the Query Service, the filter is a node in the request XML. When using a direct API call, a field in a temporary table is passed as a parameter.
Use a native Progress program called com/qad/qxtend/si/QueryService.p to access the Query Service API. The internal procedure is called querySourceApplication. It takes a static dataset as an input parameter and a dataset-handle as an output parameter.
The input dataset contains the definition of the Query Service request. The temporary table in the data set is defined as follows:

Input Dataset for a Query Service Request
 
Property Name
Description
SourceApplication
The name of the source application defined in QXtend Outbound. It contains the connection information for the database that is the source of the query data.
Profile
The name of the profile (or business object) defined in QXtend Outbound that defines the format of the response.
Filter
The filter to apply to the profile (or business object) to return a subset of data from the database. This must be a valid Progress ABL WHERE clause.
MaxRows
The maximum number of records to return. If set to zero, the Query Service will return all data that matches the filter.
IgnoreBOFilter
If set to TRUE, only the filter provided in the Query Service request will be used. If set to FALSE, the filter defined on the business object is added to the filter defined in the Query Service request.
IgnoreInnerJoin
If set to TRUE, any inner join contained in the business object is ignored.
The API first validates the input data, and then calls the Query Service engine to process the request.