Aufruf XSJS Datei in SAPUI5 für writng Daten auf HANA
Ich versuche zu schaffen, einen Dienst zum schreiben von Daten aus einer SAPUI5-frontend zu HANA Tabellen.
Soweit ich überprüft, ich glaube, das ist nicht möglich über OData-Services. Also ich habe einen anderen Weg gefunden, sing ein XSJS-Datei mit einem SQL-INSERT-Anweisung.
Nun, mein problem ist, mit diesem in UI5. Wie OData, ich würde so etwas wie oModel.zu erstellen, aber jetzt ich denke, das funktioniert so nicht.
Diese hat jemand eine Ahnung?
Dank!
Eva
UPDATE:
Nach der Verwendung der ersten Antwort, habe ich versucht, erstellen Sie einen Eintrag in eine HANA-Tabelle, aber ich erhalte einen 500 Fehler. Hier ist der code der xsjs Datei:
var data = '', conn = $.db.getConnection(), pstmt;
if($.request.body){
data = $.request.parameters.get("firstName");
}
var conn = $.db.getConnection();
var pstmt = conn.prepareStatement( 'INSERT INTO "Z003HB1N"."T_TEST" (FIRSTNAME) VALUES(?)' );
pstmt.setString(1,data);
pstmt.execute();
pstmt.close();
conn.commit();
conn.close();
doResponse(200,'');
$.response.contentType = 'text/plain';
$.response.setBody('Upload ok');
$.response.status = 200;
Keine Ahnung, was falsch sein könnte?
- Bezüglich deiner zweiten Frage, du könntest einen Blick in die diesem post was zeigt ein Beispiel der gewünschten Anwendungsfall. Ist
doResponse
irgendwo definiert oder könnte dies ein copy/paste Fehler? Durch die Art und Weise, mit der Web-IDE (was ist unter <server>/sap/hana/ide/) Sie sollten in der Lage sein zu Debuggen XSJS-Datei. Da Sie mit BEKOMMEN, die Sie nicht brauchen, den Körper-check in Ihrem zweiten code-Zeile.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einfach
.ajax
ruft zu rufen Sie Ihren neuen oData-Dienst auf HANA und Parameter verwenden, um mit der hand über die gewünschten Werte, um Ihre .xsjs service.Beispiel:
Auf HANA können Sie den Zugriff auf die festgelegten Parameter in Ihrem Dienst wie dieser:
$.response.status = $.net.http.OK; $.response.setBody("Hello " + firstName + " " + lastName);
und prüfen Sie die Antwort in der success-handler für das ajax-Aufruf (siehe Antwort bearbeitet).