Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

The purpose of Service Data Objects (SDOs) is to provide the ability to securely execute SQL on the database server from Aptify Web and Aptify SOA, returning the results to the caller.  The flexibility of being able to execute SQL statements, including stored procedures, without opening up the service layer to SQL injection attacks is a powerful feature in Aptify SOA.  System administrators and developers have control over which SQL statements can be executed through the Services Data Objects Entity.  Service Data Objects are executed by Name, not the SQL that executes.  Aptify SOA looks up the Service Data Object, confirms that the current platform and User are allowed to execute the Service Data Object, retrieves the SQL statement from the Service Data Object record, executes it and returns the results to the caller.

...

Generally Service Data Objects are a good choice for providing data when leveraging an Aptify Views is not appropriate. 

 

How to Create Service Data Object

Insert excerpt
PK55:Create A Service Data ObjectPK55:
Create A Service Data Object
nopaneltrue

Calling Service Data Object from Aptify SOA:

Header:

you need to pass AptifyAutherization AptifyAuthorization header in order to receive results.

Header NameHeader Value
AptifyAuthorization<AuthType> <TokenId>

End Point

Cached?Yes
MethodGET

Example Endpoint

Code Block
titleURL
https://<service base>/services/DataObjects/{Service DataObject Name}

Parameters defined in the SDO object need to be appended to the URL as a query string. Parameters should be the same as those defined in the SDO object.

Endpoint Example With Parameters

Code Block
https://<service base>/services/DataObjects/{Service DataObject Name}?ParameterName1=value1&ParameterName2=Value2&....

Sample End Point(Execute spGetCompanyAccountSummary SDO):

The following example illustrates how to execute the "spGetCompanyAccountSummary" stored procedure as an endpoint. This example expects two parameters which are defined in the Web Service Application. The parameters are companyId (10) and Convertmulticurrency (false).

...

Code Block
titleURL
 https://<service base>/services/DataObjects/spGetCompanyAccountSummary?CompanyID=10&Convertmulticurrency=false

Sample Response Body 

Here is sample Response data for spGetCompanyAccountSummary data object.

...