首页 文章

SAPUI5:如何绑定智能表

提问于
浏览
0

嗨,我有一个像下面这样的智能表

<VBox id="myid">
        <smartTable:SmartTable id="smartTable_ResponsiveTable" entitySet = "Employee" enableAutoBinding="true"
                tableType="ResponsiveTable" initialise="onSmartTableInit" editable="false" useVariantManagement="false"
                useTablePersonalisation="true" header="Employees" showRowCount="true" useExportToExcel="true" />
</VBox>

我的odata服务如下:

<workspace>
  <atom:title>Default</atom:title>
  <collection href="TablePersonalization">
      <atom:title>TablePersonalization</atom:title>
  </collection>
  <collection href="Employee">
     <atom:title>Employee</atom:title>
  </collection>
  <collection href="Collections">
    <atom:title>Collections</atom:title>
  </collection>
</workspace>

我的智能表位于第二个视图中,该视图具有第一个视图的导航 . 当我移动到第二个视图时,我们将整个视图绑定到不同的路径,如下所示 .

this.getView().bindElement(bindingPath);

bindingPath =“/ Collections('12345')”

在我的情况下,我试图绑定路径“Employee”,这是根级别的父导航 .

iam对 entitySettableBindingPath 感到困惑

oData的元数据如下 .

<EntityType Name="EmployeeType">
 <Key>
  <PropertyRef Name="EMP_ID"/>
 </Key>
 <Property Name="EMP_ID" Type="Edm.String" Nullable="false"   MaxLength="1024"/>
 <Property Name="NAME" Type="Edm.String" Nullable="false" MaxLength="1024"/>
 <Property Name="ADDR" Type="Edm.String" Nullable="false" MaxLength="1024"/>
 <Property Name="SAL" Type="Edm.String" Nullable="false" MaxLength="1024"/>
</EntityType>

我的数据库表如下: -

entity Employee {
    key EMP_ID      :               String(1024) not null;  // Identifier of   the Column
    NAME            :               String(1024) not null;
    ADDR            :               String(1024) not null;
    SAL             :               String(1024) not null;
};

我的odata如下 .

"MY_SCHEMA"."my.db.models::CollectionModel.Employee" as "Employee";

我对这里的映射感到困惑 . entitySet需要什么,是元数据中的表名或实体类型名称,以及表绑定路径 . 任何机构都可以回答这个问题 .

2 回答

  • 1

    entitySet 需要您的实体在服务中的名称 . 这主要是必需的,以便在设置按钮中实体中的所有字段都会出现 .
    TableBindingPath - 这是绑定数据 . 例如,您可以将表绑定到与Parent的关联,在这种情况下,您可以指定关联名称 .
    Reference应该有所帮助 .

    请注意,如果您未指定tableBindingPath并将enableAutoBinding标志设置为true,那么系统将表将自动调用指定的entitySet上的getEntitySet .
    希望这可以帮助 .
    感谢致敬,
    威拉

  • 0

    我在SmartTable上找到了以下内容 .

    检查你正在使用的sapui5的版本,在我的情况下,我使用sapui5 1.28.5,其中智能表不工作,然后我将sapui5的版本更改为1.30它开始工作 .

相关问题