P_CollsAcctFI

DDL: P_COLLSACCTFI Type: view_entity COMPOSITE

Collections Account - FI

P_CollsAcctFI is a Composite CDS View that provides data about "Collections Account - FI" in SAP S/4HANA. It reads from 3 data sources (I_BusinessPartner, I_CustomerCompany, I_CustomerToBusinessPartner) and exposes 10 fields with key fields Customer, CollectionSegment, CompanyCode, BusinessPartner. It has 3 associations to related views.

Data Sources (3)

SourceAliasJoin Type
I_BusinessPartner I_BusinessPartner inner
I_CustomerCompany I_CustomerCompany inner
I_CustomerToBusinessPartner I_CustomerToBusinessPartner inner

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_Customer _Customer $projection.Customer = _Customer.Customer
[0..1] I_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Collections Account - FI view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.representativeKey Customer view
VDM.viewType #COMPOSITE view
VDM.private true view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY Customer I_Customer Customer
KEY CollectionSegment I_CollsSgmtCompanyCodeAssgmt CollectionSegment
KEY CompanyCode I_CustomerCompany CompanyCode
KEY BusinessPartner I_BusinessPartner BusinessPartner
CustomerName _Customer CustomerName
CompanyCodeName _CompanyCode CompanyCodeName
BusinessPartnerName _BusinessPartner BusinessPartnerName
_Customer _Customer
_BusinessPartner _BusinessPartner
_CompanyCode _CompanyCode
@AbapCatalog: { viewEnhancementCategory: [ #NONE ] }
@AccessControl: { authorizationCheck: #NOT_REQUIRED }
@EndUserText: { label: 'Collections Account - FI' }
@Metadata: { ignorePropagatedAnnotations: true }
@ObjectModel: { usageType: { serviceQuality: #C,
                             sizeCategory: #XL,
                             dataClass: #MIXED },
                representativeKey: 'Customer' }
@VDM: { viewType: #COMPOSITE,
        private: true }

define view entity P_CollsAcctFI
  as select distinct from   I_Customer
    inner join              I_CustomerToBusinessPartner  on I_Customer.Customer = I_CustomerToBusinessPartner.Customer
    inner join              I_BusinessPartner            on I_CustomerToBusinessPartner.BusinessPartnerUUID = I_BusinessPartner.BusinessPartnerUUID
    inner join              I_CustomerCompany            on I_Customer.Customer = I_CustomerCompany.Customer
    left outer to many join I_CollsSgmtCompanyCodeAssgmt on I_CustomerCompany.CompanyCode = I_CollsSgmtCompanyCodeAssgmt.CompanyCode

  // VDM Associations

  // Customer

  association [0..1] to I_Customer        as _Customer        on $projection.Customer = _Customer.Customer

  // Business Partner

  association [0..1] to I_BusinessPartner as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner

  // Company Code

  association [0..1] to I_CompanyCode     as _CompanyCode     on $projection.CompanyCode = _CompanyCode.CompanyCode

{

      // VDM Fields

      @ObjectModel: { foreignKey: { association: '_Customer' } }
  key I_Customer.Customer                            as Customer,

  key I_CollsSgmtCompanyCodeAssgmt.CollectionSegment as CollectionSegment,

      @ObjectModel: { foreignKey: { association: '_CompanyCode' } }
  key I_CustomerCompany.CompanyCode                  as CompanyCode,

      @ObjectModel: { foreignKey: { association: '_BusinessPartner' } }
  key I_BusinessPartner.BusinessPartner              as BusinessPartner,

      // Text Elements

      _Customer.CustomerName                         as CustomerName,
      _CompanyCode.CompanyCodeName                   as CompanyCodeName,
      _BusinessPartner.BusinessPartnerName           as BusinessPartnerName,

      // Exposed Associations

      _Customer,
      _BusinessPartner,
      _CompanyCode

}

where
  I_CollsSgmtCompanyCodeAssgmt.CollectionSegment is null
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_COLLSSGMTCOMPANYCODEASSGMT",
"I_COMPANYCODE",
"I_CUSTOMER",
"I_CUSTOMERCOMPANY",
"I_CUSTOMERTOBUSINESSPARTNER"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_COMPANYCODE",
"I_CUSTOMER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/