@AbapCatalog.sqlViewName : 'CBILLDOCPAFS'
@ClientHandling.algorithm:#SESSION_VARIABLE
@ClientHandling.type:#CLIENT_DEPENDENT
@AbapCatalog: {
compiler.compareFilter: true ,
preserveKey: true
}
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label : 'Billing Document Partner Fact Sheet'
@VDM.viewType: #CONSUMPTION
@AccessControl.personalData.blocking : #('TRANSACTIONAL_DATA')
@ObjectModel: {
compositionRoot: false ,
usageType: {
serviceQuality:#D,
sizeCategory: #L,
dataClass: #MIXED
}
}
@UI.headerInfo: {
typeName: 'Billing Document Partner',
typeNamePlural: 'Billing Document Partners',
title: {
type: #STANDARD,
value: 'BillingDocumentPartner'
}
}
define view C_BillingDocumentPartnerFs
as select from I_SDDocumentPartner as SDPartnerData
association [1] to C_BillingDocumentFs as _BillingDocument on $projection.SDDocument = _BillingDocument.BillingDocument
// association [0..1] to I_Employment as _Employment on $projection.Personnel = _Employment.EmploymentInternalID
association [0..1] to I_PersonWorkAgreement_1 as _PersonWorkAgreement on $projection.Personnel = _PersonWorkAgreement.PersonWorkAgreement
{
@UI.hidden: true
key SDDocument,
@UI.hidden: true
key PartnerFunction,
@Semantics: { organization.role: true }
SDPartnerData._PartnerFunction._Text[1: Language = $session.system_language ].PartnerFunctionName,
AddressID,
@Semantics.contact.type: #ORGANIZATION
Customer,
Personnel,
@Semantics.name.fullName: true
case
when AddressID <> ' ' then SDPartnerData._DfltAddrRprstn.AddresseeFullName
when Personnel <> ' ' then coalesce(SDPartnerData._DfltAddrRprstn.AddresseeFullName, _PersonWorkAgreement.PersonFullName)
else ''
end as FullName,
@Semantics.address.type: #HOME
@Semantics.address.city: true
SDPartnerData._DfltAddrRprstn.CityName,
@Semantics.address.type: #HOME
@Semantics.address.street: true
SDPartnerData._DfltAddrRprstn.StreetName,
@Semantics.address.type: #HOME
@Semantics.address.zipCode: true
SDPartnerData._DfltAddrRprstn.PostalCode,
@Semantics.eMail.address: true
@Semantics.eMail.type: #WORK
case AddressID
when ''
then _PersonWorkAgreement._WorkforcePerson._WorkplaceAddress.DefaultEmailAddress
else SDPartnerData._DfltAddrRprstn._CurrentDfltEmailAddress.EmailAddress
end as EmailAddress,
@Semantics.telephone.type: #WORK
case AddressID
when ''
then _PersonWorkAgreement._WorkforcePerson._WorkplaceAddress.NormalizedPhoneNumber
else SDPartnerData._DfltAddrRprstn._CurrentDfltLandlinePhoneNmbr.InternationalPhoneNumber
end as InternationalPhoneNumber,
@Semantics.telephone.type: #CELL
case AddressID
when ''
then _PersonWorkAgreement._WorkforcePerson._WorkplaceAddress.MblNormalizedPhoneNumber
else SDPartnerData._DfltAddrRprstn._CurrentDfltMobilePhoneNumber.InternationalPhoneNumber
end as InternationalMobilePhoneNumber,
// ***************************************************************************************
// ************************ inherited associations ************************************
// ***************************************************************************************
SDPartnerData._PartnerFunction,
// association
_BillingDocument
// ***************************************************************************************
// ************************** end of CDS Source definition ******************************
// ***************************************************************************************
}
/*+[internal] {
"BASEINFO":
{
"FROM ":
[
"I_ADDRCURDEFAULTEMAILADDRESS",
"I_ADDRCURDFLTLANDLINEPHONENMBR",
"I_ADDRCURDFLTMOBILEPHONENUMBER",
"I_ADDRESS_2",
"I_PARTNERFUNCTION",
"I_PARTNERFUNCTIONTEXT",
"I_PERSONWORKAGREEMENT_1",
"I_SDDOCUMENTPARTNER",
"I_WORKFORCEPERSON",
"I_WORKPLACEADDRESS"
],
"ASSOCIATED":
[
"C_BILLINGDOCUMENTFS",
"I_PARTNERFUNCTION",
"I_PERSONWORKAGREEMENT_1"
],
"BASE":
[
"I_SDDOCUMENTPARTNER"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Depth:
1
2
3
4
5
All
Reload
C_BillingDocumentPartnerFs view