2017-11-25 5 views
0

バッチレコードを送信できません。しかし、私は毎回単一のエンティティを追加することができます。私は提出する際に以下の機能を使用しました。 //毎回単一のエントリを作成します。 onSubmitChanges:関数(){SAPUI5でoDataを使用してバッチを作成する方法はありますが、毎回単一レコードを作成することができます

 var oSelectedVal = this.getView().byId("plmSelect"), 
      oSelectedVal = oSelectedVal.getSelectedItem().getKey(), 
      oModel = this.getView().getModel(), 
      oEntry = {}; 
     oEntry.MyKeyField1 = oSelectedVal; 
     oEntry.MyEntry1 = globalVariable1; // global variable declared to get values 
     oEntry.MyEntry2 = globalVariable2; 
     oEntry.MyEntry3 = globalVariable3; 
     oEntry.MyEntry4 = globalVariable4; 

     if (oEntry.MyKeyField1 !== "" && oEntry.MyEntry1 !== "" && oEntry.MyEntry2 !== "") { 
      var oContext = oModel.createEntry('/MyEntitySet', { 
       properties: oEntry, 
       success: function() { 
        MessageToast.show("Create successfuly"); 
        // not able to delete/remove after created successfully used the following 

        //oModel.setBindingContext(oContext); 
        //oModel.resetChanges(); 
        //aModel.destroyBindingContext(); 

        /*oModel.updateBindings({ 
         bForceUpdate: true 
        });*/ 
        // oModel.refresh(); 
        //oModel.deleteCreatedEntry(); 
       }, 
       error: function() { 
        MessageToast.show("Create failed"); 
       } 
      }); 
      oModel.submitChanges(); 

      //oModel.refresh(); 

     } else { 
      MessageToast.show("Store Area and Store Description are madatory."); 
     } 
     this.onUpdateFinished(); 
    }, 
+0

ここに投稿する前にコードを整理してください –

+0

私は本当にあなたの質問を理解していません。あなたはバッチとして何を送ろうとしていますか?何が今働いていないのですか? – luuksen

答えて

-1

バッチを許可されていません。テーブルを送信する場合は、ディープエンティティを使用する必要があります。

+0

本当ですか?何で許可されていないのですか?私は前にUI5でバッチリクエストを行った。 –

+0

この回答は間違っています。ディープ・インサートとバッチの両方を使用できます。彼らはどちらも利点/不利な点を持っています。 – luuksen

+0

こんにちはクリス、たぶん私はワゴンですが、いつあなたは試しましたか?コードを共有できますか?バッチメソッドを実装しようとすると、ブラウザでは許可されませんでしたが、古い標準アプリケーションがそれを使用しています。@ ChrisNeve – Emre

関連する問題