I_ChgRecdRefVarBOMTP

DDL: I_CHGRECDREFVARBOMTP SQL: ICRREFVARBMTP Type: view TRANSACTIONAL

Chg Recd Ref VAR BOM Transactional - TP

I_ChgRecdRefVarBOMTP is a Transactional CDS View that provides data about "Chg Recd Ref VAR BOM Transactional - TP" in SAP S/4HANA. It reads from 1 data source (I_ChgRecdRefVarBOMBsc) and exposes 28 fields with key field ChangeRecordReferenceUUID. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChgRecdRefVarBOMBsc reference_bom from

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_ChangeRecordDraftTP _ChangeRecordTP $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICRREFVARBMTP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Chg Recd Ref VAR BOM Transactional - TP view
VDM.viewType #TRANSACTIONAL view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.writeDraftPersistence PLMCRREFVARBOM_D view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #XXL view

Fields (28)

KeyFieldSource TableSource FieldDescription
KEY ChangeRecordReferenceUUID ChangeRecordReferenceUUID
MaterialasmatnrendasMaterial
Plantaswerks_dendasPlant
ChangeRecordUUID ChangeRecordUUID
ChangeRecordReferenceType ChangeRecordReferenceType
ChangeRecordReferenceSubtype ChangeRecordReferenceSubtype
ChangeRecordReference ChangeRecordReference
ParentChangeRecordRefUUID ParentChangeRecordRefUUID
IsMainReference IsMainReference
BillOfMaterialCategory BillOfMaterialCategory
ChgRecdReasonForChange ChgRecdReasonForChange
ExpdCompltnDte ExpdCompltnDte
ChgRecdAuthznGrpText ChgRecdAuthznGrpText
ChgRecdNmbrChgSts ChgRecdNmbrChgSts
ChangeNumber I_ChgRecdRefVarBOMBsc ChangeNumber
CreatedByUser I_ChgRecdRefVarBOMBsc CreatedByUser
CreationDateTime I_ChgRecdRefVarBOMBsc CreationDateTime
LastChangedByUser I_ChgRecdRefVarBOMBsc LastChangedByUser
LastChangeDateTime I_ChgRecdRefVarBOMBsc LastChangeDateTime
ChangeRecordItemRelevance ChangeRecordItemRelevance
ChangeRecordVirtualRefInd ChangeRecordVirtualRefInd
BillOfMaterial
ChangeRecordRefObjectUUID I_ChgRecdRefVarBOMBsc ChangeRecordRefObjectUUID
ChangeRecordItemProcgStatus ChangeRecordItemProcgStatus
ChgRecdCurrentItemProcgStatus I_ChgRecdRefVarBOMBsc ChgRecdCurrentItemProcgStatus
ChgRecdItmTgtSts ChgRecdItmTgtSts
ChgRecdItmDSgntr ChgRecdItmDSgntr
_ChangeRecordTP _ChangeRecordTP
@AbapCatalog.sqlViewName: 'ICRREFVARBMTP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Chg Recd Ref VAR BOM Transactional - TP'
@VDM.viewType: #TRANSACTIONAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
semanticKey: [ 'Material','Plant','BillOfMaterialVariantUsage','BillOfMaterialVariant'],
                writeDraftPersistence: 'PLMCRREFVARBOM_D',
                createEnabled,
                deleteEnabled,
                updateEnabled
              }

@ObjectModel.usageType: {serviceQuality: #C,
                         dataClass: #MIXED,
                         sizeCategory: #XXL}
define view I_ChgRecdRefVarBOMTP
  as select from           I_ChgRecdRefVarBOMBsc as reference_bom
    left outer to one join I_MaterialBOMLink     as BOMLink on  reference_bom.ChgRecRefInternalKey1 = BOMLink.BillOfMaterialCategory
                                                            and reference_bom.ChgRecRefInternalKey2 = BOMLink.BillOfMaterial
                                                            and reference_bom.ChgRecRefInternalKey3 = BOMLink.BillOfMaterialVariant
                                                            and reference_bom.ChgRecRefInternalKey4 = BOMLink.Material

  association [1..1] to I_ChangeRecordDraftTP as _ChangeRecordTP on $projection.ChangeRecordUUID = _ChangeRecordTP.ChangeRecordUUID
  //association [0..1] to E_ChgRecdRefEquipBOMBsc as _EQBOMExtension on $projection.ChangeRecordReferenceUUID = _EQBOMExtension.ChangeRecordReferenceUUID


{

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

             ChangeRecordUUID,

             ChangeRecordReferenceType,
             ChangeRecordReferenceSubtype,
             ChangeRecordReference,
             ParentChangeRecordRefUUID,
             IsMainReference,
             BillOfMaterialCategory,
             ChgRecdReasonForChange,
             ExpdCompltnDte,
             ChgRecdAuthznGrpText,
             ChgRecdNmbrChgSts,

             reference_bom.ChangeNumber,
             @Semantics.user.createdBy: true
             reference_bom.CreatedByUser,
             reference_bom.CreationDateTime,
             @Semantics.user.lastChangedBy: true
             reference_bom.LastChangedByUser,
             reference_bom.LastChangeDateTime,

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

             //For BOM Navigation

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

}
where
      ChangeRecordReferenceType    = 'VBM'
  and BOMLink.IsConfiguredMaterial = 'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHGRECDREFVARBOMBSC",
"I_MATERIALBOMLINK"
],
"ASSOCIATED":
[
"I_CHANGERECORDDRAFTTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/