2016-07-26 6 views
0

SAPUI5アプリケーションを開発しています。私は、DBから件のデータをretriveする必要があると私は.xsjsを使用しています、これは私のAJAX呼び出しです:XSJSは常にajaxコールからexmpty結果セットを返します

jQuery.ajax({ 
      url : "/SimpleProject/services/querytest.xsjs", 
      method: "GET", 
      success: function(response) { 
       console.log(JSON.parse(response)); 
      }, 
      error: function(e) { 
       sap.ui.commons.MessageBox.alert("ERROR"); 
      } 
     }); 

そして、これは私がSAP HANA DBを照会しようとする私の.xsjsファイルです。

try { 
    $.response.contentType = "application/json"; 

    var conn = $.db.getConnection(); 

    var statement = conn.prepareStatement('SELECT * FROM "_SYS_BIC"."TABLETEST"'); 
    var rs = statement.executeQuery(); 

    conn.commit(); 

    if (rs != undefined) 
     $.response.setBody(JSON.stringify(rs)); 
    else $.response.setBody(JSON.stringify("empty record set")); 

    $.response.status = $.net.http.OK; 
} catch(e) { 
    $.response.status = $.net.http.INTERNAL_SERVER_ERROR; 
    $.response.setBody(JSON.stringify(e)); 
} finally { 
    statement.close(); 
    conn.close(); 
} 

SQLコンソールからクエリを実行した場合、正常に動作しますが、xsjsからは常に空の結果が返されます。

答えて

0

"rs"オブジェクトを出力として送信できませんが、結果として別のオブジェクトを作成する必要があります。

while (rs.next()) { 
     var record = {}; 
     record.npp = rs.getString(1); 
     record.prog = rs.getString(2); 
     record.sottoProg = rs.getString(3); 
     output.results.push(record); 
} 
rs.close(); 

ここで、xsjsは正常に動作します。

関連する問題