I_CollsPromiseToPayContactVH

DDL: I_COLLSPROMISETOPAYCONTACTVH Type: view COMPOSITE

Promise To Pay Contact Value Help

I_CollsPromiseToPayContactVH is a Composite CDS View that provides data about "Promise To Pay Contact Value Help" in SAP S/4HANA. It reads from 3 data sources (I_BusinessPartnerCustomer, I_CollectionContact, I_CollsSgmtCompanyCodeAssgmt) and exposes 25 fields with key fields RelationshipNumber, BusinessPartnerCompany, BusinessPartnerPerson, CollectionSegment, Customer. It has 2 associations to related views.

Data Sources (3)

SourceAliasJoin Type
I_BusinessPartnerCustomer I_BusinessPartnerCustomer from
I_CollectionContact I_CollectionContact inner
I_CollsSgmtCompanyCodeAssgmt I_CollsSgmtCompanyCodeAssgmt inner

Associations (2)

CardinalityTargetAliasCondition
[0..1] I_Customer _Customer $projection.Customer = _Customer.Customer
[0..1] I_Customer_VH _CustomerVH $projection.Customer = _CustomerVH.Customer

Annotations (16)

NameValueLevelField
AbapCatalog.sqlViewName ICOLLSP2PCNTVH view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
EndUserText.label Promise To Pay Contact Value Help view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.dataCategory #VALUE_HELP view
ObjectModel.representativeKey BusinessPartnerPerson view
Consumption.ranked true view
Search.searchable true view

Fields (25)

KeyFieldSource TableSource FieldDescription
KEY RelationshipNumber RelationshipNumber
KEY BusinessPartnerCompany BusinessPartnerCompany
KEY BusinessPartnerPerson BusinessPartnerPerson
KEY CollectionSegment I_CollectionContact CollectionSegment
KEY Customer Customer
KEY CompanyCode CompanyCode
ContactPerson ContactPerson
ContactPersonName
EmailAddress EmailAddress
PhoneNumber PhoneNumber
MobileNumber MobileNumber
FaxNumber FaxNumber
ContactPersonDepartmentName
ContactPersonFunctionName
ContactPersonFunction ContactPersonFunction
ContactPersonDepartment ContactPersonDepartment
FirstName FirstName
LastName LastName
_BusinessPartnerCompany _BusinessPartnerCompany
_BusinessPartnerPerson _BusinessPartnerPerson
_ContactPersonDepartment _ContactPersonDepartment
_ContactPersonFunction _ContactPersonFunction
_CollectionSegment _CollectionSegment
_Customer _Customer
_CustomerVH _CustomerVH
@AbapCatalog: { sqlViewName: 'ICOLLSP2PCNTVH',
                compiler: { compareFilter: true },
                preserveKey: true }
@AccessControl: { authorizationCheck: #CHECK,
                  personalData: { blocking: #BLOCKED_DATA_EXCLUDED } }
@EndUserText: { label: 'Promise To Pay Contact Value Help' }
@VDM: { viewType:  #COMPOSITE,
        lifecycle: { contract: { type: #PUBLIC_LOCAL_API } } }
@ClientHandling: { algorithm: #SESSION_VARIABLE }
@ObjectModel: { usageType: { serviceQuality: #C,
                             sizeCategory: #S,
                             dataClass: #TRANSACTIONAL },
                dataCategory: #VALUE_HELP,
                semanticKey: [ 'ContactPerson' ],
                representativeKey: 'BusinessPartnerPerson' }
@Consumption: { ranked: true }
@Search: { searchable: true }

define view I_CollsPromiseToPayContactVH
  as select from I_BusinessPartnerCustomer
    inner join   I_CollectionContact          on I_BusinessPartnerCustomer.BusinessPartner = I_CollectionContact.BusinessPartnerCompany
    inner join   I_CollsSgmtCompanyCodeAssgmt on I_CollectionContact.CollectionSegment = I_CollsSgmtCompanyCodeAssgmt.CollectionSegment

  // VDM Associations

  // Customer

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

  // Customer Value Help

  association [0..1] to I_Customer_VH as _CustomerVH on $projection.Customer = _CustomerVH.Customer

{

      // VDM Fields

      @UI: { hidden: true }
  key RelationshipNumber,

      @Consumption: { valueHelpDefinition: [ { entity: { element: 'BusinessPartner',
                                                         name:    'I_CollsBusinessPartnerVH' } } ] }
      @UI: { lineItem: [ { position: 100 } ] }
  key BusinessPartnerCompany,

      @UI: { hidden: true }
  key BusinessPartnerPerson,

      @UI: { hidden: true }
  key I_CollectionContact.CollectionSegment,

      @Consumption: { valueHelpDefinition: [ { entity: { element: 'Customer',
                                                         name:    'I_CollsCustomerVH' },
                                               association: '_CustomerVH' } ] }
      @UI: { lineItem: [ { position:   110,
                           importance: #LOW } ] }
  key Customer,

      @Consumption: { valueHelpDefinition: [ { entity: { element: 'CompanyCode',
                                                         name:    'I_CollsCompanyCodeVH' } } ] }
      @UI: { lineItem: [ { position:   120,
                           importance: #LOW } ] }
  key CompanyCode,

      @UI: { lineItem: { position:   10,
                         importance: #HIGH } }
      @Consumption: { valueHelpDefault: { binding: { usage: #FILTER_AND_RESULT } } }
      @Search: { defaultSearchElement: true,
                 fuzzinessThreshold:   0.8,
                 ranking:              #HIGH }
      ContactPerson,

      @UI: { lineItem: { position:   20,
                         importance: #HIGH,
                         label:      'Contact Person Name' } }
      @EndUserText: { label: 'Contact Person Name' }
      @Consumption: { filter: { hidden: true } }
      cast( concat_with_space( FirstName, LastName, 1 ) as bdm_contact_name )                           as ContactPersonName,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   60,
                         importance: #HIGH } }
      EmailAddress,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   30,
                         importance: #HIGH } }
      PhoneNumber,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   40,
                         importance: #HIGH } }
      MobileNumber,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   50,
                         importance: #HIGH } }
      FaxNumber,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   70,
                         importance: #HIGH,
                         label:      'Department' } }
      @EndUserText: { label: 'Department' }
      _ContactPersonDepartment._Text[1:Language = $session.system_language].ContactPersonDepartmentName as ContactPersonDepartmentName,

      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      @UI: { lineItem: { position:   80,
                         importance: #HIGH,
                         label:      'Function' } }
      @EndUserText: { label: 'Function' }
      _ContactPersonFunction._Text[1:Language = $session.system_language].ContactPersonFunctionName     as ContactPersonFunctionName,

      @UI: { hidden: true }
      ContactPersonFunction,

      @UI: { hidden: true }
      ContactPersonDepartment,

      @UI: { hidden: true }
      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      FirstName,

      @UI: { hidden: true }
      @Search: { defaultSearchElement:  true,
                 ranking:               #LOW,
                 fuzzinessThreshold:    0.8 }
      LastName,

      // Exposed Associations

      _BusinessPartnerCompany,
      _BusinessPartnerPerson,
      _ContactPersonDepartment,
      _ContactPersonFunction,
      _CollectionSegment,
      _Customer,
      _CustomerVH

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNERCUSTOMER",
"I_COLLECTIONCONTACT",
"I_COLLSSGMTCOMPANYCODEASSGMT",
"I_CONTACTPERSONDEPARTMENT",
"I_CONTACTPERSONDEPARTMENTT",
"I_CONTACTPERSONFUNCTION",
"I_CONTACTPERSONFUNCTIONT"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_COLLECTIONSEGMENT",
"I_CONTACTPERSONDEPARTMENT",
"I_CONTACTPERSONFUNCTION",
"I_CUSTOMER",
"I_CUSTOMER_VH"
],
"BASE":
[
"I_COLLECTIONCONTACT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/