XMLビューでOdata Modelで取得したデータを表示しようとしています。 Component.jsでは、サービスURLを使用してモデルを作成し、通常通り動作します。コントロールにバインドする要素SAPUI5
var oDataModel = new sap.ui.model.odata.v2.ODataModel("http://server:port/sap/opu/odata/SAP/ZWYMB_SRV", {
user:"abapleader",
password: "[email protected]",
headers: {
"sap-client": 300
},
useBatch:false
});
this.setModel(oDataModel, "oDataModel");
これまでのところ、model.read()
機能を使用してデータを取得することができました。
詳細ビューを表示する必要があります。 onInit
イベントのための私のコードは以下の通りです:
this.router.getRoute("zwm01detail").attachPatternMatched(this._onObjectMatched.bind(this));
},
_onObjectMatched: function(oEvent) {
var that = this;
var MaWorkDoc = oEvent.getParameter("arguments").MaWorkDoc;
this.getModel("oDataModel").metadataLoaded().then(function() {
var sPath = that.getModel("oDataModel").createKey("/WorkDocList", {
MaWorkDoc: MaWorkDoc,
Pernr: "0001"
});
console.log(sPath);
that.getView().bindElement({
path:sPath
});
});
sPath
私はconsole.log(sPath)
を使用してプリントアウトとして:/ WorkDocList(MaWorkDoc = '1110000001'、PERNR = '0001')、私は考えている、正しいです。私はこのパスを使ってバックエンドを実装しテストしましたが、基本的には問題ありません。しかし、なぜ私はビュー上にデータを表示できないのかわかりません。
Detail.view.xml:
<Text text="{/MaWorkDoc}" maxLines="0"/>
任意の提案、してください?
詳細を教えてください。私のコードに_onObjectMatchedイベントを実装するにはどうしたらいいですか?申し訳ありませんが、それはあなたに不快感を感じさせるが、私はこれで全く新しいです。 –
Answer – krisho