C_ChmlSuplrMatlSupplierVH
Value Help for Supplier
C_ChmlSuplrMatlSupplierVH is a Consumption CDS View that provides data about "Value Help for Supplier" in SAP S/4HANA. It reads from 2 data sources (I_BusinessPartner, I_Supplier_to_BusinessPartner) and exposes 25 fields. It has 1 association to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_BusinessPartner | BusinessPartner | from |
| I_Supplier_to_BusinessPartner | SupplierLink | inner |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_Supplier | _Supplier | _Supplier.Supplier = $projection.Supplier |
Annotations (19)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Value Help for Supplier | view | |
| AbapCatalog.sqlViewName | CCSMSUPLRVH | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| Metadata.allowExtensions | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ObjectModel.dataCategory | #VALUE_HELP | view | |
| ObjectModel.usageType.dataClass | #ORGANIZATIONAL | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| UI.headerInfo.typeName | Supplier | view | |
| UI.headerInfo.typeNamePlural | Suppliers | view | |
| UI.headerInfo.title.label | Supplier | view | |
| UI.headerInfo.title.value | Supplier | view | |
| Search.searchable | true | view |
Fields (25)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| BusinessPartnerSupplier | I_BusinessPartner | BusinessPartner | ||
| SearchTerm1 | ||||
| SearchTerm2 | I_BusinessPartner | SearchTerm2 | ||
| OrganizationBPName1 | I_BusinessPartner | OrganizationBPName1 | ||
| OrganizationBPName2 | I_BusinessPartner | OrganizationBPName2 | ||
| OrganizationBPName3 | I_BusinessPartner | OrganizationBPName3 | ||
| OrganizationBPName4 | I_BusinessPartner | OrganizationBPName4 | ||
| StreetName | ||||
| HouseNumber | ||||
| PostalCode | ||||
| CityName | ||||
| Country | ||||
| CountryName | ||||
| DataControllerSet | I_BusinessPartner | DataControllerSet | ||
| DataController1 | I_BusinessPartner | DataController1 | ||
| DataController2 | I_BusinessPartner | DataController2 | ||
| DataController3 | I_BusinessPartner | DataController3 | ||
| DataController4 | I_BusinessPartner | DataController4 | ||
| DataController5 | I_BusinessPartner | DataController5 | ||
| DataController6 | I_BusinessPartner | DataController6 | ||
| DataController7 | I_BusinessPartner | DataController7 | ||
| DataController8 | I_BusinessPartner | DataController8 | ||
| DataController9 | I_BusinessPartner | DataController9 | ||
| DataController10 | I_BusinessPartner | DataController10 | ||
| _Supplier | _Supplier |
@EndUserText.label: 'Value Help for Supplier'
@AbapCatalog:
{
sqlViewName: 'CCSMSUPLRVH',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl:
{
authorizationCheck: #CHECK,
// blocking of personal data required because of link to business partner / supplier
personalData.blocking: #REQUIRED
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata: {
allowExtensions: true
}
@VDM.viewType: #CONSUMPTION
@ObjectModel:
{
dataCategory: #VALUE_HELP,
semanticKey: [ 'Supplier' ],
usageType:
{
dataClass: #ORGANIZATIONAL,
sizeCategory: #XL,
serviceQuality: #C
}
}
@Metadata.ignorePropagatedAnnotations: true
--Header information
@UI:
{
presentationVariant:
{
sortOrder:
[
{
by: 'SupplierName',
direction: #ASC
}
]
},
headerInfo:
{
typeName: 'Supplier',
typeNamePlural: 'Suppliers',
title:
{
label: 'Supplier',
value: 'Supplier'
}
}
}
@Search.searchable: true
define view C_ChmlSuplrMatlSupplierVH
--Select data from business partner
as select from I_BusinessPartner as BusinessPartner
--join data to supplier link
inner join I_Supplier_to_BusinessPartner as SupplierLink on BusinessPartner.BusinessPartnerUUID = SupplierLink.BusinessPartnerUUID
-- association to supplier needed for DCL
association [1..1] to I_Supplier as _Supplier on _Supplier.Supplier = $projection.Supplier
{
--Supplier
@ObjectModel:
{
readOnly: true,
text.element: [ 'SupplierName' ]
}
key cast( SupplierLink.Supplier as ehfnd_bupa_supplier preserving type) as Supplier,
@ObjectModel.readOnly: true
BusinessPartner.BusinessPartner as BusinessPartnerSupplier,
--Supplier Name
@ObjectModel.readOnly: true
@Semantics.text: true
cast( BusinessPartner.BusinessPartnerFullName as ehfnd_supplier_name ) as SupplierName,
--Search name for supplier
@ObjectModel.readOnly: true
BusinessPartner.SearchTerm1,
@ObjectModel.readOnly: true
BusinessPartner.SearchTerm2,
@ObjectModel.readOnly: true
BusinessPartner.OrganizationBPName1,
@ObjectModel.readOnly: true
BusinessPartner.OrganizationBPName2,
@ObjectModel.readOnly: true
BusinessPartner.OrganizationBPName3,
@ObjectModel.readOnly: true
BusinessPartner.OrganizationBPName4,
--Adressdata
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress.StreetName,
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress.HouseNumber,
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress.PostalCode,
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress.CityName,
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress.Country,
@ObjectModel.readOnly: true
BusinessPartner._CurrentDefaultAddress._StandardAddress._Country._Text[1: Language = $session.system_language ].CountryName,
// Authorization data used for DCL
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataControllerSet as DataControllerSet,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController1 as DataController1,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController2 as DataController2,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController3 as DataController3,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController4 as DataController4,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController5 as DataController5,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController6 as DataController6,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController7 as DataController7,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController8 as DataController8,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController9 as DataController9,
@UI.hidden: true
@Consumption.hidden: true
BusinessPartner.DataController10 as DataController10,
_Supplier
}
where
SupplierLink._Supplier.DeletionIndicator = ''
and BusinessPartner.BusinessPartnerIsBlocked = ''
and BusinessPartner.IsMarkedForArchiving = ''
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADDRESS",
"I_BPCURRENTDEFAULTADDRESS",
"I_BUSINESSPARTNER",
"I_COUNTRY",
"I_COUNTRYTEXT",
"I_SUPPLIER",
"I_SUPPLIER_TO_BUSINESSPARTNER"
],
"ASSOCIATED":
[
"I_SUPPLIER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA