@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #S
@VDM.private: true
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck:#NOT_REQUIRED
@AbapCatalog.sqlViewName: 'PSOFSDDOCCONT1'
define view P_SlsDocFlfmtSDDocContacts1
as select from I_SDDocumentCompletePartners as Partners
inner join I_BusinessPartnerContact as Contacts on Partners.Customer = Contacts.BusinessPartnerCompany
{
key Partners.SDDocument,
key Partners.Personnel,
key Partners.ContactPerson,
key Partners.Customer,
key Contacts.BusinessPartnerPerson as CustomerContact,
Contacts.ContactPersonFunction,
@Semantics.name.fullName: true
cast (' ' as ad_namtext ) as FullName,
@Semantics.name.familyName: true
cast ( Contacts.LastName as ad_namelas ) as FamilyName,
@Semantics.name.familyName: true
cast ( Contacts.FirstName as ad_namefir ) as FirstName,
@Semantics.eMail.address: true
@Semantics.eMail.type: #WORK
cast ( Contacts.EmailAddress as ad_smtpadr ) as EmailAddress,
@Semantics.telephone.type: #CELL
cast (Contacts.MobilePhoneNumber as ad_mbnmbr1 ) as MobilePhoneNumber,
@Semantics.telephone.type: #WORK
cast ( Contacts.PhoneNumber as ad_tlnmbr ) as PhoneNumber,
_ContactPersonFunction
}
where
(
PartnerFunction = 'AG'
or PartnerFunction = 'WE'
or PartnerFunction = 'RE'
or PartnerFunction = 'RG'
)
and SDDocumentItem = '000000'
and IsDefaultAddress = 'X'
group by
Partners.SDDocument,
// Partners.PartnerFunction,
Partners.Personnel,
Partners.ContactPerson,
Partners.Customer,
Contacts.BusinessPartnerPerson,
Contacts.ContactPersonFunction,
Contacts.LastName,
Contacts.FirstName,
Contacts.EmailAddress,
Contacts.MobilePhoneNumber,
Contacts.PhoneNumber
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNERCONTACT",
"I_SDDOCUMENTCOMPLETEPARTNERS"
],
"ASSOCIATED":
[
"I_CONTACTPERSONFUNCTION"
],
"BASE":
[
"I_BUSINESSPARTNERCONTACT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/