微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

尽管已配置,智能表的值列表智能过滤器栏字段仍然不存在

如何解决尽管已配置,智能表的值列表智能过滤器栏字段仍然不存在

我无法在智能表的智能过滤器栏中为字段创建值列表。

我在SEGW中有一个具有以下实体类型定义的实体集ApplicationsOverviewItemSet:

Definition of entity ApplicationsOverviewItemSEt

智能表必须显示此实体集的数据。我希望在其智能过滤器栏中为statute属性提供一个值列表。我使用此SEGW实体类型定义定义了另一个名为ApplicationStatuteSet的实体集:

Definition of entity ApplicationStatute

该实体集应该是可能的法规值及其说明的列表。我在扩展数据提供程序类中实现了其GET方法,确保支持所有分页查询选项($ top,$ skip和$ inlinecount)。实体集的基本GET查询现在以JSON格式返回以下数据:

{
    "d": {
        "results": [
            {
                "__Metadata": {
                    "id": "https://WEBWSD.<my company>:443/sap/opu/odata/sap/ZC_AD_SCHOLAR_SRV/ApplicationStatuteSet('007')","uri": "https://WEBWSD.<my company>:443/sap/opu/odata/sap/ZC_AD_SCHOLAR_SRV/ApplicationStatuteSet('007')","type": "ZC_AD_SCHOLAR_SRV.ApplicationStatute"
                },"STATUTE": "007","DESCR": "Visiting scholar"
            },{
                "__Metadata": {
                    "id": "https://WEBWSD.<my company>:443/sap/opu/odata/sap/ZC_AD_SCHOLAR_SRV/ApplicationStatuteSet('014')","uri": "https://WEBWSD.<my company>:443/sap/opu/odata/sap/ZC_AD_SCHOLAR_SRV/ApplicationStatuteSet('014')","STATUTE": "014","DESCR": "International scholar"
            }
        ]
    }
}

我调整了扩展模型提供程序类,以在服务元数据文档中生成以下注释,从而将ApplicationStatute实体指定为法规字段的值列表提供程序:

<Annotations Target="ZC_AD_SCHOLAR_SRV.ApplicationStatute" xmlns="http://docs.oasis-open.org/odata/ns/edm">
    <Annotation Term="com.sap.vocabularies.Common.v1.ValueList">
        <Record>
            <PropertyValue Property="Label" String="Statutes"/>
            <PropertyValue Property="CollectionPath" String="ApplicationStatuteSet"/>
            <PropertyValue Property="SearchSupported" Bool="true"/>
            <PropertyValue Property="Parameters">
                <Collection>
                    <Record Type="com.sap.vocabularies.Common.v1.ValueListParameterInOut">
                        <PropertyValue Property="LocalDataProperty" PropertyPath="statute"/>
                        <PropertyValue Property="ValueListProperty" String="STATUTE"/>
                    </Record>
                    <Record Type="com.sap.vocabularies.Common.v1.ValueListParameterdisplayOnly">
                        <PropertyValue Property="ValueListProperty" String="DESCR"/>
                    </Record>
                </Collection>
            </PropertyValue>
        </Record>
    </Annotation>
</Annotations>

重新生成并重新激活了所有运行时服务工件。

在UI5前端视图声明中,我显式设置了preventinitialDataFetchInValueHelpDialog 法规字段的ControlConfiguration元素的属性设置为false。

AFAIK,这是为字段创建值列表所要做的全部工作。 但是,如果我在智能过滤器栏的“法规”字段中按F4,则只会显示以下弹出窗口:

Missing 'Select from list' tab

缺少从列表中选择标签,并且没有值列表可供查看...

我要实现的一个示例是在the first SAPUI5 smart table sample app的“公司代码”字段中按F4时弹出的值列表:

'Select from list' tab available

有人知道我在为该字段创建值列表时做错了什么还是忽略了什么?

预先感谢所有帮助,

约书亚

解决方法

我们发现了问题。注释目标必须引用您要将值列表耦合到的实体中的字段。就我而言,它必须是“ ApplicationsOverviewItem / statute”。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。