R_ChgRecdRefFuncLocBOMTP

DDL: R_CHGRECDREFFUNCLOCBOMTP Type: view_entity TRANSACTIONAL Package: VDM_PLMB_CR

Chg Recd Obj Ref FuncLoc BOM

R_ChgRecdRefFuncLocBOMTP is a Transactional CDS View that provides data about "Chg Recd Obj Ref FuncLoc BOM" in SAP S/4HANA. It reads from 1 data source (I_ChgRecdRefFuncLocBOMBsc) and exposes 30 fields with key field ChangeRecordReferenceUUID. It has 3 associations to related views. Part of development package VDM_PLMB_CR.

Data Sources (1)

SourceAliasJoin Type
I_ChgRecdRefFuncLocBOMBsc reference_bom from

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_PlantStdVH _Plant $projection.Plant = _Plant.Plant
[0..1] I_BillOfMaterialUsage _BillOfMaterialVariantUsage $projection.BillOfMaterialVariantUsage = _BillOfMaterialVariantUsage.BillOfMaterialVariantUsage and _BillOfMaterialVariantUsage.Language = $session.system_language
[1..1] R_ChangeRecordHeader _ChangeRecord $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Chg Recd Obj Ref FuncLoc BOM view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MIXED view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
VDM.viewType #TRANSACTIONAL view

Fields (30)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID I_ChgRecdRefFuncLocBOMBsc ChangeRecordReferenceUUID
Plantaswerks_dendasPlant
ChangeRecordUUID I_ChgRecdRefFuncLocBOMBsc ChangeRecordUUID
ChangeRecordReferenceType I_ChgRecdRefFuncLocBOMBsc ChangeRecordReferenceType
ChangeRecordReferenceSubtype I_ChgRecdRefFuncLocBOMBsc ChangeRecordReferenceSubtype
ChangeRecordReference I_ChgRecdRefFuncLocBOMBsc ChangeRecordReference
ParentChangeRecordRefUUID I_ChgRecdRefFuncLocBOMBsc ParentChangeRecordRefUUID
IsMainReference I_ChgRecdRefFuncLocBOMBsc IsMainReference
BillOfMaterialCategory BOMLink BillOfMaterialCategory
ChgRecdReasonForChange I_ChgRecdRefFuncLocBOMBsc ChgRecdReasonForChange
ExpdCompltnDte I_ChgRecdRefFuncLocBOMBsc ExpdCompltnDte
ChgRecdAuthznGrpText I_ChgRecdRefFuncLocBOMBsc ChgRecdAuthznGrpText
ChgRecdNmbrChgSts I_ChgRecdRefFuncLocBOMBsc ChgRecdNmbrChgSts
ChangeNumber I_ChgRecdRefFuncLocBOMBsc ChangeNumber
CreatedByUser I_ChgRecdRefFuncLocBOMBsc CreatedByUser
CreationDateTime I_ChgRecdRefFuncLocBOMBsc CreationDateTime
LastChangedByUser I_ChgRecdRefFuncLocBOMBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefFuncLocBOMBsc LastChangeDateTime
ChangeRecordType _ChangeRecord ChangeRecordType
ChangeRecordItemRelevance I_ChgRecdRefFuncLocBOMBsc ChangeRecordItemRelevance
ChangeRecordVirtualRefInd I_ChgRecdRefFuncLocBOMBsc ChangeRecordVirtualRefInd
BillOfMaterial
ChangeRecordRefObjectUUID I_ChgRecdRefFuncLocBOMBsc ChangeRecordRefObjectUUID
ChangeRecordItemProcgStatus I_ChgRecdRefFuncLocBOMBsc ChangeRecordItemProcgStatus
ChgRecdCurrentItemProcgStatus I_ChgRecdRefFuncLocBOMBsc ChgRecdCurrentItemProcgStatus
ChgRecdItmTgtSts I_ChgRecdRefFuncLocBOMBsc ChgRecdItmTgtSts
ChgRecdItmDSgntr I_ChgRecdRefFuncLocBOMBsc ChgRecdItmDSgntr
_Plant _Plant
_BillOfMaterialVariantUsage _BillOfMaterialVariantUsage
_ChangeRecord _ChangeRecord
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Chg Recd Obj Ref FuncLoc BOM'
@ObjectModel.usageType:{
 serviceQuality: #D,
 sizeCategory: #XXL,
 dataClass: #MIXED
}
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
@VDM.viewType:#TRANSACTIONAL

define root view entity R_ChgRecdRefFuncLocBOMTP 
  as select from I_ChgRecdRefFuncLocBOMBsc as reference_bom 
  left outer to one join  I_FunctionalLocBOMLink    as BOMLink on  reference_bom.ChgRecRefInternalKey1 = BOMLink.BillOfMaterialCategory
                                                                and reference_bom.ChgRecRefInternalKey2 = BOMLink.BillOfMaterial
                                                                and reference_bom.ChgRecRefInternalKey3 = BOMLink.BillOfMaterialVariant
  //association [0..1] to C_ChgRecdFuncLocBOMVH        as _ChangeRecordFuncLocBOMVH        on  $projection.FunctionalLocation         = _ChangeRecordFuncLocBOMVH.FunctionalLocation

                                                                                   // and $projection.Plant                      = _ChangeRecordFuncLocBOMVH.Plant

                                                                                   // and $projection.BillOfMaterialVariantUsage = _ChangeRecordFuncLocBOMVH.BillOfMaterialVariantUsage

                                                                                   // and $projection.BillOfMaterialVariant      = _ChangeRecordFuncLocBOMVH.BillOfMaterialVariant


  association [0..1] to I_PlantStdVH                 as _Plant                      on  $projection.Plant = _Plant.Plant

  association [0..1] to I_BillOfMaterialUsage        as _BillOfMaterialVariantUsage on  $projection.BillOfMaterialVariantUsage = _BillOfMaterialVariantUsage.BillOfMaterialVariantUsage
                                                                                    and _BillOfMaterialVariantUsage.Language   = $session.system_language

  //association [1..1] to C_ChgRecdRlvnceFunLocBOMVH   as _ChangeRecordItemRelVH      on  $projection.ChangeRecordItemRelevance = _ChangeRecordItemRelVH.ChangeRecordItemRelevance

                                                                                    //and $projection.changerecordtype          = _ChangeRecordItemRelVH.ChangeRecordType

  //association [0..1] to C_ChangeRecdDigSignStatusVH  as _DigSignStatusText          on  $projection.ChgRecdItmDSgntr = _DigSignStatusText.ChgRecdDigitalSignatureStatus

  
  association [1..1] to R_ChangeRecordHeader     as _ChangeRecord        on  $projection.ChangeRecordUUID = _ChangeRecord.ChangeRecordUUID
  
{
  key        reference_bom.ChangeRecordReferenceUUID,

             case
               when BOMLink.FunctionalLocation is null then cast(substring( reference_bom.ChangeRecordReference, 1, 30) as tplnr)
               else cast(BOMLink.FunctionalLocation as tplnr)
               end                                                      as FunctionalLocation,

             case
              when BOMLink.Plant is null then  cast(substring( reference_bom.ChangeRecordReference, 31, 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, 35, 1) as stlan)
              else cast(BOMLink.BillOfMaterialVariantUsage as stlan)
              end                                                       as BillOfMaterialVariantUsage,

             
             case
              when BOMLink.BillOfMaterialVariant is null then cast(substring( reference_bom.ChangeRecordReference, 36, 2) as stalt)
              else cast(BOMLink.BillOfMaterialVariant as stalt)

              end                                                       as BillOfMaterialVariant,

             reference_bom.ChangeRecordUUID,

             reference_bom.ChangeRecordReferenceType,
             reference_bom.ChangeRecordReferenceSubtype,
             reference_bom.ChangeRecordReference,
             reference_bom.ParentChangeRecordRefUUID,
             reference_bom.IsMainReference,
             BOMLink.BillOfMaterialCategory,
             reference_bom.ChgRecdReasonForChange,
             reference_bom.ExpdCompltnDte,
             reference_bom.ChgRecdAuthznGrpText,
             reference_bom.ChgRecdNmbrChgSts,
             reference_bom.ChangeNumber,
             @Semantics.user.createdBy: true
             reference_bom.CreatedByUser,
             reference_bom.CreationDateTime,
             @Semantics.user.lastChangedBy: true
             reference_bom.LastChangedByUser,
             reference_bom.LastChangeDateTime,
             _ChangeRecord.ChangeRecordType,

             //@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,
             reference_bom.ChangeRecordItemProcgStatus,
             //@ObjectModel.readOnly: true

             reference_bom.ChgRecdCurrentItemProcgStatus,
             //@ObjectModel.readOnly: true

             reference_bom.ChgRecdItmTgtSts,
             //@ObjectModel.readOnly: true

             reference_bom.ChgRecdItmDSgntr,
             //_ChangeRecordFuncLocBOMVH,

             _Plant,
             _BillOfMaterialVariantUsage,
             //_ChangeRecordItemRelVH,

             //_DigSignStatusText,

             _ChangeRecord
             
               
}
where
  reference_bom.ChangeRecordReferenceType = 'FBM'