将项目数据绑定到详细信息视图

时间:2018-08-03 20:45:57

标签: odata sapui5

这是我的查看页面

SecondView.view.xml

<mvc:View xmlns:core="sap.ui.core" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m" xmlns:f="sap.ui.layout.form" xmlns:anubhav="myfiori.controls" xmlns:html="http://www.w3.org/1999/xhtml" controllerName="myfiori.controller.SecondView">
<Page title="My Second View" showNavButton="true" navButtonPress="onBack" content="{/ZPO_HEADERSet}">
    <content>

        <Table id="lineItemsList" width="auto" items="{toItems}">
            <headerToolbar>
                <Toolbar id="lineItemsToolbar">
                    <Title id="lineItemsHeader" />
                </Toolbar>
            </headerToolbar>
            <columns>
                <Column>
                    <Text text="Doc No" />
                </Column>
                <Column >
                    <Text text="Material No"/>
                </Column>
            </columns>
            <items>
            <ColumnListItem >
                    <cells>
                        <Text text="{Ebelp}"/>
                        <Text text="{Matnr}"/>
                    </cells>
                </ColumnListItem>
            </items>
        </Table>
    </content>

</Page>

我的 Item数据路径为"ZPO_HEADERSet('1100000001’)"。这样我就可以获取特定标头ID的所有Item。

我的控制器

SecondView.controller.js

 sPath = "/ZPO_HEADERSet('" + Id + "')";
 this.getView().bindElement(sPath);

按下主行时,我应该得到它的物品。但是我正在获取每个标题ID的所有项目行,如下面的屏幕截图所示。

enter image description here

1 个答案:

答案 0 :(得分:1)

这是因为在您的Page中,您将整个实体集绑定到内容聚合。

删除此content="{/ZPO_HEADERSet}",然后重试。

bindElement(sPath)函数将在所有相对绑定的前面加上'sPath'