I_BusinessUser
Business User
I_BusinessUser is a Composite CDS View that provides data about "Business User" in SAP S/4HANA. It reads from 2 data sources (P_BPUsrPerson, usr21) and exposes 42 fields with key field BusinessPartner. It has 3 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| P_BPUsrPerson | _Person | from |
| usr21 | usr21 | inner |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_User | _User | $projection.UserID = _User.UserID |
| [0..1] | I_WorkplaceAddress | _WorkplaceAddress | $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID |
| [0..*] | I_BPUsrRole | _BusinessPartnerRole | $projection.BusinessPartner = _BusinessPartnerRole.BusinessPartner |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IBUSINESSUSER | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Business User | view | |
| VDM.viewType | #COMPOSITE | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.representativeKey | BusinessPartner | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ClientHandling.type | #CLIENT_DEPENDENT | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| VDM.lifecycle.status | #DEPRECATED | view | |
| VDM.lifecycle.successor | I_BusinessUserBasic | view |
Fields (42)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessPartner | P_BPUsrPerson | BusinessPartner | |
| BusinessPartnerUUID | P_BPUsrPerson | BusinessPartnerUUID | ||
| BPIdentificationNumber | _BusinessPartnerExternalID | BPIdentificationNumber | ||
| LastName | P_BPUsrPerson | LastName | ||
| FirstName | P_BPUsrPerson | FirstName | ||
| PersonFullName | P_BPUsrPerson | PersonFullName | ||
| PersonFullNameMaintStatus | P_BPUsrPerson | PersonFullNameMaintStatus | ||
| FormOfAddress | P_BPUsrPerson | FormOfAddress | ||
| AcademicTitle | P_BPUsrPerson | AcademicTitle | ||
| AcademicSecondTitle | P_BPUsrPerson | AcademicSecondTitle | ||
| CorrespondenceLanguage | P_BPUsrPerson | CorrespondenceLanguage | ||
| MiddleName | P_BPUsrPerson | MiddleName | ||
| AdditionalLastName | P_BPUsrPerson | AdditionalLastName | ||
| BirthName | P_BPUsrPerson | BirthName | ||
| NickName | P_BPUsrPerson | NickName | ||
| Initials | P_BPUsrPerson | Initials | ||
| LastNamePrefix | P_BPUsrPerson | LastNamePrefix | ||
| LastNameSecondPrefix | P_BPUsrPerson | LastNameSecondPrefix | ||
| NameSupplement | P_BPUsrPerson | NameSupplement | ||
| UserID | ||||
| IsMarkedForArchiving | P_BPUsrPerson | IsMarkedForArchiving | ||
| BusinessPartnerIsBlocked | P_BPUsrPerson | BusinessPartnerIsBlocked | ||
| CreatedByUser | P_BPUsrPerson | CreatedByUser | ||
| CreationDateTime | P_BPUsrPerson | CreationDateTime | ||
| LastChangedByUser | P_BPUsrPerson | LastChangedByUser | ||
| LastChangeDateTime | P_BPUsrPerson | LastChangeDateTime | ||
| IsBusinessPurposeCompleted | P_BPUsrPerson | IsBusinessPurposeCompleted | ||
| AuthorizationGroup | P_BPUsrPerson | AuthorizationGroup | ||
| DataControllerSet | P_BPUsrPerson | DataControllerSet | ||
| DataController1 | P_BPUsrPerson | DataController1 | ||
| DataController2 | P_BPUsrPerson | DataController2 | ||
| DataController3 | P_BPUsrPerson | DataController3 | ||
| DataController4 | P_BPUsrPerson | DataController4 | ||
| DataController5 | P_BPUsrPerson | DataController5 | ||
| DataController6 | P_BPUsrPerson | DataController6 | ||
| DataController7 | P_BPUsrPerson | DataController7 | ||
| DataController8 | P_BPUsrPerson | DataController8 | ||
| DataController9 | P_BPUsrPerson | DataController9 | ||
| DataController10 | P_BPUsrPerson | DataController10 | ||
| _User | _User | |||
| _WorkplaceAddress | _WorkplaceAddress | |||
| _BusinessPartnerRole | _BusinessPartnerRole |
@AbapCatalog.sqlViewName: 'IBUSINESSUSER'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Business User'
@VDM.viewType: #COMPOSITE
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@AccessControl.privilegedAssociations: ['_User']
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.representativeKey: 'BusinessPartner'
//@ObjectModel.alternativeKey: [ { id : 'BusinessPartnerUUID', uniqueness: #UNIQUE, element: ['BusinessPartnerUUID'] },
// { id : 'UserID', uniqueness: #UNIQUE, element: ['UserID'] } ]
@Metadata.ignorePropagatedAnnotations:true
@ClientHandling.type: #CLIENT_DEPENDENT
@ClientHandling.algorithm : #SESSION_VARIABLE
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'I_BusinessUserBasic'
define view I_BusinessUser
as select from P_BPUsrPerson as _Person
left outer to one join P_BPUSRPERSONEXTERNALID as _BusinessPartnerExternalID on _Person.BusinessPartner = _BusinessPartnerExternalID.BusinessPartner
inner join usr21 on _Person.BusinessPartnerUUID = usr21.bpperson
and(
usr21.idadtype = '02'
or usr21.idadtype = '04'
)
association [0..1] to I_User as _User on $projection.UserID = _User.UserID
association [0..1] to I_WorkplaceAddress as _WorkplaceAddress on $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
association [0..*] to I_BPUsrRole as _BusinessPartnerRole on $projection.BusinessPartner = _BusinessPartnerRole.BusinessPartner
{
key _Person.BusinessPartner as BusinessPartner,
_Person.BusinessPartnerUUID as BusinessPartnerUUID,
_BusinessPartnerExternalID.BPIdentificationNumber as BPIdentificationNumber,
_Person.LastName as LastName,
_Person.FirstName as FirstName,
_Person.PersonFullName as PersonFullName,
_Person.PersonFullNameMaintStatus as PersonFullNameMaintStatus,
_Person.FormOfAddress as FormOfAddress,
_Person.AcademicTitle as AcademicTitle,
_Person.AcademicSecondTitle as AcademicSecondTitle,
_Person.CorrespondenceLanguage as CorrespondenceLanguage,
_Person.MiddleName as MiddleName,
_Person.AdditionalLastName as AdditionalLastName,
_Person.BirthName as BirthName,
_Person.NickName as NickName,
_Person.Initials as Initials,
_Person.LastNamePrefix as LastNamePrefix,
_Person.LastNameSecondPrefix as LastNameSecondPrefix,
_Person.NameSupplement as NameSupplement,
cast( usr21.bname as vdm_userid preserving type ) as UserID,
_Person.IsMarkedForArchiving as IsMarkedForArchiving,
_Person.BusinessPartnerIsBlocked as BusinessPartnerIsBlocked,
_Person.CreatedByUser as CreatedByUser,
_Person.CreationDateTime as CreationDateTime,
_Person.LastChangedByUser as LastChangedByUser,
_Person.LastChangeDateTime as LastChangeDateTime,
_Person.IsBusinessPurposeCompleted as IsBusinessPurposeCompleted,
_Person.AuthorizationGroup as AuthorizationGroup,
@Consumption.hidden:true
_Person.DataControllerSet as DataControllerSet,
@Consumption.hidden:true
_Person.DataController1 as DataController1,
@Consumption.hidden:true
_Person.DataController2 as DataController2,
@Consumption.hidden:true
_Person.DataController3 as DataController3,
@Consumption.hidden:true
_Person.DataController4 as DataController4,
@Consumption.hidden:true
_Person.DataController5 as DataController5,
@Consumption.hidden:true
_Person.DataController6 as DataController6,
@Consumption.hidden:true
_Person.DataController7 as DataController7,
@Consumption.hidden:true
_Person.DataController8 as DataController8,
@Consumption.hidden:true
_Person.DataController9 as DataController9,
@Consumption.hidden:true
_Person.DataController10 as DataController10,
_User,
_WorkplaceAddress,
_BusinessPartnerRole
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"P_BPUSRPERSON",
"P_BPUSRPERSONEXTERNALID",
"USR21"
],
"ASSOCIATED":
[
"I_BPUSRROLE",
"I_USER",
"I_WORKPLACEADDRESS"
],
"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