I_InhRepairUserStatusText

DDL: I_INHREPAIRUSERSTATUSTEXT Type: view BASIC Package: CRMS4_REPAIR_BO

User Status of In-House Repair – Text

I_InhRepairUserStatusText is a Basic CDS View that provides data about "User Status of In-House Repair – Text" in SAP S/4HANA. It reads from 3 data sources (I_CustMgmtLfcycUsrStsMapping, I_CustMgmtLifecycleUserStsText, I_ServiceDocumentType) and exposes 7 fields with key fields Language, InhRepairUserStatus, InhRepairType. It has 3 associations to related views. Part of development package CRMS4_REPAIR_BO.

Data Sources (3)

SourceAliasJoin Type
I_CustMgmtLfcycUsrStsMapping I_CustMgmtLfcycUsrStsMapping inner
I_CustMgmtLifecycleUserStsText I_CustMgmtLifecycleUserStsText from
I_ServiceDocumentType I_ServiceDocumentType inner

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_ServiceDocumentType _InhRepairType $projection.InhRepairType = _InhRepairType.ServiceDocumentType
[0..1] I_InhRepairUserStatus _InhRepairUserStatus $projection.InhRepairType = _InhRepairUserStatus.InhRepairType and $projection.InhRepairUserStatus = _InhRepairUserStatus.InhRepairUserStatus
[0..1] I_Language _Language $projection.Language = _Language.Language

Annotations (14)

NameValueLevelField
EndUserText.label User Status of In-House Repair – Text view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #NOT_REQUIRED view
ObjectModel.dataCategory #TEXT view
ObjectModel.representativeKey InhRepairUserStatus view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #CUSTOMIZING view
Metadata.ignorePropagatedAnnotations true view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.sqlViewName IIHRUSRSTATUST view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view

Fields (7)

KeyFieldSource TableSource FieldDescription
KEY Language Language
KEY InhRepairUserStatus
KEY InhRepairType ServiceDocumentType
InhRepairUserStatusName
_InhRepairType _InhRepairType
_InhRepairUserStatus _InhRepairUserStatus
_Language _Language
@EndUserText.label: 'User Status of In-House Repair – Text'
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AccessControl: {
    authorizationCheck: #NOT_REQUIRED
}
@ObjectModel: {
    dataCategory: #TEXT,
    representativeKey: 'InhRepairUserStatus',
    usageType: {serviceQuality: #B, sizeCategory: #S, dataClass: #CUSTOMIZING}
}
@Metadata: {
    ignorePropagatedAnnotations: true
}
@ClientHandling: {
    algorithm: #SESSION_VARIABLE
}
@AbapCatalog: {
    sqlViewName: 'IIHRUSRSTATUST',
    compiler.compareFilter: true,
    preserveKey: true
}

define view I_InhRepairUserStatusText
  as select from I_CustMgmtLifecycleUserStsText
    inner join   I_CustMgmtLfcycUsrStsMapping on I_CustMgmtLfcycUsrStsMapping.CustMgmtLifecycleUserStatus = I_CustMgmtLifecycleUserStsText.CustMgmtLifecycleUserStatus
    inner join   I_ServiceDocumentType        on  I_ServiceDocumentType.ServiceObjectType         =  'BUS2000256' //In-House Repair

                                              and I_ServiceDocumentType.SrvcDocTypeBlockingStatus <> 'X'
                                              and I_ServiceDocumentType.StatusProfile             =  I_CustMgmtLfcycUsrStsMapping.StatusProfile
                                              
  association [0..1] to I_ServiceDocumentType as _InhRepairType       on  $projection.InhRepairType = _InhRepairType.ServiceDocumentType
  association [0..1] to I_InhRepairUserStatus as _InhRepairUserStatus on  $projection.InhRepairType       = _InhRepairUserStatus.InhRepairType
                                                                      and $projection.InhRepairUserStatus = _InhRepairUserStatus.InhRepairUserStatus
  association [0..1] to I_Language            as _Language            on  $projection.Language = _Language.Language

{
         @Semantics.language: true
         @ObjectModel.foreignKey.association: '_Language'
  key    Language,
         @ObjectModel.foreignKey.association: '_InhRepairUserStatus'
  key    cast(I_CustMgmtLifecycleUserStsText.CustMgmtLifecycleUserStatus as crms4_repa_header_status_lbl preserving type) as InhRepairUserStatus,
         @ObjectModel.foreignKey.association: '_InhRepairType'
  key    ServiceDocumentType                                                                                              as InhRepairType,
         @Semantics.text: true
         cast(CustMgmtLifecycleUserStsName as crms4_repa_hdr_status_dsc_lbl preserving type)                              as InhRepairUserStatusName,

         /* Associations */
         _InhRepairType,
         _InhRepairUserStatus,
         _Language
}
where
  I_CustMgmtLfcycUsrStsMapping.CustMgmtLifecycleUserStsField = 'STAT_LIFECYCLE'