@AbapCatalog.sqlViewName : 'IBPADDRUSAGETP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label : 'Business Partner Address Usage BOPF View '
@VDM.viewType: #TRANSACTIONAL
//@ObjectModel.writeEnabled: true
@ObjectModel.writeDraftPersistence : 'BUPA_ADRU_D'
@ObjectModel.draftEnabled:true
@Search.searchable: true
@ObjectModel.createEnabled
@ObjectModel.updateEnabled
@ObjectModel.deleteEnabled : 'EXTERNAL_CALCULATION'
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
define view I_BusinessPartnerAddrUsageTP
as select from I_Businesspartneraddressusage as BusinessPartnerAddrUsage
association [1..1] to I_BusinessPartnerTP as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
association [1..1] to I_BusinessPartnerAddressTP as _BusinessPartnerAddress on $projection.BusinessPartner = _BusinessPartnerAddress.BusinessPartner
and $projection.AddressNumber = _BusinessPartnerAddress.AddressNumber
// association [0..1] to I_DraftAdministrativeData as _DraftAdministrativeData on _DraftAdministrativeData.DraftUUID = $projection.DraftAdministrativeDataUUID
//
// association [0..1] to i_businesspartneraddrusagetp as _SiblingEntity on $projection.AddressUsage = _SiblingEntity.AddressUsage
// //and $projection.ValidityEndDate = _SiblingEntity.ValidityEndDate
// and $projection.BusinessPartner = _SiblingEntity.BusinessPartner
// and $projection.AddressNumber = _SiblingEntity.AddressNumber
// and $projection.IsActiveEntity <> _SiblingEntity.IsActiveEntity
{
// key BusinessPartnerAddrUsage.DraftUUID,
@semanticKey: true
key BusinessPartnerAddrUsage.BusinessPartner,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
@semanticKey: true
key cast (case when ValidityEndDate != 00010101000000
then tstmp_to_dats(ValidityEndDate,'UTC', $session.client, 'NULL ')
else cast ( '99991231' as abap.dats )
end as abap.char ( 8 )) as BPAddressUsageValidityEndDate,
@semanticKey: true
key BusinessPartnerAddrUsage.AddressUsage,
@semanticKey: true
key BusinessPartnerAddrUsage.AddressNumber,
//@SemanticKey: true
//key BusinessPartnerAddrUsage.ValidityEndDate,
// BusinessPartnerAddrUsage.ParentDraftUUID,
// BusinessPartnerAddrUsage.RootDraftUUID,
BusinessPartnerAddrUsage.BusinessPartner as BusinessPartnerForEdit,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@Search.ranking: #HIGH
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly : 'EXTERNAL_CALCULATION'
BusinessPartnerAddrUsage.AddressUsage as AddressUsageForEdit,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly : 'EXTERNAL_CALCULATION'
BusinessPartnerAddrUsage.AddressNumber as AddressNumberForEdit,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly : 'EXTERNAL_CALCULATION'
//cast (substring (cast (BusinessPartnerAddrUsage.ValidityStartDate as abap.char (32)),1,8) as abap.dats ) as AddressUsageValidityStartDate,
tstmp_to_dats(BusinessPartnerAddrUsage.ValidityStartDate,'UTC', $session.client, 'NULL ') as AddressUsageValidityStartDate,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly : 'EXTERNAL_CALCULATION'
//cast (substring (cast (BusinessPartnerAddrUsage.ValidityEndDate as abap.char (32)),1,8) as abap.dats ) as AddressUsageValidityEndDate,
tstmp_to_dats(BusinessPartnerAddrUsage.ValidityEndDate,'UTC', $session.client, 'NULL ') as AddressUsageValidityEndDate,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
BusinessPartnerAddrUsage.ValidityEndDate,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
BusinessPartnerAddrUsage.ValidityStartDate,
@ObjectModel.mandatory : 'EXTERNAL_CALCULATION'
BusinessPartnerAddrUsage.StandardUsage,
// BusinessPartnerAddrUsage.ValidFrom,
/* case when AddressUsage ='XXDEFAULT'
then cast ('X' as boole_d )
else cast ('' as boole_d)
end as Standardusage,*/
/*case when AddressUsage ='XXDEFAULT'
then BusinessPartnerAddressID
end as StandardAddress, //trial*/
// BusinessPartnerAddrUsage.IsActiveEntity,
// BusinessPartnerAddrUsage.HasActiveEntity,
// BusinessPartnerAddrUsage.HasDraftEntity,
// BusinessPartnerAddrUsage.DraftAdministrativeDataUUID,
@ObjectModel.association .type: [ #TO_COMPOSITION_ROOT ]
_BusinessPartner,
@ObjectModel.association .type: [ #TO_COMPOSITION_PARENT ]
_BusinessPartnerAddress
// _DraftAdministrativeData,
// _SiblingEntity
}
Depth:
1
2
3
4
5
All
Reload
I_BusinessPartnerAddrUsageTP view