I_UserAddress
Benutzeradresse
I_UserAddress is a Composite CDS View that provides data about "Benutzeradresse" in SAP S/4HANA. It reads from 2 data sources (I_UserAddressLink, I_UserBasic) and exposes 23 fields with key field UserID. It has 13 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_UserAddressLink | _AddressLink | from |
| I_UserBasic | _UserBasic | inner |
Associations (13)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_AddressPersonName | _PersonName | _PersonName.AddressPersonID = $projection.UserAddressPersonIdentifier and _PersonName.AddressRepresentationCode = '' |
| [1..1] | I_AddressWorkplaceDetails | _PersonWorkplace | _PersonWorkplace.AddressPersonID = $projection.UserAddressPersonIdentifier and _PersonWorkplace.AddressID = $projection.UserAddressIdentifier and _PersonWorkplace.AddressRepresentationCode = '' |
| [1..1] | I_OrganizationAddress | _Organization | _Organization.AddressPersonID = '' and _Organization.AddressID = $projection.UserAddressIdentifier and _Organization.AddressRepresentationCode = '' |
| [1..1] | I_Address_2 | _Location | _Location.AddressID = $projection.UserAddressIdentifier and _Location.AddressRepresentationCode = '' |
| [0..1] | I_UserCompany | _Company | _Company.UserAddressIdentifier = $projection.UserAddressIdentifier |
| [0..1] | I_UserCompany | _TemplateCompany | _TemplateCompany.UserAddressIdentifier = $projection.UserTemplateAddressIdentifier and $projection.UserTemplateOrgType = 'C' |
| [0..1] | I_AddrCurDefaultEmailAddress | _DefaultEmail | _DefaultEmail.AddressPersonID = $projection.UserAddressPersonIdentifier and _DefaultEmail.AddressID = $projection.UserAddressIdentifier |
| [0..1] | I_AddrCurDfltLandlinePhoneNmbr | _DefaultPhone | _DefaultPhone.AddressPersonID = $projection.UserAddressPersonIdentifier and _DefaultPhone.AddressID = $projection.UserAddressIdentifier |
| [0..1] | I_AddrCurDefaultFaxNumber | _DefaultFax | _DefaultFax.AddressPersonID = $projection.UserAddressPersonIdentifier and _DefaultFax.AddressID = $projection.UserAddressIdentifier |
| [0..1] | I_AddrCurDfltMobilePhoneNumber | _DefaultMobile | _DefaultMobile.AddressPersonID = $projection.UserAddressPersonIdentifier and _DefaultMobile.AddressID = $projection.UserAddressIdentifier |
| [0..*] | I_AddressPhoneNumber_2 | _Phone | _Phone.AddressPersonID = $projection.UserAddressPersonIdentifier and _Phone.AddressID = $projection.UserAddressIdentifier |
| [0..*] | I_AddressFaxNumber_2 | _Fax | _Fax.AddressPersonID = $projection.UserAddressPersonIdentifier and _Fax.AddressID = $projection.UserAddressIdentifier |
| [0..*] | I_AddressEmailAddress_2 | _EMail | _EMail.AddressPersonID = $projection.UserAddressPersonIdentifier and _EMail.AddressID = $projection.UserAddressIdentifier |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Benutzeradresse | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| ObjectModel.compositionRoot | true | view | |
| ObjectModel.representativeKey | UserID | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| AbapCatalog.extensibility.extensible | false | view | |
| Metadata.allowExtensions | true | view |
Fields (23)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | UserID | I_UserBasic | UserID | User Name |
| UserGroup | I_UserBasic | UserGroup | User Group | |
| UserAddressPersonIdentifier | I_UserAddressLink | UserAddressPersonIdentifier | Person Number | |
| UserAddressIdentifier | I_UserAddressLink | UserAddressIdentifier | Address Number | |
| BusinessPartnerUUID | I_UserAddressLink | BusinessPartnerUUID | UUID | |
| IdentityAddressType | I_UserAddressLink | IdentityAddressType | Identity Add. Type | |
| UserTemplateAddressIdentifier | I_UserAddressLink | UserTemplateAddressIdentifier | ||
| UserTemplateOrgType | I_UserAddressLink | UserTemplateOrgType | ||
| ResponsibleUser | I_UserAddressLink | ResponsibleUser | Responsible | |
| UserDescription | I_UserAddressLink | UserDescription | Full Name | |
| _Company | _Company | |||
| _TemplateCompany | _TemplateCompany | |||
| _PersonName | _PersonName | |||
| _PersonWorkplace | _PersonWorkplace | |||
| _Organization | _Organization | |||
| _Location | _Location | |||
| _DefaultEmail | _DefaultEmail | |||
| _DefaultPhone | _DefaultPhone | |||
| _DefaultFax | _DefaultFax | |||
| _DefaultMobile | _DefaultMobile | |||
| _Phone | _Phone | |||
| _Fax | _Fax | |||
| _EMail | _EMail |
Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view I_UserAddress.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
CREATE VIEW I_UserAddress AS
SELECT
_UserBasic.UserID AS UserID,
_UserBasic.UserGroup AS UserGroup,
_AddressLink.UserAddressPersonIdentifier AS UserAddressPersonIdentifier,
_AddressLink.UserAddressIdentifier AS UserAddressIdentifier,
_AddressLink.BusinessPartnerUUID AS BusinessPartnerUUID,
_AddressLink.IdentityAddressType AS IdentityAddressType,
_AddressLink.UserTemplateAddressIdentifier AS UserTemplateAddressIdentifier,
_AddressLink.UserTemplateOrgType AS UserTemplateOrgType,
_AddressLink.ResponsibleUser AS ResponsibleUser,
_AddressLink.UserDescription AS UserDescription
FROM I_UserAddressLink AS _AddressLink
INNER JOIN I_UserBasic AS _UserBasic ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_AddressPersonName AS _PersonName ON _PersonName.AddressPersonID = UserAddressPersonIdentifier AND _PersonName.AddressRepresentationCode = '' -- association [1..1]
LEFT OUTER JOIN I_AddressWorkplaceDetails AS _PersonWorkplace ON _PersonWorkplace.AddressPersonID = UserAddressPersonIdentifier AND _PersonWorkplace.AddressID = UserAddressIdentifier AND _PersonWorkplace.AddressRepresentationCode = '' -- association [1..1]
LEFT OUTER JOIN I_OrganizationAddress AS _Organization ON _Organization.AddressPersonID = '' AND _Organization.AddressID = UserAddressIdentifier AND _Organization.AddressRepresentationCode = '' -- association [1..1]
LEFT OUTER JOIN I_Address_2 AS _Location ON _Location.AddressID = UserAddressIdentifier AND _Location.AddressRepresentationCode = '' -- association [1..1]
LEFT OUTER JOIN I_UserCompany AS _Company ON _Company.UserAddressIdentifier = UserAddressIdentifier -- association [0..1]
LEFT OUTER JOIN I_UserCompany AS _TemplateCompany ON _TemplateCompany.UserAddressIdentifier = UserTemplateAddressIdentifier AND UserTemplateOrgType = 'C' -- association [0..1]
LEFT OUTER JOIN I_AddrCurDefaultEmailAddress AS _DefaultEmail ON _DefaultEmail.AddressPersonID = UserAddressPersonIdentifier AND _DefaultEmail.AddressID = UserAddressIdentifier -- association [0..1]
LEFT OUTER JOIN I_AddrCurDfltLandlinePhoneNmbr AS _DefaultPhone ON _DefaultPhone.AddressPersonID = UserAddressPersonIdentifier AND _DefaultPhone.AddressID = UserAddressIdentifier -- association [0..1]
LEFT OUTER JOIN I_AddrCurDefaultFaxNumber AS _DefaultFax ON _DefaultFax.AddressPersonID = UserAddressPersonIdentifier AND _DefaultFax.AddressID = UserAddressIdentifier -- association [0..1]
LEFT OUTER JOIN I_AddrCurDfltMobilePhoneNumber AS _DefaultMobile ON _DefaultMobile.AddressPersonID = UserAddressPersonIdentifier AND _DefaultMobile.AddressID = UserAddressIdentifier -- association [0..1]
LEFT OUTER JOIN I_AddressPhoneNumber_2 AS _Phone ON _Phone.AddressPersonID = UserAddressPersonIdentifier AND _Phone.AddressID = UserAddressIdentifier -- association [0..*]
LEFT OUTER JOIN I_AddressFaxNumber_2 AS _Fax ON _Fax.AddressPersonID = UserAddressPersonIdentifier AND _Fax.AddressID = UserAddressIdentifier -- association [0..*]
LEFT OUTER JOIN I_AddressEmailAddress_2 AS _EMail ON _EMail.AddressPersonID = UserAddressPersonIdentifier AND _EMail.AddressID = UserAddressIdentifier -- association [0..*]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- 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
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA