I_InHouseRepairItem

DDL: I_INHOUSEREPAIRITEM Type: view BASIC

In-House Repair Item

I_InHouseRepairItem is a Basic CDS View that provides data about "In-House Repair Item" in SAP S/4HANA. It reads from 1 data source (crms4d_repa_i) and exposes 44 fields with key fields CustMgmtObjectType, InHouseRepair, InHouseRepairItem. It has 16 associations to related views.

Data Sources (1)

SourceAliasJoin Type
crms4d_repa_i crms4d_repa_i from

Associations (16)

CardinalityTargetAliasCondition
[1..1] I_BusinessObjType _CustMgmtObjectType $projection.CustMgmtObjectType = _CustMgmtObjectType.BusinessObjectType
[0..1] I_CustMgmtDocItemCategory _InhRepairItemCategory $projection.InhRepairItemCategory = _InhRepairItemCategory.CustMgmtDocItemCategory
[0..1] I_InhRepairItemStatus _InhRepairItemStatus $projection.InhRepairItemCategory = _InhRepairItemStatus.InhRepairItemCategory and $projection.InhRepairItemStatus = _InhRepairItemStatus.InhRepairItemStatus
[0..1] I_InhRepairItemStatus _InhRepairItemSuplmntyStatus $projection.InhRepairItemCategory = _InhRepairItemSuplmntyStatus.InhRepairItemCategory and $projection.InhRepairItemSuplmntyStatus = _InhRepairItemSuplmntyStatus.InhRepairItemStatus
[0..1] I_ServiceDocErrorStatus _InhRepairItemHasError $projection.InhRepairItemHasError = _InhRepairItemHasError.ServiceDocumentHasError
[0..1] I_ServiceDocOpenStatus _InhRepairItemIsOpen $projection.InhRepairItemIsOpen = _InhRepairItemIsOpen.ServiceDocumentIsOpen
[0..1] I_Equipment _InhRepairReferenceEquipment $projection.InhRepairReferenceEquipment = _InhRepairReferenceEquipment.Equipment
[0..1] I_Product _Product $projection.product = _Product.Product
[1..1] I_InHouseRepair _InHouseRepair $projection.CustMgmtObjectType = _InHouseRepair.CustMgmtObjectType and $projection.InHouseRepair = _InHouseRepair.InHouseRepair
[0..*] I_EquipmentText _InhRepairReferenceEquipText $projection.InhRepairReferenceEquipment = _InhRepairReferenceEquipText.Equipment
[0..*] I_ProductText _ProductText $projection.product = _ProductText.Product
[0..1] I_InhRepairTransactionRelation _RepairOrder $projection.InHouseRepairItemUUID = _RepairOrder.CustMgmtPrdcssrTransactionUUID and _RepairOrder.CustMgmtTransacRelationType = 'IHR1' and _RepairOrder.CustMgmtPrdcssrTransacObjType = 'BUS2000257'
[0..1] I_InhRepairTransactionRelation _RepairQuotation $projection.InHouseRepairItemUUID = _RepairQuotation.CustMgmtPrdcssrTransactionUUID and _RepairQuotation.CustMgmtTransacRelationType = 'IHR2' and _RepairQuotation.CustMgmtPrdcssrTransacObjType = 'BUS2000257'
[0..1] I_SrvcMgmtObjectStatus _SrvcMgmtObjectStatus $projection.InHouseRepairItemUUID = _SrvcMgmtObjectStatus.SrvcMgmtObjectUUID and _SrvcMgmtObjectStatus.SrvcMgmtObjectStatusIsInactive = '' and ( _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus = 'I1002' or _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus = 'I1003' or _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus = 'I1005' )
[0..1] I_InhRepairTransactionRelation _OutboundDelivery $projection.InHouseRepairItemUUID = _OutboundDelivery.CustMgmtPrdcssrTransactionUUID and _OutboundDelivery.CustMgmtTransacRelationType = 'VONA' and _OutboundDelivery.CustMgmtSuccssrTransacObjType = 'LIKP'
[0..1] I_InhRepairItemAvailyStatus _InhRepairItemAvailyStatus $projection.InhRepairItemAvailyStatus = _InhRepairItemAvailyStatus.InhRepairItemAvailyStatus

Annotations (13)

NameValueLevelField
EndUserText.label In-House Repair Item view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey InHouseRepairItem view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
Metadata.ignorePropagatedAnnotations true view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.sqlViewName IINHOUSEREPITEM view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view

Fields (44)

KeyFieldSource TableSource FieldDescription
KEY CustMgmtObjectType objtype_h
KEY InHouseRepair
KEY InHouseRepairItem
InHouseRepairItemUUID item_guid
InHouseRepairItemCharUUID
CreationDateTime created_at_i
CreatedByUser created_by_i
LastChangeDateTime changed_at_i
LastChangedByUser changed_by_i
InhRepairItemObjectType objtype_i
InHouseRepairUUID header_guid
ProductUUID product
OriginallyRequestedProduct ordered_prod
Product product_id
InhRepairItemCategory itm_type
InhRepairItemStatus
InhRepairItemSuplmntyStatus stat_suppl
InhRepairItemDeliveryStatus stat_delivery
InhRepairItemAvailyStatus stat_repair_availability
InhRepairItemHasError stat_error
InhRepairItemIsOpen stat_open
InhRepairReferenceEquipment equipment_id
SerialNumber
InhRepairType process_type
PostingDate posting_date
ReferenceCustomerReturnItem ref_return_order_item
RefRetsMgmtProcessItem ref_msr_item
RefRetsMgmtProcItmQtySplit ref_msr_split_id
_CustMgmtObjectType _CustMgmtObjectType
_InhRepairItemCategory _InhRepairItemCategory
_InhRepairItemStatus _InhRepairItemStatus
_InhRepairItemSuplmntyStatus _InhRepairItemSuplmntyStatus
_SrvcMgmtObjectStatus _SrvcMgmtObjectStatus
_InhRepairItemHasError _InhRepairItemHasError
_InhRepairItemIsOpen _InhRepairItemIsOpen
_InhRepairReferenceEquipment _InhRepairReferenceEquipment
_Product _Product
_InHouseRepair _InHouseRepair
_RepairOrder _RepairOrder
_RepairQuotation _RepairQuotation
_InhRepairItemAvailyStatus _InhRepairItemAvailyStatus
_ProductText _ProductText
_InhRepairReferenceEquipText _InhRepairReferenceEquipText
_OutboundDelivery _OutboundDelivery
@EndUserText.label: 'In-House Repair Item'
@VDM: {
  viewType: #BASIC,
  lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #CHECK,
  privilegedAssociations: ['_RepairOrder', '_RepairQuotation']
}
@ObjectModel: {
  representativeKey: 'InHouseRepairItem',
  usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}     // sizeCategory: #L - expected number of rows is < 10.000.000

}
@Metadata: {
  ignorePropagatedAnnotations: true
}
@ClientHandling: {
  algorithm: #SESSION_VARIABLE
}
@AbapCatalog: {
  sqlViewName: 'IINHOUSEREPITEM',
  compiler.compareFilter: true,
  preserveKey: true
}


/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ] }*/
define view I_InHouseRepairItem
  as select from crms4d_repa_i

  association [1..1] to I_BusinessObjType              as _CustMgmtObjectType          on  $projection.CustMgmtObjectType = _CustMgmtObjectType.BusinessObjectType
  association [0..1] to I_CustMgmtDocItemCategory      as _InhRepairItemCategory       on  $projection.InhRepairItemCategory = _InhRepairItemCategory.CustMgmtDocItemCategory
  association [0..1] to I_InhRepairItemStatus          as _InhRepairItemStatus         on  $projection.InhRepairItemCategory = _InhRepairItemStatus.InhRepairItemCategory
                                                                                       and $projection.InhRepairItemStatus   = _InhRepairItemStatus.InhRepairItemStatus
  association [0..1] to I_InhRepairItemStatus          as _InhRepairItemSuplmntyStatus on  $projection.InhRepairItemCategory       = _InhRepairItemSuplmntyStatus.InhRepairItemCategory
                                                                                       and $projection.InhRepairItemSuplmntyStatus = _InhRepairItemSuplmntyStatus.InhRepairItemStatus
  association [0..1] to I_ServiceDocErrorStatus        as _InhRepairItemHasError       on  $projection.InhRepairItemHasError = _InhRepairItemHasError.ServiceDocumentHasError
  association [0..1] to I_ServiceDocOpenStatus         as _InhRepairItemIsOpen         on  $projection.InhRepairItemIsOpen = _InhRepairItemIsOpen.ServiceDocumentIsOpen

  association [0..1] to I_Equipment                    as _InhRepairReferenceEquipment on  $projection.InhRepairReferenceEquipment = _InhRepairReferenceEquipment.Equipment
  association [0..1] to I_Product                      as _Product                     on  $projection.product = _Product.Product

  association [1..1] to I_InHouseRepair                as _InHouseRepair               on  $projection.CustMgmtObjectType = _InHouseRepair.CustMgmtObjectType
                                                                                       and $projection.InHouseRepair      = _InHouseRepair.InHouseRepair

  association [0..*] to I_EquipmentText                as _InhRepairReferenceEquipText on  $projection.InhRepairReferenceEquipment = _InhRepairReferenceEquipText.Equipment

  association [0..*] to I_ProductText                  as _ProductText                 on  $projection.product = _ProductText.Product


  

  /*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
  association [0..1] to I_InhRepairTransactionRelation as _RepairOrder                 on  $projection.InHouseRepairItemUUID          = _RepairOrder.CustMgmtPrdcssrTransactionUUID
                                                                                       and _RepairOrder.CustMgmtTransacRelationType   = 'IHR1'
                                                                                       and _RepairOrder.CustMgmtPrdcssrTransacObjType = 'BUS2000257' //In-House Repair Item

  /*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
  association [0..1] to I_InhRepairTransactionRelation as _RepairQuotation             on  $projection.InHouseRepairItemUUID              = _RepairQuotation.CustMgmtPrdcssrTransactionUUID
                                                                                       and _RepairQuotation.CustMgmtTransacRelationType   = 'IHR2'
                                                                                       and _RepairQuotation.CustMgmtPrdcssrTransacObjType = 'BUS2000257' //In-House Repair Item


 /*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
  association [0..1] to I_SrvcMgmtObjectStatus         as _SrvcMgmtObjectStatus         on  $projection.InHouseRepairItemUUID             = _SrvcMgmtObjectStatus.SrvcMgmtObjectUUID
                                                                                        and _SrvcMgmtObjectStatus.SrvcMgmtObjectStatusIsInactive = ''
                                                                                        and (
                                                                                           _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus            = 'I1002'
                                                                                           or _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus         = 'I1003'
                                                                                           or _SrvcMgmtObjectStatus.SrvcMgmtObjectStatus         = 'I1005'
                                                                                         )
 //Return Order Changes

  association [0..1] to I_InhRepairTransactionRelation as _OutboundDelivery  on  $projection.InHouseRepairItemUUID = _OutboundDelivery.CustMgmtPrdcssrTransactionUUID 
                                                                             and _OutboundDelivery.CustMgmtTransacRelationType   = 'VONA'
                                                                             and _OutboundDelivery.CustMgmtSuccssrTransacObjType = 'LIKP' 
                                                                             
  association [0..1] to I_InhRepairItemAvailyStatus    as _InhRepairItemAvailyStatus          on $projection.InhRepairItemAvailyStatus =  _InhRepairItemAvailyStatus.InhRepairItemAvailyStatus                                                                                                                                                                 

{
      @ObjectModel.foreignKey.association: '_CustMgmtObjectType'
  key objtype_h                                                            as CustMgmtObjectType,
      @ObjectModel.foreignKey.association: '_InHouseRepair'
  key cast(object_id as crms4_repa_inhouse_repair_lbl preserving type)     as InHouseRepair,
  key cast(number_int as crms4_repa_item_lbl preserving type)              as InHouseRepairItem,
      item_guid                                                            as InHouseRepairItemUUID,
      cast(item_guid_char as crms4_repa_object_guid32 preserving type)     as InHouseRepairItemCharUUID,
      created_at_i                                                         as CreationDateTime,
      created_by_i                                                         as CreatedByUser,
      changed_at_i                                                         as LastChangeDateTime,
      changed_by_i                                                         as LastChangedByUser,
      objtype_i                                                            as InhRepairItemObjectType,
      header_guid                                                          as InHouseRepairUUID,
      product                                                              as ProductUUID,
      ordered_prod                                                         as OriginallyRequestedProduct,
      @ObjectModel.foreignKey.association: '_Product'
      product_id                                                           as Product,
      @ObjectModel.foreignKey.association: '_InhRepairItemCategory'
      itm_type                                                             as InhRepairItemCategory,
      @ObjectModel.foreignKey.association: '_InhRepairItemStatus'
      cast(stat_lifecycle as crms4_repa_item_status_lbl preserving type )  as InhRepairItemStatus,
      @ObjectModel.foreignKey.association: '_InhRepairItemSuplmntyStatus'
      stat_suppl                                                           as InhRepairItemSuplmntyStatus,
      stat_delivery                                                        as InhRepairItemDeliveryStatus,
      @ObjectModel.foreignKey.association: '_InhRepairItemAvailyStatus'
      stat_repair_availability                                             as InhRepairItemAvailyStatus,
      @Semantics.booleanIndicator: true
      @ObjectModel.foreignKey.association: '_InhRepairItemHasError'
      stat_error                                                           as InhRepairItemHasError,
      @Semantics.booleanIndicator: true
      @ObjectModel.foreignKey.association: '_InhRepairItemIsOpen'
      stat_open                                                            as InhRepairItemIsOpen,
      @ObjectModel.foreignKey.association: '_InhRepairReferenceEquipment'
      equipment_id                                                         as InhRepairReferenceEquipment,

      cast(serial_number as crms4_repa_equip_serialnumber preserving type) as SerialNumber,
      process_type                                                         as InhRepairType,
      posting_date                                                         as PostingDate,
      ref_return_order_item                                                as ReferenceCustomerReturnItem,
      ref_msr_item                                                         as RefRetsMgmtProcessItem,
      ref_msr_split_id                                                     as RefRetsMgmtProcItmQtySplit,
      
      
      /* Associations */
      _CustMgmtObjectType,
      _InhRepairItemCategory,
      _InhRepairItemStatus,
      _InhRepairItemSuplmntyStatus,
      _SrvcMgmtObjectStatus,
      _InhRepairItemHasError,
      _InhRepairItemIsOpen,
      _InhRepairReferenceEquipment,
      _Product,
      _InHouseRepair,
      _RepairOrder,
      _RepairQuotation,
      _InhRepairItemAvailyStatus,

      //text associations are no longer used in our projection views. therefore, we want to remove them. 

      //but these associations are still used in the view ESH_N_INHOUSEREPAIR for our enterprise search modell

      //therefore, removal is not possible 

      _ProductText, 
      _InhRepairReferenceEquipText,
      
      //Return Order Changes

      _OutboundDelivery 

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"CRMS4D_REPA_I"
],
"ASSOCIATED":
[
"I_BUSINESSOBJTYPE",
"I_CUSTMGMTDOCITEMCATEGORY",
"I_EQUIPMENT",
"I_EQUIPMENTTEXT",
"I_INHOUSEREPAIR",
"I_INHREPAIRITEMAVAILYSTATUS",
"I_INHREPAIRITEMSTATUS",
"I_INHREPAIRTRANSACTIONRELATION",
"I_PRODUCT",
"I_PRODUCTTEXT",
"I_SERVICEDOCERRORSTATUS",
"I_SERVICEDOCOPENSTATUS",
"I_SRVCMGMTOBJECTSTATUS"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/