I_ChangeRecordRefOrderBOMTP

DDL: I_CHANGERECORDREFORDERBOMTP SQL: ICHGRECREFOBMTP Type: view TRANSACTIONAL

Change Record Ref Object Order BOM - TP

I_ChangeRecordRefOrderBOMTP is a Transactional CDS View that provides data about "Change Record Ref Object Order BOM - TP" in SAP S/4HANA. It reads from 1 data source (I_ChangeRecordRefOrderBOMBsc) and exposes 30 fields with key field ChangeRecordReferenceUUID. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChangeRecordRefOrderBOMBsc reference_bom from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordDraftTP _ChangeRecordTP $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID
[0..1] E_ChangeRecordRefOrderBOMBsc _OrdBOMExtension $projection.ChangeRecordReferenceUUID = _OrdBOMExtension.ChangeRecordReferenceUUID

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECREFOBMTP view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
EndUserText.label Change Record Ref Object Order BOM - TP view
VDM.viewType #TRANSACTIONAL view
ObjectModel.writeDraftPersistence PLMCRREFOBM_D view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #XXL view
AbapCatalog.preserveKey true view

Fields (30)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID I_ChangeRecordRefOrderBOMBsc ChangeRecordReferenceUUID
MaterialasmatnrendasMaterial
Plantaswerks_dendasPlant
SalesOrder BOMLink SalesOrder
SalesOrderItem BOMLink SalesOrderItem
ChangeRecordUUID I_ChangeRecordRefOrderBOMBsc ChangeRecordUUID
ChangeRecordReferenceType I_ChangeRecordRefOrderBOMBsc ChangeRecordReferenceType
ChangeRecordReferenceSubtype I_ChangeRecordRefOrderBOMBsc ChangeRecordReferenceSubtype
ChangeRecordReference I_ChangeRecordRefOrderBOMBsc ChangeRecordReference
ParentChangeRecordRefUUID I_ChangeRecordRefOrderBOMBsc ParentChangeRecordRefUUID
IsMainReference I_ChangeRecordRefOrderBOMBsc IsMainReference
BillOfMaterialCategory
ChangeNumber I_ChangeRecordRefOrderBOMBsc ChangeNumber
CreatedByUser I_ChangeRecordRefOrderBOMBsc CreatedByUser
CreationDateTime I_ChangeRecordRefOrderBOMBsc CreationDateTime
LastChangedByUser I_ChangeRecordRefOrderBOMBsc LastChangedByUser
LastChangeDateTime I_ChangeRecordRefOrderBOMBsc LastChangeDateTime
ChgRecdReasonForChange ChgRecdReasonForChange
ExpdCompltnDte ExpdCompltnDte
ChgRecdAuthznGrpText ChgRecdAuthznGrpText
ChgRecdNmbrChgSts ChgRecdNmbrChgSts
ChangeRecordItemRelevance I_ChangeRecordRefOrderBOMBsc ChangeRecordItemRelevance
ChangeRecordVirtualRefInd I_ChangeRecordRefOrderBOMBsc ChangeRecordVirtualRefInd
BillOfMaterial
ChangeRecordRefObjectUUID I_ChangeRecordRefOrderBOMBsc ChangeRecordRefObjectUUID
ChangeRecordItemProcgStatus I_ChangeRecordRefOrderBOMBsc ChangeRecordItemProcgStatus
ChgRecdCurrentItemProcgStatus I_ChangeRecordRefOrderBOMBsc ChgRecdCurrentItemProcgStatus
ChgRecdItmTgtSts I_ChangeRecordRefOrderBOMBsc ChgRecdItmTgtSts
ChgRecdItmDSgntr I_ChangeRecordRefOrderBOMBsc ChgRecdItmDSgntr
_ChangeRecordTP _ChangeRecordTP
@AbapCatalog.sqlViewName: 'ICHGRECREFOBMTP'
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@EndUserText.label: 'Change Record Ref Object Order BOM - TP'
@VDM.viewType: #TRANSACTIONAL
@ObjectModel: {
semanticKey: [ 'Material','Plant','BillOfMaterialVariantUsage','BillOfMaterialVariant'],
                writeDraftPersistence: 'PLMCRREFOBM_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }

@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #XXL}
@AbapCatalog.preserveKey:true
define view I_ChangeRecordRefOrderBOMTP
  as select from           I_ChangeRecordRefOrderBOMBsc as reference_bom

    left outer to one join I_SalesOrderBOMLink          as BOMLink on  reference_bom.ChgRecRefInternalKey1 = BOMLink.BillOfMaterialCategory
                                                                   and reference_bom.ChgRecRefInternalKey2 = BOMLink.BillOfMaterial
                                                                   and reference_bom.ChgRecRefInternalKey3 = BOMLink.BillOfMaterialVariant

  association [1..1] to I_ChangeRecordDraftTP        as _ChangeRecordTP  on $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID
  association [0..1] to E_ChangeRecordRefOrderBOMBsc as _OrdBOMExtension on $projection.ChangeRecordReferenceUUID = _OrdBOMExtension.ChangeRecordReferenceUUID
{

  key        reference_bom.ChangeRecordReferenceUUID,

             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             case
               when BOMLink.Material is null then cast(substring( reference_bom.ChangeRecordReference, 1, 40) as matnr)
               else cast(BOMLink.Material as matnr)
               end                                                      as Material,

             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             case
              when BOMLink.Plant is null then  cast(substring( reference_bom.ChangeRecordReference, 41, 4) as werks_d)
              else cast(BOMLink.Plant as werks_d)
              end                                                       as Plant,

             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             case
              when BOMLink.BillOfMaterialVariantUsage is null then cast (substring( reference_bom.ChangeRecordReference, 45, 1) as stlan)
              else cast(BOMLink.BillOfMaterialVariantUsage as stlan)
              end                                                       as BillOfMaterialVariantUsage,

             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             case
              when BOMLink.BillOfMaterialVariant is null then cast(substring( reference_bom.ChangeRecordReference, 46, 2) as stalt)
              else cast(BOMLink.BillOfMaterialVariant as stalt)

              end                                                       as BillOfMaterialVariant,
              
             BOMLink.SalesOrder                                         as SalesOrder,
             BOMLink.SalesOrderItem                                     as SalesOrderItem,
             reference_bom.ChangeRecordUUID,

             reference_bom.ChangeRecordReferenceType,
             reference_bom.ChangeRecordReferenceSubtype,
             reference_bom.ChangeRecordReference,
             reference_bom.ParentChangeRecordRefUUID,
             reference_bom.IsMainReference,
             //             BOMLink.BillOfMaterialCategory,

             cast(reference_bom.ChgRecRefInternalKey1 as stlty)               as BillOfMaterialCategory,
             reference_bom.ChangeNumber,
             @Semantics.user.createdBy: true
             reference_bom.CreatedByUser,
             reference_bom.CreationDateTime,
             @Semantics.user.lastChangedBy: true
             reference_bom.LastChangedByUser,
             reference_bom.LastChangeDateTime,
             ChgRecdReasonForChange,
             ExpdCompltnDte,
             ChgRecdAuthznGrpText,
             ChgRecdNmbrChgSts,


             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             reference_bom.ChangeRecordItemRelevance,
             reference_bom.ChangeRecordVirtualRefInd,

             //For BOM Navigation

             cast( BOMLink.BillOfMaterial as cs_stlnr preserving type ) as BillOfMaterial,
             reference_bom.ChangeRecordRefObjectUUID,
             @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
             reference_bom.ChangeRecordItemProcgStatus,
             @ObjectModel.readOnly: true
             reference_bom.ChgRecdCurrentItemProcgStatus,
             @ObjectModel.readOnly: true
             reference_bom.ChgRecdItmTgtSts,
             @ObjectModel.readOnly: true
             reference_bom.ChgRecdItmDSgntr,
             @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
             _ChangeRecordTP

}
where
  reference_bom.ChangeRecordReferenceType = 'OBM'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHANGERECORDREFORDERBOMBSC",
"I_SALESORDERBOMLINK"
],
"ASSOCIATED":
[
"E_CHANGERECORDREFORDERBOMBSC",
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/