C_SlsDocNonStdPartner
SD Document Non Std Complete Partners
C_SlsDocNonStdPartner is a Consumption CDS View that provides data about "SD Document Non Std Complete Partners" in SAP S/4HANA. It reads from 1 data source (I_SDDocumentCompletePartners) and exposes 22 fields with key fields SDDocument, SDDocumentItem, PartnerFunction. It has 3 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_SDDocumentCompletePartners | I_SDDocumentCompletePartners | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1] | I_SalesDocument | _SalesDocument | $projection.SDDocument = _SalesDocument.SalesDocument |
| [1] | I_SalesDocumentItem | _SalesDocumentItem | $projection.SDDocument = _SalesDocumentItem.SalesDocument and $projection.SDDocumentItem = _SalesDocumentItem.SalesDocumentItem |
| [1] | I_SalesDocumentPartner | _AdditionalPartners | $projection.SDDocument = _AdditionalPartners.SalesDocument and $projection.PartnerFunction = _AdditionalPartners.PartnerFunction |
Annotations (13)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.sqlViewName | CSLSDOCNSTDPT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| ObjectModel.representativeKey | PartnerFunction | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| EndUserText.label | SD Document Non Std Complete Partners | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (22)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | SDDocument | SDDocument | ||
| KEY | SDDocumentItem | SDDocumentItem | ||
| KEY | PartnerFunction | |||
| PartnerFunctionName | ||||
| SDDocumentPartnerType | _PartnerFunction | SDDocumentPartnerType | ||
| Customer | Customer | |||
| Supplier | Supplier | |||
| BusinessPartner | _AdditionalPartners | Partner | ||
| BusinessPartnerFullName | _AdditionalPartners | FullName | ||
| Personnel | Personnel | |||
| AddressID | AddressID | |||
| AddressPersonID | AddressPersonID | |||
| ContactPerson | ContactPerson | |||
| PartnerIsOneTimeAccount | PartnerIsOneTimeAccount | |||
| VATRegistration | VATRegistration | |||
| _PartnerFunction | _PartnerFunction | |||
| _DfltAddrRprstn | _DfltAddrRprstn | |||
| _ContactPerson | _ContactPerson | |||
| _SalesDocument | _SalesDocument | |||
| _SalesDocumentItem | _SalesDocumentItem | |||
| _AdditionalPartners | _AdditionalPartners | |||
| FormattedPostalAddressDesc |
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'CSLSDOCNSTDPT',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA'),
privilegedAssociations: [ '_DfltAddrRprstn' ]
}
@VDM: {
viewType: #CONSUMPTION,
lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@ObjectModel: {
representativeKey: 'PartnerFunction',
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #XL
}
}
@EndUserText.label: 'SD Document Non Std Complete Partners'
@Metadata.ignorePropagatedAnnotations:true
define view C_SlsDocNonStdPartner
as select from I_SDDocumentCompletePartners
// association [1] to I_WorkforcePerson as _WorkforcePerson on $projection.Customer = _WorkforcePerson.Person
// association [1] to I_PersonWorkAgreement_1 as _WorkAgreement on $projection.Personnel = _WorkAgreement.PersonWorkAgreement
association [1] to I_SalesDocument as _SalesDocument on $projection.SDDocument = _SalesDocument.SalesDocument
association [1] to I_SalesDocumentItem as _SalesDocumentItem on $projection.SDDocument = _SalesDocumentItem.SalesDocument
and $projection.SDDocumentItem = _SalesDocumentItem.SalesDocumentItem
association [1] to I_SalesDocumentPartner as _AdditionalPartners on $projection.SDDocument = _AdditionalPartners.SalesDocument
and $projection.PartnerFunction = _AdditionalPartners.PartnerFunction
{
@ObjectModel.foreignKey.association: '_SalesDocument'
key SDDocument,
@ObjectModel.foreignKey.association: '_SalesDocumentItem'
key SDDocumentItem,
@ObjectModel.foreignKey.association: '_PartnerFunction'
key cast(PartnerFunction as parvw_unv preserving type ) as PartnerFunction,
_PartnerFunction._Text[1:Language = $session.system_language ].PartnerFunctionName,
_PartnerFunction.SDDocumentPartnerType,
Customer,
Supplier,
@ObjectModel.text.element: [ 'BusinessPartnerFullName' ]
// case
// when Customer != ''
// then Customer
// when Supplier != ''
// then Supplier
// when Personnel != '00000000'
// then cast(Personnel as kunnr) // cast to get the same data element length and also APLHA conversion done
// when ContactPerson != '0000000000'
// then cast(ContactPerson as kunnr) // cast to get the same data element length and also APLHA conversion done
// else
// ''
// end as BusinessPartner,
_AdditionalPartners.Partner as BusinessPartner,
@Semantics.name.fullName: true
@Semantics.text: true
// case
// when ContactPerson != '0000000000'
// then coalesce(_DfltAddrRprstn.AddresseeFullName, cast(substring(replace(concat(_ContactPerson.FirstName, concat(' &@', _ContactPerson.LastName)), '&@', ''),1,80) as adfullname ) )
// when Personnel != '00000000'
// then
// case when _WorkAgreement.PersonFullName is initial
// then cast( _WorkAgreement._WorkforcePerson.LastName as adfullname )
// else
// _WorkAgreement.PersonFullName
// end
// else
// _DfltAddrRprstn.AddresseeFullName
// end as BusinessPartnerFullName,
_AdditionalPartners.FullName as BusinessPartnerFullName,
Personnel,
AddressID,
AddressPersonID,
@ObjectModel.foreignKey.association: '_ContactPerson'
ContactPerson,
PartnerIsOneTimeAccount,
VATRegistration,
_PartnerFunction,
_DfltAddrRprstn,
_ContactPerson,
// _WorkforcePerson,
// _WorkAgreement,
_SalesDocument,
_SalesDocumentItem,
_AdditionalPartners,
//added for 2202 release : Fetch address info
@Semantics.text:true
@Consumption.filter.hidden: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MCC_SLS_DOC_VE'
cast( ' ' as ad_line_s ) as FormattedPostalAddressDesc
}
where
SDDocumentItem = '000000'
and PartnerFunction != 'AG'
and PartnerFunction != 'WE'
and PartnerFunction != 'RE'
and PartnerFunction != 'RG'
and PartnerFunction != 'VE'
and PartnerFunction != 'ZM'
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