2015-09-28 74 views
1

我們可以一次向Adapter發送多個記錄,也可以將對象發送到Adapter。 這裏是樣品適配器代碼:IBM MobileFirst 7.0 - 適配器調用

var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)"); 
function addSQLAdapterDemo(param0,param1,param2) { 
return WL.Server.invokeSQLStatement({ 
    preparedStatement : addStatement, 
    parameters : [param0,param1,param2] 
}); 

}

Main.js在客戶端的JavaScript:

$('button#InsertData').on('click', function() { 
    var invocationData = { 
    adapter : 'SQLAdapterDemo', 
    procedure : 'addSQLAdapterDemo', 
    parameters : [5,'Raj',25000][6,'karan',25000], 
    compressResponse: true 
}; 
WL.Client.invokeProcedure(invocationData); 

在上面的代碼中,我通過三門PARAMS可我們發送的數據是這樣的。我們可以將對象發送給適配器。目標是有這三個參數。

+0

你是問,因爲你的代碼不能正常工作,或者是工作,但你所要求檢查它是否是好的這樣做呢?問題是什麼? –

+0

@Idan Adar它不適合我。而且我也希望能夠將對象發送給適配器。 –

+0

1)它是如何失敗的?你遇到了什麼錯誤? 2)定義「對象」 –

回答

3

你可以試試這個代碼:

/*--------------------------------- 
Adapter Code 
---------------------------------*/ 
var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)"); 
function addSQLAdapterDemo(allRecords) { 

var oneRecord; 
for (var count = 0; count < allRecords.length; count++){ 

    oneRecord = allRecords[count]; 
    WL.Server.invokeSQLStatement({preparedStatement : addStatement,parameters : [oneRecord.id,oneRecord.name,oneRecord.salary]}); 

} 

/*--------------------------------- 
Client Code 
---------------------------------*/ 
$('button#InsertData').on('click', function() { 

/*Preparing JSON Array*/ 
    var allRecordJson = []; 
    allRecordJson.push({"id":"5", "name" : "Raj", "salary" : "25000"}); 
    allRecordJson.push({"id":"6", "name" : "Karan", "salary" : "20000"}); 
/*JSON Array Builded*/ 

    var invocationData = { 
    adapter : 'SQLAdapterDemo', 
    procedure : 'addSQLAdapterDemo', 
    parameters : [allRecordJson], 
    compressResponse: true 
}; 
WL.Client.invokeProcedure(invocationData); 
} 
+0

謝謝。它爲我工作。 –

相關問題