I_CollectionsContactDraft

DDL: I_COLLECTIONSCONTACTDRAFT Type: view BASIC Package: ODATA_CONTACT_PERSON

Collections Contacts Drafts

I_CollectionsContactDraft is a Basic CDS View that provides data about "Collections Contacts Drafts" in SAP S/4HANA. It reads from 1 data source (collcontdra) and exposes 26 fields with key field DraftUUID. It has 9 associations to related views. Part of development package ODATA_CONTACT_PERSON.

Data Sources (1)

SourceAliasJoin Type
collcontdra collcontdra from

Associations (9)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartner _BusinessPartnerCompany $projection.BusinessPartnerCompany = _BusinessPartnerCompany.BusinessPartner
[1..1] I_BusinessPartner _BusinessPartnerPerson $projection.BusinessPartnerPerson = _BusinessPartnerPerson.BusinessPartner
[0..1] I_BPContactToFuncAndDept _BPContactToFuncAndDept $projection.BusinessPartnerCompany = _BPContactToFuncAndDept.BusinessPartnerCompany and $projection.BusinessPartnerPerson = _BPContactToFuncAndDept.BusinessPartnerPerson and _BPContactToFuncAndDept.ValidityEndDate >= $session.system_date
[0..1] I_BpContactToAddress _BpContactToAddress $projection.BusinessPartnerCompany = _BpContactToAddress.BusinessPartnerCompany and $projection.BusinessPartnerPerson = _BpContactToAddress.BusinessPartnerPerson and _BpContactToAddress.ValidityEndDate >= $session.system_date
[0..1] I_CollectionSegment _CollectionSegment $projection.CollectionSegment = _CollectionSegment.CollectionSegment
[0..1] I_ContactPersonFunction _ContactPersonFunction $projection.ContactPersonFunction = _ContactPersonFunction.ContactPersonFunction
[0..1] I_ContactPersondepartment _ContactPersondepartment $projection.ContactPersonDepartment = _ContactPersondepartment.ContactPersonDepartment
[0..*] I_BPRelationship _BPRelationship $projection.RelationshipNumber = _BPRelationship.RelationshipNumber and $projection.BusinessPartnerCompany = _BPRelationship.BusinessPartnerCompany and $projection.BusinessPartnerPerson = _BPRelationship.BusinessPartnerPerson
[0..1] I_DraftAdministrativeData _DraftAdministrativeData $projection.DraftAdministrativeDataUUID = _DraftAdministrativeData.DraftUUID and _DraftAdministrativeData.DraftEntityType = 'R_COLLECTIONCONTACTTP'

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName ICOLLSCNTDR view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
EndUserText.label Collections Contacts Drafts view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.representativeKey DraftUUID view

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY DraftUUID draftuuid
RelationshipNumber relationshipnumber
BusinessPartnerCompany businesspartnercompany
BusinessPartnerPerson businesspartnerperson
CollectionSegment collectionsegment
FirstName firstname
LastName lastname
PhoneNumber phonenumber
MobileNumber mobilenumber
FaxNumber faxnumber
EmailAddress emailaddress
ContactPersonFunction contactpersonfunction
ContactPersonDepartment contactpersondepartment
HasActiveEntity
DraftCreationDateTime draftentitycreationdatetime
DraftLastChangedDateTime draftentitylastchangedatetime
DraftAdministrativeDataUUID draftadministrativedatauuid
_BPContactToFuncAndDept _BPContactToFuncAndDept
_BpContactToAddress _BpContactToAddress
_BusinessPartnerCompany _BusinessPartnerCompany
_BusinessPartnerPerson _BusinessPartnerPerson
_CollectionSegment _CollectionSegment
_ContactPersonFunction _ContactPersonFunction
_ContactPersondepartment _ContactPersondepartment
_BPRelationship _BPRelationship
_DraftAdministrativeData _DraftAdministrativeData
@AbapCatalog: { sqlViewName: 'ICOLLSCNTDR',
                compiler: { compareFilter: true },
                preserveKey: true }
@AccessControl: { authorizationCheck: #NOT_REQUIRED,
                  privilegedAssociations: [ '_DraftAdministrativeData' ],
                  personalData: { blocking: #BLOCKED_DATA_EXCLUDED } }
@EndUserText: { label: 'Collections Contacts Drafts' }
@VDM: { viewType: #BASIC,
        lifecycle: { contract: { type: #PUBLIC_LOCAL_API } } }
@ClientHandling: { algorithm: #SESSION_VARIABLE }
@ObjectModel: { usageType: { serviceQuality: #A,
                             sizeCategory: #L,
                             dataClass: #TRANSACTIONAL },
                semanticKey: ['RelationshipNumber', 'BusinessPartnerCompany', 'BusinessPartnerPerson', 'CollectionSegment' ],
                representativeKey: 'DraftUUID' }

define root view I_CollectionsContactDraft
  as select from collcontdra

  // VDM Associations

  // Business Partner Company

  association [1..1] to I_BusinessPartner         as _BusinessPartnerCompany  on  $projection.BusinessPartnerCompany = _BusinessPartnerCompany.BusinessPartner

  // Business Partneer Person

  association [1..1] to I_BusinessPartner         as _BusinessPartnerPerson   on  $projection.BusinessPartnerPerson = _BusinessPartnerPerson.BusinessPartner

  // Contacts including Function and Department

  association [0..1] to I_BPContactToFuncAndDept  as _BPContactToFuncAndDept  on  $projection.BusinessPartnerCompany      = _BPContactToFuncAndDept.BusinessPartnerCompany
                                                                              and $projection.BusinessPartnerPerson       = _BPContactToFuncAndDept.BusinessPartnerPerson
                                                                              and _BPContactToFuncAndDept.ValidityEndDate >= $session.system_date

  // Contact Address

  association [0..1] to I_BpContactToAddress      as _BpContactToAddress      on  $projection.BusinessPartnerCompany  = _BpContactToAddress.BusinessPartnerCompany
                                                                              and $projection.BusinessPartnerPerson   = _BpContactToAddress.BusinessPartnerPerson
                                                                              and _BpContactToAddress.ValidityEndDate >= $session.system_date

  // Collection Segment

  association [0..1] to I_CollectionSegment       as _CollectionSegment       on  $projection.CollectionSegment = _CollectionSegment.CollectionSegment

  // Contact Person Function

  association [0..1] to I_ContactPersonFunction   as _ContactPersonFunction   on  $projection.ContactPersonFunction = _ContactPersonFunction.ContactPersonFunction

  // Contact Person Department

  association [0..1] to I_ContactPersondepartment as _ContactPersondepartment on  $projection.ContactPersonDepartment = _ContactPersondepartment.ContactPersonDepartment

  // Business Partner Relationship

  association [0..*] to I_BPRelationship          as _BPRelationship          on  $projection.RelationshipNumber     = _BPRelationship.RelationshipNumber
                                                                              and $projection.BusinessPartnerCompany = _BPRelationship.BusinessPartnerCompany
                                                                              and $projection.BusinessPartnerPerson  = _BPRelationship.BusinessPartnerPerson

  // Draft Administrative Data

  association [0..1] to I_DraftAdministrativeData as _DraftAdministrativeData on  $projection.DraftAdministrativeDataUUID  = _DraftAdministrativeData.DraftUUID
                                                                              and _DraftAdministrativeData.DraftEntityType = 'R_COLLECTIONCONTACTTP'

{
      //collcontdr

  key draftuuid                                           as DraftUUID,
      relationshipnumber                                  as RelationshipNumber,
      businesspartnercompany                              as BusinessPartnerCompany,
      businesspartnerperson                               as BusinessPartnerPerson,
      collectionsegment                                   as CollectionSegment,
      firstname                                           as FirstName,
      lastname                                            as LastName,
      phonenumber                                         as PhoneNumber,
      mobilenumber                                        as MobileNumber,
      faxnumber                                           as FaxNumber,
      emailaddress                                        as EmailAddress,
      contactpersonfunction                               as ContactPersonFunction,
      contactpersondepartment                             as ContactPersonDepartment,
      cast ( hasactiveentity as boolean preserving type ) as HasActiveEntity,
      draftentitycreationdatetime                         as DraftCreationDateTime,
      draftentitylastchangedatetime                       as DraftLastChangedDateTime,
      draftadministrativedatauuid                         as DraftAdministrativeDataUUID,

      // Exposed Associations

      _BPContactToFuncAndDept,
      _BpContactToAddress,
      _BusinessPartnerCompany,
      _BusinessPartnerPerson,
      _CollectionSegment,
      _ContactPersonFunction,
      _ContactPersondepartment,
      _BPRelationship,
      _DraftAdministrativeData

}