You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Web IDE本地注解中添加ValueList实现SAPUI5 Smart Filter值帮助?

Solution: Add ValueList Annotations in Local Annotation Files

Absolutely! You can definitely add the Common.ValueList annotations in your local annotation file to map your main entity set with the value help entity set. This is a standard workaround when the backend OData service doesn't include these annotations out of the box, even though the value help entity sets are already available in the service.

Here's a step-by-step guide to implement this:

1. Locate Your Local Annotation File

First, find the local annotation file in your Web IDE project—it's typically named annotations.xml (for XML-based annotations) or annotations.cds (if you're using CDS annotations).

2. Ensure the Common Vocabulary Namespace Is Imported

For XML annotations, make sure you've added the Common vocabulary namespace declaration at the top of your file:

<edmx:Edmx ... xmlns:com="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata/Common">
  <!-- Your annotations go here -->
</edmx:Edmx>

For CDS annotations, the Common vocabulary is usually available by default, but you can explicitly reference it if needed:

using Common from '@sap/cds/common';

3. Add the ValueList Annotation for Your Target Property

Below are examples for both XML and CDS annotations, using a sample scenario where:

  • Your main entity set is Products
  • The property needing value help is CategoryID
  • The value help entity set is Categories
  • You want to map CategoryID (main entity) to CategoryID (value help), and display CategoryName as additional information

XML Annotation Example

<Annotations Target="YourODataService.Products/CategoryID">
  <Annotation Term="com:ValueList">
    <Record>
      <PropertyValue Property="Label" String="Product Category"/>
      <!-- Name of your value help entity set -->
      <PropertyValue Property="CollectionPath" String="Categories"/>
      <!-- Enable search functionality in the value help dialog -->
      <PropertyValue Property="SearchSupported" Bool="true"/>
      <PropertyValue Property="Parameters">
        <Collection>
          <!-- Bidirectional mapping: use this property for filtering -->
          <Record Type="com:ValueListParameterInOut">
            <PropertyValue Property="LocalDataProperty" PropertyPath="CategoryID"/>
            <PropertyValue Property="ValueListProperty" String="CategoryID"/>
          </Record>
          <!-- Display-only field (won't be used for filtering) -->
          <Record Type="com:ValueListParameterDisplayOnly">
            <PropertyValue Property="LocalDataProperty" PropertyPath="CategoryName"/>
            <PropertyValue Property="ValueListProperty" String="CategoryName"/>
          </Record>
        </Collection>
      </PropertyValue>
    </Record>
  </Annotation>
</Annotations>

CDS Annotation Example

annotate YourODataService.Products with {
  CategoryID @Common.ValueList : {
    label: 'Product Category',
    collectionPath: 'Categories',
    searchSupported: true,
    parameters: [
      {
        localDataProperty: CategoryID,
        valueListProperty: CategoryID,
        type: #InOut
      },
      {
        localDataProperty: CategoryName,
        valueListProperty: CategoryName,
        type: #DisplayOnly
      }
    ]
  };
}

4. Verify and Test

After adding the annotations:

  • Save your changes
  • Restart the Web IDE preview or redeploy your project to ensure the annotations are loaded
  • Open the Smart Filter Bar—you should now see value help suggestions and the value help dialog for the annotated property

Key Notes

  • Double-check that the CollectionPath matches the exact name of your value help entity set in the OData service (case-sensitive!)
  • Ensure the property names in the parameter mapping match those in your entities exactly
  • If the value help still doesn't work, verify the Target path in your annotations (it should point to the full path of the property in your main entity)

内容的提问来源于stack exchange,提问作者Tee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 12:22:40