Skip to content

Volt MX Foundry console User Guide: Application-level APIs > VMXFoundry.OfflineObjects.executeSelectQuery

VMXFoundry.OfflineObjects.executeSelectQuery

The application-level API, executeSelectQuery allows the user to execute any select query on device database. The API executes the query provided as an argument on the device database and returns the response in successCallback.

The failureCallback is invoked in case of errors such as invalid query and so on.

Note: executeSelectQuery should be preferred only if the object-level read API is not able to serve the purpose such as join based select queries or complex SQL queries.

Note: executeSelectQuery supports only read or select queries. The API does not support create or update or delete operations on the device database.

Volt MX Iris (JavaScript)

Note: Not supported for Mobile Web, and Desktop Web channels.

Signature

VMXFoundry.OfflineObjects.executeSelectQuery(query, successCallback, failureCallback)

Parameters

Parameter Type Description Required
query String Select query to be executed on device DB. Yes
successCallback Function The function is invoked upon successful query execution. Yes
failureCallback Function The function is invoked on failure. Yes

Return Type

void

Example

function successCallback(response) {
//response contains records returned from device db for query executed.
}

function failureCallback(error) {
voltmx.print("executeSelectQuery failed with error:" + error.code);
}
var query = "Select \* from Employee where EmployeeID=5";
VMXFoundry.OfflineObjects.executeSelectQuery(query, successCallback, failureCallback);

Android (Java)

Signature

void <OfflineObjects>.executeSelectQuery(String query, final VMXCallback callback)

Parameters

Parameter Type Description Required
query String Select query to be executed on device DB. Yes
callback VMXCallback The application must implement onSuccess and onFailure methods of VMXCallback interface. Yes

Return Type

void

Example

VoltMXClient sdk = new VoltMXClient();
IVoltMXApplicationSync appSync = sdk.getOfflineObjects();
String query = "Select \* from Employee where EmployeeID=5";
appSync.executeSelectQuery(query, new VMXCallback() {
@Override
public void onSuccess(Object object) {
//response contains records returned from device db for query executed.
}
@Override
public void onFailure(Object error) {
OfflineObjectsException e = (OfflineObjectsException) error;
Log.d("executeSelectQuery", "executeSelectQuery failed with error:" + e.getMessage() + "callstack: " + e.getStackTrace());
}
});

iOS (Objective C)

Signature

(void) <OfflineObjects>.executeSelectQuery:(NSString \*)query
onSuccess:(VMXSuccessCompletionHandler)onSuccess
onFailure:(VMXFailureCompletionHandler)onFailure

Parameters

Parameter Type Description Required
query NSString* Select the query to be executed on device DB. Yes
onSuccess VMXSuccessCompletionHandler The function is invoked on successful query execution. Yes
onFailure VMXFailureCompletionHandler The function is invoked on failure. Yes

Return Type

void

Example

VMXClient _ sdk = [VMXClient sharedClient];
OfflineObjects _ applicationSync = [sdk getOfflineObjects];
NSString _ query = @"Select _ from Employee where EmployeeID=5"
VMXSuccessCompletionHandler onSuccess = ^ void(id object) {
NSLog(@"executeSelectQuery successful");
};

VMXFailureCompletionHandler onFailure = ^ void(id object) {
NSLog(@"executeSelectQuery failed");
};
[applicationSync executeSelectQuery: query
onSuccess: onSuccess
onFailure: onFailure
];