I_ChangeRecordReferenceBOMTP_2

DDL: I_CHANGERECORDREFERENCEBOMTP_2 SQL: ICHGRECREFBOMTP2 Type: view TRANSACTIONAL

Change Record Reference Object BOM

I_ChangeRecordReferenceBOMTP_2 is a Transactional CDS View that provides data about "Change Record Reference Object BOM" in SAP S/4HANA. It reads from 1 data source (I_ChgRecdRefBOM) and exposes 21 fields with key field ChangeRecordReferenceUUID. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChgRecdRefBOM reference_bom from

Associations (1)

CardinalityTargetAliasCondition
[0..1] E_ChgRecdRefBOMBsc _BOMExtension $projection.ChangeRecordReferenceUUID = _BOMExtension.ChangeRecordReferenceUUID

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICHGRECREFBOMTP2 view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Change Record Reference Object BOM view
VDM.viewType #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #XXL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (21)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID ChangeRecordReferenceUUID
Material I_ChgRecdRefBOM Material
Plant I_ChgRecdRefBOM Plant
BillOfMaterialVariantUsage I_ChgRecdRefBOM BillOfMaterialVariantUsage
BillOfMaterialVariant I_ChgRecdRefBOM BillOfMaterialVariant
ChangeRecordUUID ChangeRecordUUID
ChangeRecord ChangeRecord
_ChangeRecordAPITP _ChangeRecordAPITP
ChangeRecordReferenceType ChangeRecordReferenceType
ChangeRecordReferenceSubtype ChangeRecordReferenceSubtype
ChangeRecordReference ChangeRecordReference
ParentChangeRecordRefUUID ParentChangeRecordRefUUID
IsMainReference IsMainReference
CreatedByUser I_ChgRecdRefBOM CreatedByUser
CreationDateTime I_ChgRecdRefBOM CreationDateTime
LastChangedByUser I_ChgRecdRefBOM LastChangedByUser
ChangeRecordItemProcgStatus ChangeRecordItemProcgStatus
ChangeRecordItemRelevance ChangeRecordItemRelevance
ChangeRecordVirtualRefInd ChangeRecordVirtualRefInd
BillOfMaterial BillOfMaterial
ChangeRecordRefObjectUUID I_ChgRecdRefBOM ChangeRecordRefObjectUUID
@AbapCatalog.sqlViewName: 'ICHGRECREFBOMTP2'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE

@EndUserText.label: 'Change Record Reference Object BOM'
@VDM.viewType: #TRANSACTIONAL
@ObjectModel: {
semanticKey: [ 'Material','Plant','BillOfMaterialVariantUsage','BillOfMaterialVariant']
//                writeDraftPersistence: 'PLMCRREFBOM_D',

//               createEnabled,

//               deleteEnabled,

//              updateEnabled

              }

@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #XXL}
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
define view I_ChangeRecordReferenceBOMTP_2
  as select from           I_ChgRecdRefBOM as reference_bom
//    left outer to one join I_MaterialBOMLink  as BOMLink on  reference_bom.Plant                 = BOMLink.Plant

//                                                         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 [1..1] to I_CHANGERECORDBehvTP      as _ChangeRecordAPITP on $projection.ChangeRecordUUID = _ChangeRecordAPITP.ChangeRecordUUID

  association        to parent I_ChangeRecordTP_2 as _ChangeRecordAPITP on $projection.ChangeRecordUUID = _ChangeRecordAPITP.ChangeRecordUUID
  association [0..1] to E_ChgRecdRefBOMBsc        as _BOMExtension      on $projection.ChangeRecordReferenceUUID = _BOMExtension.ChangeRecordReferenceUUID

{

  key        ChangeRecordReferenceUUID,
             reference_bom.Material,
             reference_bom.Plant, 
             reference_bom.BillOfMaterialVariantUsage,
             reference_bom.BillOfMaterialVariant,
//             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,

//

//

//             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,

//

//             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,

//

//             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,


             ChangeRecordUUID,
             ChangeRecord,
             _ChangeRecordAPITP,
             ChangeRecordReferenceType,
             ChangeRecordReferenceSubtype,
             ChangeRecordReference,
             ParentChangeRecordRefUUID,
             IsMainReference,

             @Semantics.user.createdBy: true
             reference_bom.CreatedByUser,
             reference_bom.CreationDateTime,
             @Semantics.user.lastChangedBy: true
             reference_bom.LastChangedByUser,
             case
             when LastChangeDateTime = fltp_to_dec( 0.00 as timestampl )
             then fltp_to_dec( 19720401000000.00 as timestampl )
             else LastChangeDateTime
             end   as LastChangeDateTime,
             ChangeRecordItemProcgStatus,
             ChangeRecordItemRelevance,
             ChangeRecordVirtualRefInd,

             //For BOM Navigation

             BillOfMaterial,
             reference_bom.ChangeRecordRefObjectUUID
             //            @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]

             //            _ChangeRecordTP

             //@ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]

             //_ChangeRecordAPITP


}
where
  ChangeRecordReferenceType = 'BOM'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHGRECDREFBOM"
],
"ASSOCIATED":
[
"E_CHGRECDREFBOMBSC",
"I_CHANGERECORDTP_2"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/