1つの画面に複数のodataコールがあり、バッチコールではありません。私はすべての呼び出しが終了した後にイベントをトリガーしたい。私はどうしますか?すべてのodata呼び出しが完了したら、画面でどのように知りますか?
答えて
sap.ui.model.odata.v2.ODataModelのイベントbatchRequestCompleted(oControlEvent)を使用できます。ドキュメントから:リクエストが成功したかどうかに関係なく、リクエストが完了した後(応答の受信を含む)、 'batchRequestCompleted'イベントが発生します。
私は一度の呼び出しを持っていません。 – Gautami
モデルは要求を終了するたびに呼び出されます、あなたのモデルに以下のコードを追加します。
this.getView().getModel().attachRequestCompleted(function(){console.log("complete!");});
これは、単一コールが行われた場合にのみ機能します – Gautami
あなたがテーブルを使用している場合は、それぞれの読み取りが完了したときに通知するupdateFinishedイベントを使用することができます。あなたは
onInit: function() {
this.oComplete = {
"tab1" : false,
"tab2" : false,
"tab3" : false
}
を初期化するとき
<Table headerText="tab1"
updateFinished="onTableUpdate"
items="{/Collection}"...
<Table headerText="tab2"
updateFinished="onTableUpdate"
items="{/Collection}"...
<Table headerText="tab3"
updateFinished="onTableUpdate"
items="{/Collection}"...
あなたはフラグを維持する必要がありますチェックを維持し、各テーブルは、その更新を完了したときはtrueにこれらのフラグを設定する方法が必要になります。
onTableUpdate: function(oEvent){
var oTable= oEvent.getSource(),
sText = oTable.getHeaderText();
this.oComplete[sText] = true;
//Check if all read's are complete
if(this.oComplete["tab1"] && this.oComplete["tab2"] && this.oComplete["tab3"]){
this._updateFinished();
}
},
_updateFinished : function(){
//Add you logic which should run after all call's complete
...
}
完了したら、_updateFinishedがトリガーされます。
注:updateFinishedイベントはすべてのコールが完了しているかどうかを知るためにsap.m.ListBase
- 1. JQueryですべてのajax呼び出しが完了すると、各ループは完了しますか?
- 2. 呼び出されたすべての非同期要求が完了したことをどのように知ることができますか?
- 3. Javaがajax呼び出しでそのプロセスを完了したかどうかを知る方法
- 4. 部分ビューでのajax呼び出しが完了したら、ホストMVCページでjavascriptを呼び出すにはどうすればよいですか?
- 5. 完了ブロックが完了したらメソッドを呼び出す方法は?
- 6. CompletableFutureは、Webサービスの呼び出しを行い、すべてが完了したら保存します。
- 7. unittestクラスがすべてのテストで完了したかどうかを知る方法はありますか?
- 8. $ .ajaxの呼び出しが完了したかどうかをChromeに確認させますか?
- 9. ページのロードが完了したら、どのように関数を呼び出すことができますか? (そしてそれだけです)
- 10. dataTaskWithRequestの呼び出しが完了するまでスウィフト待ち
- 11. VBA:BloombergのBDP呼び出しが完了するまで待つ
- 12. タイムアウトが完了したら、どのように関数を呼び出しますか?タイムアウトはクリックイベント(Typescript)によってトリガーされます
- 13. ファイルのダウンロードが完了したら、httpwebrequestとwebresponseを使ってどのように知っていますか?
- 14. 別のアクティビティが完了した後にアクティビティを呼び出すにはどうすればいいですか?
- 15. ブラウザイベントでtriggerを呼び出した後、終了したらどのように関数を呼び出すことができますか?
- 16. Clojureでpmapが完成したら、どのように関数を呼び出すのですか?
- 17. サービスからの非同期呼び出しが完了したときにのみ関数を呼び出す方法はありますか?
- 18. 呼び出されたバットファイルをどのようにして呼び出すことができますか?
- 19. 電話の呼び出し画面の呼び出し方法
- 20. 完了イベントからの迅速なアニメーションの呼び出し?
- 21. appcacheが完了したらいつ知っていますか?
- 22. すべてのAjaxリクエストが完了したらアラートを呼び出す方法は?
- 23. アクティビティが完了したら、CustomDialogをどのように保持しますか?
- 24. dismissViewControllerAnimatedへの呼び出しでEXC_BAD_ACCESSエラーが発生しました:完了:(iOS5)
- 25. 呼び出されたメソッドが完了するまでループ待機します
- 26. Xvfb + firefox:どのようにFirefoxのレンダリングが完了したか知るには?
- 27. 複数の独立したjquery ajax呼び出しを並列で呼び出し、関数がすべて終了したときに呼び出す方法
- 28. JQuery:.load()の新しいhtmlの挿入が完了したら、呼び出しを実行しますか?
- 29. スパークストリーミング - プロデューサが完了したらどのように消費者に通知するのですか?
- 30. どのようにしてカラム化が完了したのでしょうか?
を拡張するすべてのコントロールのために働くには、トリッキーなビジネスです。あなただけのテーブルやリストを使用していますか?はいの場合は方法があります –
私は主に画面上にテーブルを持っています。私は5つのテーブルを5つの異なるエンティティセットから、1つの画面で読み取ることができます。 5つの異なるodataコールがあります。では、すべての通話が終了したらどのように知っていますか? – Gautami