I_INHOUSEREPAIRITEM

CDS View

In-House Repair Item

I_INHOUSEREPAIRITEM is a CDS View in S/4HANA. In-House Repair Item. It contains 44 fields. 12 CDS views read from this table.

CDS Views using this table (12)

ViewTypeJoinVDMDescription
C_InhRepairProcessFlow view from CONSUMPTION Transaction History of In-House Repair Item
C_InhRepairProcessFlow view union_all CONSUMPTION Transaction History of In-House Repair Item
I_AllRepairObjectSituation view_entity from COMPOSITE Anchor for Repair Object Situations
I_InHouseRepairItemTP view_entity from TRANSACTIONAL In-House Repair Item
I_InhRepairItemNote view inner BASIC Notes for In-House Repair Item
I_RepairObjectSituation view from COMPOSITE Repair Object Situations
I_ReprObjCompltnNotPosblSitn view_entity from COMPOSITE Repair Object Completion Situation
I_SrvcDocStatusChangeDocument view inner COMPOSITE Change Documents for Status
P_InHouseRepairItemStatusHist view from COMPOSITE
P_InhRepairItemNote view_entity inner TRANSACTIONAL
R_InhRepairItemCreditStatus view_entity from COMPOSITE Credit Status of Service Transaction
R_InhRepairItmFUPCustReturnTP view_entity from TRANSACTIONAL FollowUp Returns Ord Itm for IHR Itm - TP

Fields (44)

KeyField CDS FieldsUsed in Views
KEY CustMgmtObjectType CustMgmtObjectType,ServiceObjectType 5
KEY InHouseRepair InHouseRepair,PrecedingDocument,SubsequentDocument 9
KEY InHouseRepairItem InHouseRepairItem,RepairObject 9
KEY InHouseRepairItemUUID InHouseRepairItemUUID 6
_CustMgmtObjectType _CustMgmtObjectType 3
_InHouseRepair _InHouseRepair 2
_InhRepairItemAvailyStatus _InhRepairItemAvailyStatus 1
_InhRepairItemCategory _InhRepairItemCategory 4
_InhRepairItemHasError _InhRepairItemHasError 1
_InhRepairItemIsOpen _InhRepairItemIsOpen 1
_InhRepairItemStatus _InhRepairItemStatus 1
_InhRepairItemSuplmntyStatus _InhRepairItemSuplmntyStatus 1
_InhRepairReferenceEquipment _InhRepairReferenceEquipment 1
_InhRepairReferenceEquipText _InhRepairReferenceEquipText 1
_OutboundDelivery _OutboundDelivery 1
_Product _Product 1
_ProductText _ProductText 1
_RepairOrder _RepairOrder 1
_RepairQuotation _RepairQuotation 1
_SrvcMgmtObjectStatus _SrvcMgmtObjectStatus 1
CreatedByUser CreatedByUser 4
CreationDateTime CreationDateTime 1
InHouseRepairItemCharUUID InHouseRepairItemCharUUID 1
InHouseRepairUUID InHouseRepairUUID 4
InhRepairItemAvailyStatus InhRepairItemAvailyStatus 3
InhRepairItemCategory InhRepairItemCategory 4
InhRepairItemDeliveryStatus InhRepairItemDeliveryStatus 1
InhRepairItemHasError InhRepairItemHasError 1
InhRepairItemIsOpen InhRepairItemIsOpen 1
InhRepairItemObjectType InhRepairItemObjectType 1
InhRepairItemStatus InhRepairItemStatus 1
InhRepairItemSuplmntyStatus InhRepairItemSuplmntyStatus 1
InhRepairReferenceEquipment InhRepairReferenceEquipment 1
InhRepairType InhRepairType 5
LastChangeDateTime LastChangeDateTime 1
LastChangedByUser LastChangedByUser 1
OriginallyRequestedProduct OriginallyRequestedProduct 1
PostingDate PostingDate 1
Product Product 1
ProductUUID ProductUUID 1
ReferenceCustomerReturnItem ReferenceCustomerReturnItem 1
RefRetsMgmtProcessItem RefRetsMgmtProcessItem 1
RefRetsMgmtProcItmQtySplit RefRetsMgmtProcItmQtySplit 1
SerialNumber SerialNumber 1
@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":""
}
}*/