I have followed the guidance here https://help.sap.com/viewer/468a97775123488ab3345a0c48cadd8f/1809BW.001/en-US/facfea09018d4376acaceddb7e3f03b6.html
But, it doesn't seem to work (or I'm missing something)
here is my CDS @UI.facet annotation
...
{
label : 'Pricing',
id : 'pricing',
purpose: #STANDARD,
type : #COLLECTION,
position: 30
},
{
label:'Pricing Info',
id : 'pricinginfo',
parentId : 'pricing',
type : #COLLECTION,
position: 40
},
{
label:'Contract Values',
id : 'ContractValues',
parentId : 'pricinginfo',
type : #FIELDGROUP_REFERENCE,
targetQualifier : 'contractvalues',
position: 60
},
{
label:'Funding Values',
id : 'FundingValues',
parentId : 'pricinginfo',
type : #FIELDGROUP_REFERENCE,
targetQualifier : 'fundingvalues',
position: 70
},
{
label:'Authorized Unpriced Values',
id : 'AuthorizedUnpricedValues',
parentId : 'pricinginfo',
type : #LINEITEM_REFERENCE,
targetQualifier : 'unpricedvalues',
position: 80
},
...
The generated XML annotations from the CDS is below, which looks to be structured the same as the documentation.
<Record Type="UI.CollectionFacet">
<PropertyValue Property="Label" String="Pricing"/>
<PropertyValue Property="ID" String="pricing"/>
<PropertyValue Property="Facets">
<Collection>
<Record Type="UI.CollectionFacet">
<PropertyValue Property="Label" String="Pricing Info"/>
<PropertyValue Property="ID" String="pricinginfo"/>
<PropertyValue Property="Facets">
<Collection>
<Record Type="UI.ReferenceFacet">
<PropertyValue Property="Label" String="Contract Values"/>
<PropertyValue Property="ID" String="ContractValues"/>
<PropertyValue Property="Target" AnnotationPath="@UI.FieldGroup#contractvalues"/>
</Record>
<Record Type="UI.ReferenceFacet">
<PropertyValue Property="Label" String="Funding Values"/>
<PropertyValue Property="ID" String="FundingValues"/>
<PropertyValue Property="Target" AnnotationPath="@UI.FieldGroup#fundingvalues"/>
</Record>
<Record Type="UI.ReferenceFacet">
<PropertyValue Property="Label" String="Authorized Unpriced Values"/>
<PropertyValue Property="ID" String="AuthorizedUnpricedValues"/>
<PropertyValue Property="Target" AnnotationPath="@UI.LineItem#unpricedvalues"/>
</Record>
</Collection>
</PropertyValue>
</Record>
</Collection>
</PropertyValue>
</Record>
The result is the higher level Collection Facet ("Pricing") gets ignored and the 2nd level ("Pricing Info") is what is displayed.
