I_BPAdditionalSupplierTP
BO view for Additional Supplier of BP
I_BPAdditionalSupplierTP is a Transactional CDS View that provides data about "BO view for Additional Supplier of BP" in SAP S/4HANA. It reads from 2 data sources (I_BPMultipleAssignment, I_Supplier) and exposes 56 fields with key fields BusinessPartner, Supplier. It has 8 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_BPMultipleAssignment | BPAdditionalSupplier | inner |
| I_Supplier | Supplier | from |
Associations (8)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_BusinessPartnerTP | _BusinessPartner | $projection.BusinessPartner = _BusinessPartner.BusinessPartner |
| [1..*] | I_BPAddlSuplrCompanyCodeTP | _BPAddlSuplrCompanyCode | $projection.BusinessPartner = _BPAddlSuplrCompanyCode.BusinessPartner and $projection.Supplier = _BPAddlSuplrCompanyCode.Supplier |
| [1..*] | I_BPAddlSuplrPurgOrgTP | _BPAddlSuplrPurgOrg | $projection.BusinessPartner = _BPAddlSuplrPurgOrg.BusinessPartner and $projection.Supplier = _BPAddlSuplrPurgOrg.Supplier |
| [1..*] | I_BPAddlSuplrTelNmbrTP | _BPAddlSuplrTelNmbr | $projection.BusinessPartner = _BPAddlSuplrTelNmbr.BusinessPartner and $projection.Supplier = _BPAddlSuplrTelNmbr.Supplier |
| [1..*] | I_BPAddlSuplrEmailAddressTP | _BPAddlSuplrEmailAddress | $projection.BusinessPartner = _BPAddlSuplrEmailAddress.BusinessPartner and $projection.Supplier = _BPAddlSuplrEmailAddress.Supplier |
| [1..*] | I_BPAddlSuplrMblPhNumberTP | _BPAddlSuplrMblPhNumber | $projection.BusinessPartner = _BPAddlSuplrMblPhNumber.BusinessPartner and $projection.Supplier = _BPAddlSuplrMblPhNumber.Supplier |
| [1..*] | I_BPAddlSuplrWebsiteURLTP | _BPAddlSuplrWebsiteURL | $projection.BusinessPartner = _BPAddlSuplrWebsiteURL.BusinessPartner and $projection.Supplier = _BPAddlSuplrWebsiteURL.Supplier |
| [1..*] | I_BPAddlSuplrFaxNumberTP | _BPAddlSuplrFaxNumber | $projection.BusinessPartner = _BPAddlSuplrFaxNumber.BusinessPartner and $projection.Supplier = _BPAddlSuplrFaxNumber.Supplier |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | BO view for Additional Supplier of BP | view | |
| AbapCatalog.sqlViewName | IBPADDSUPPTP | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| VDM.viewType | #TRANSACTIONAL | view | |
| ObjectModel.writeEnabled | true | view | |
| ObjectModel.writeDraftPersistence | BPADDSUPP_D | view | |
| ObjectModel.draftEnabled | true | view | |
| ObjectModel.deleteEnabled | EXTERNAL_CALCULATION | view | |
| Search.searchable | true | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| ObjectModel.usageType.dataClass | #MASTER | view |
Fields (56)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessPartner | I_BPMultipleAssignment | BusinessPartner | |
| KEY | Supplier | I_Supplier | Supplier | |
| BusinessPartnerForEdit | I_BPMultipleAssignment | BusinessPartner | ||
| SupplierForEdit | I_Supplier | Supplier | ||
| BPAssignmentID | I_BPMultipleAssignment | BPAssignmentID | ||
| BPAssignmentCategory | I_BPMultipleAssignment | BPAssignmentCategory | ||
| BPAssignmentReasonID | I_BPMultipleAssignment | BPAssignmentReasonID | ||
| IsStandardAssignment | I_BPMultipleAssignment | IsStandardAssignment | ||
| AddressNumber | I_BPMultipleAssignment | AddressNumber | ||
| SupplierAccountGroup | I_Supplier | SupplierAccountGroup | ||
| SupplierCorporateGroup | I_Supplier | SupplierCorporateGroup | ||
| FormOfAddress | I_Supplier | FormOfAddress | ||
| InternationalLocationNumber1 | I_Supplier | InternationalLocationNumber1 | ||
| InternationalLocationNumber2 | I_Supplier | InternationalLocationNumber2 | ||
| ReferenceAccountGroup | I_Supplier | ReferenceAccountGroup | ||
| SupplierAlternativePayee | I_Supplier | AlternativePayeeAccountNumber | ||
| Customer | I_Supplier | Customer | ||
| PostingIsBlocked | I_Supplier | PostingIsBlocked | ||
| PurchasingIsBlocked | I_Supplier | PurchasingIsBlocked | ||
| PaymentIsBlockedForSupplier | I_Supplier | PaymentIsBlockedForSupplier | ||
| VATLiability | I_Supplier | VATLiability | ||
| BR_TaxIsSplit | I_Supplier | BR_TaxIsSplit | ||
| AuthorizationGroup | I_Supplier | AuthorizationGroup | ||
| SupplierName | I_Supplier | SupplierName | ||
| BPSupplierName | I_Supplier | BPSupplierName | ||
| DeletionIndicator | I_Supplier | DeletionIndicator | ||
| DraftKey | ||||
| PostalCode | ||||
| StreetName | ||||
| HouseNumber | ||||
| CityName | ||||
| Country | ||||
| Region | ||||
| POBoxPostalCode | ||||
| POBox | ||||
| CorrespondenceLanguage | ||||
| PrfrdCommMediumType | ||||
| DataControllerSet | I_Supplier | DataControllerSet | ||
| DataController1 | I_Supplier | DataController1 | ||
| DataController2 | I_Supplier | DataController2 | ||
| DataController3 | I_Supplier | DataController3 | ||
| DataController4 | I_Supplier | DataController4 | ||
| DataController5 | I_Supplier | DataController5 | ||
| DataController6 | I_Supplier | DataController6 | ||
| DataController7 | I_Supplier | DataController7 | ||
| DataController8 | I_Supplier | DataController8 | ||
| DataController9 | I_Supplier | DataController9 | ||
| DataController10 | I_Supplier | DataController10 | ||
| _BusinessPartner | _BusinessPartner | |||
| _BPAddlSuplrCompanyCode | _BPAddlSuplrCompanyCode | |||
| _BPAddlSuplrPurgOrg | _BPAddlSuplrPurgOrg | |||
| _BPAddlSuplrTelNmbr | _BPAddlSuplrTelNmbr | |||
| _BPAddlSuplrFaxNumber | _BPAddlSuplrFaxNumber | |||
| _BPAddlSuplrMblPhNumber | _BPAddlSuplrMblPhNumber | |||
| _BPAddlSuplrEmailAddress | _BPAddlSuplrEmailAddress | |||
| _BPAddlSuplrWebsiteURL | _BPAddlSuplrWebsiteURL |
@EndUserText.label: 'BO view for Additional Supplier of BP'
@AbapCatalog.sqlViewName: 'IBPADDSUPPTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@VDM.viewType: #TRANSACTIONAL
@ObjectModel.writeEnabled: true
@ObjectModel.writeDraftPersistence: 'BPADDSUPP_D'
@ObjectModel.semanticKey: [ 'BusinessPartner', 'Supplier' ]
@ObjectModel.draftEnabled:true
@ObjectModel.createEnabled
@ObjectModel.deleteEnabled: 'EXTERNAL_CALCULATION'
@ObjectModel.updateEnabled
@Search.searchable: true
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
//I_Address2 adoption done
define view I_BPAdditionalSupplierTP
as select from I_Supplier as Supplier
inner join I_BPMultipleAssignment as BPAdditionalSupplier on Supplier.Supplier = BPAdditionalSupplier.BPObjectID
association [1..1] to I_BusinessPartnerTP as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
association [1..*] to I_BPAddlSuplrCompanyCodeTP as _BPAddlSuplrCompanyCode on $projection.BusinessPartner = _BPAddlSuplrCompanyCode.BusinessPartner
and $projection.Supplier = _BPAddlSuplrCompanyCode.Supplier
association [1..*] to I_BPAddlSuplrPurgOrgTP as _BPAddlSuplrPurgOrg on $projection.BusinessPartner = _BPAddlSuplrPurgOrg.BusinessPartner
and $projection.Supplier = _BPAddlSuplrPurgOrg.Supplier
association [1..*] to I_BPAddlSuplrTelNmbrTP as _BPAddlSuplrTelNmbr on $projection.BusinessPartner = _BPAddlSuplrTelNmbr.BusinessPartner
and $projection.Supplier = _BPAddlSuplrTelNmbr.Supplier
association [1..*] to I_BPAddlSuplrEmailAddressTP as _BPAddlSuplrEmailAddress on $projection.BusinessPartner = _BPAddlSuplrEmailAddress.BusinessPartner
and $projection.Supplier = _BPAddlSuplrEmailAddress.Supplier
association [1..*] to I_BPAddlSuplrMblPhNumberTP as _BPAddlSuplrMblPhNumber on $projection.BusinessPartner = _BPAddlSuplrMblPhNumber.BusinessPartner
and $projection.Supplier = _BPAddlSuplrMblPhNumber.Supplier
association [1..*] to I_BPAddlSuplrWebsiteURLTP as _BPAddlSuplrWebsiteURL on $projection.BusinessPartner = _BPAddlSuplrWebsiteURL.BusinessPartner
and $projection.Supplier = _BPAddlSuplrWebsiteURL.Supplier
association [1..*] to I_BPAddlSuplrFaxNumberTP as _BPAddlSuplrFaxNumber on $projection.BusinessPartner = _BPAddlSuplrFaxNumber.BusinessPartner
and $projection.Supplier = _BPAddlSuplrFaxNumber.Supplier
{
key BPAdditionalSupplier.BusinessPartner,
key Supplier.Supplier as Supplier,
BPAdditionalSupplier.BusinessPartner as BusinessPartnerForEdit,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold: 0.8
@Search.ranking: #HIGH
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Supplier.Supplier as SupplierForEdit,
BPAdditionalSupplier.BPAssignmentID,
BPAdditionalSupplier.BPAssignmentCategory,
BPAdditionalSupplier.BPAssignmentReasonID,
BPAdditionalSupplier.IsStandardAssignment,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BPAdditionalSupplier.AddressNumber,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.SupplierAccountGroup,
Supplier.SupplierCorporateGroup,
//Supplier.BusinessPartnerCategory,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.FormOfAddress,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.InternationalLocationNumber1,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.InternationalLocationNumber2,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.ReferenceAccountGroup,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.AlternativePayeeAccountNumber as SupplierAlternativePayee,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.Customer,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.PostingIsBlocked,
Supplier.PurchasingIsBlocked,
Supplier.PaymentIsBlockedForSupplier,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.VATLiability,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.BR_TaxIsSplit,
//Data protection and privacy Requirement
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
Supplier.AuthorizationGroup,
Supplier.SupplierName,
// For increased field length
Supplier.BPSupplierName,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Supplier.DeletionIndicator,
cast ( hextobin('00000000000000000000000000000000') as sysuuid_x preserving type ) as DraftKey,
Supplier._AddressDefaultRepresentation.PostalCode,
Supplier._AddressDefaultRepresentation.StreetName,
Supplier._AddressDefaultRepresentation.HouseNumber,
Supplier._AddressDefaultRepresentation.CityName,
Supplier._AddressDefaultRepresentation.Country,
Supplier._AddressDefaultRepresentation.Region,
Supplier._AddressDefaultRepresentation.POBoxPostalCode,
Supplier._AddressDefaultRepresentation.POBox,
Supplier._AddressDefaultRepresentation.CorrespondenceLanguage,
Supplier._AddressDefaultRepresentation.PrfrdCommMediumType,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataControllerSet as DataControllerSet,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController1 as DataController1,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController2 as DataController2,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController3 as DataController3,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController4 as DataController4,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController5 as DataController5,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController6 as DataController6,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController7 as DataController7,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController8 as DataController8,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController9 as DataController9,
//Added for DCL
@Consumption.hidden:true
@UI.hidden:true
Supplier.DataController10 as DataController10,
@ObjectModel.association.type: [ #TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT ]
_BusinessPartner,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrCompanyCode,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrPurgOrg,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrTelNmbr,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrFaxNumber,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrMblPhNumber,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrEmailAddress,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_BPAddlSuplrWebsiteURL
}
where
IsStandardAssignment <> 'X'
and BPAssignmentCategory = 'SUPPL'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BPMULTIPLEASSIGNMENT",
"I_ORGANIZATIONADDRESS",
"I_SUPPLIER"
],
"ASSOCIATED":
[
"I_BPADDLSUPLRCOMPANYCODETP",
"I_BPADDLSUPLREMAILADDRESSTP",
"I_BPADDLSUPLRFAXNUMBERTP",
"I_BPADDLSUPLRMBLPHNUMBERTP",
"I_BPADDLSUPLRPURGORGTP",
"I_BPADDLSUPLRTELNMBRTP",
"I_BPADDLSUPLRWEBSITEURLTP",
"I_BUSINESSPARTNERTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA