Data binding 获取片段';将id转换为详细控制器

Data binding 获取片段';将id转换为详细控制器,data-binding,sapui5,Data Binding,Sapui5,我正在sap web ide上开发sap fiori Master Detail应用程序 我想根据我将从主视图中的列表中获得的ID筛选我在详细视图中拥有的表。该表的详细视图位于片段中。我在detail controller中创建了一个js函数来过滤该表,但在片段中似乎没有该表的id。 以下是我的详细控制器代码: this._oView = this.getView(); this._oView.attachAfterRendering(function() { var sPat

我正在sap web ide上开发sap fiori Master Detail应用程序

我想根据我将从主视图中的列表中获得的ID筛选我在详细视图中拥有的表。该表的详细视图位于片段中。我在detail controller中创建了一个js函数来过滤该表,但在片段中似乎没有该表的id。 以下是我的详细控制器代码:

this._oView = this.getView();

this._oView.attachAfterRendering(function() {

       var sPath1 = "Qmnum";
       var sOperator1 = "EQ";
       var sValue1 = "10000000";
       var oFilter1 = new sap.ui.model.Filter(sPath1, sOperator1, sValue1);

       var oBinding = this.byId("tableid").getBinding("items");

        oBinding.filter(oFilter1);
          });
我也试过用这个

sap.ui.getCore().byId();
&

但仍然没有定义

如果XML视图中使用了XML片段,则将视图ID指定为 片段ID将允许在视图的控制器中调用this.byId(…) 检索片段内的控件


初始化片段并将其附加到当前视图:

// Init fragment
var oFragment = sap.ui.xmlfragment("herePutJourneyToFragment.fragmentName", this.getView().getController());        

// Attach the fragment to the current view              
this.oView.addDependent(oFragment);
之后,您应该能够在视图中找到表:

var oTable = this.byId("tableid");
编辑时间13:45 150317贝娄:


.

您是否在清单中提供了viewId。检查它一次,因为当您尝试使用sap.ui.getCore().byId(“LOGIN_PG--loginId”)获取控制时。这里LOGIN_PG是在清单文件中定义的id,loginId是给控件的id。感谢您的评论Suryabhan,我应该在manifest.json中定义id在哪一部分?不,我不是要求您定义id。如果您无法访问对话框中的表,这意味着您的id不正确。通过检查您的表在浏览器上的id进行检查。我想获取在我的片段中创建的表的id,以便在我的详细信息控制器中使用它,但此片段没有id
// Init fragment
var oFragment = sap.ui.xmlfragment("herePutJourneyToFragment.fragmentName", this.getView().getController());        

// Attach the fragment to the current view              
this.oView.addDependent(oFragment);
var oTable = this.byId("tableid");