P_BOMItemChanges

DDL: P_BOMITEMCHANGES SQL: PBOMITEMCHANGES Type: view BASIC

P_BOMItemChanges is a Basic CDS View in SAP S/4HANA. It reads from 8 data sources and exposes 34 fields with key fields BillOfMaterial, BillOfMaterialCategory, BillOfMaterialVariant, EngineeringChangeDocument, BillOfMaterialVersion.

Data Sources (8)

SourceAliasJoin Type
I_ChangeMaster aenr inner
I_ChangeMaster aenr inner
I_ChangeMaster aenr inner
stko_draft_v2 HeaderDraftChanges inner
stpo ItemChanges inner
stpo ItemChanges inner
I_SalesOrderBOMLink kdst inner
I_MaterialBOMLink mast inner

Annotations (7)

NameValueLevelField
AbapCatalog.sqlViewName PBOMITEMCHANGES view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.private true view
VDM.viewType #BASIC view
AccessControl.authorizationCheck #NOT_REQUIRED view

Fields (34)

KeyFieldSource TableSource FieldDescription
KEY BillOfMaterial stpo stlnr
KEY BillOfMaterialCategory stpo stlty
KEY BillOfMaterialVariant ItemHistory stlal
KEY EngineeringChangeDocument ItemHistory aennr
KEY BillOfMaterialVersion ItemHistory bom_versn
KEY Material I_MaterialBOMLink Material
KEY Plant I_MaterialBOMLink Plant
KEY BillOfMaterialVariantUsage I_MaterialBOMLink BillOfMaterialVariantUsage
ChangeNumberStatus I_ChangeMaster ChangeNumberStatus
ChangeNumberValidFromDate I_ChangeMaster ChangeNumberValidFromDate
ChangeNumberCreatedByUser I_ChangeMaster ChangeNumberCreatedByUser
stlnrasBillOfMaterial
KEY BillOfMaterialCategory stpo stlty
KEY BillOfMaterialVariant ItemHistory stlal
KEY EngineeringChangeDocument ItemHistory aennr
KEY BillOfMaterialVersion ItemHistory bom_versn
KEY Material I_SalesOrderBOMLink Material
KEY Plant I_SalesOrderBOMLink Plant
KEY BillOfMaterialVariantUsage I_SalesOrderBOMLink BillOfMaterialVariantUsage
ChangeNumberStatus I_ChangeMaster ChangeNumberStatus
ChangeNumberValidFromDate I_ChangeMaster ChangeNumberValidFromDate
ChangeNumberCreatedByUser I_ChangeMaster ChangeNumberCreatedByUser
billofmaterialasBillOfMaterial
KEY BillOfMaterialCategory ItemDraftChanges billofmaterialcategory
KEY BillOfMaterialVariant ItemDraftChanges billofmaterialvariantforedit
KEY EngineeringChangeDocument ItemDraftChanges engineeringchangedocument
KEY BillOfMaterialVersion ItemDraftChanges billofmaterialversionforedit
KEY Material stko_draft_v2 materialforedit
KEY Plant stko_draft_v2 plantforedit
KEY BillOfMaterialVariantUsage stko_draft_v2 billofmaterialvariantusage
ChangeNumberStatus I_ChangeMaster ChangeNumberStatus
ChangeNumberValidFromDate I_ChangeMaster ChangeNumberValidFromDate
ChangeNumberCreatedByUser I_ChangeMaster ChangeNumberCreatedByUser
ChangeNumberCreationDate I_ChangeMaster ChangeNumberCreationDate
@AbapCatalog.sqlViewName: 'PBOMITEMCHANGES'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.private: true
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #NOT_REQUIRED

define view P_BOMItemChanges as select distinct from stas as ItemHistory
    inner join   I_MaterialBOMLink as mast        on  ItemHistory.stlal = mast.BillOfMaterialVariant
                                                  and ItemHistory.stlnr = mast.BillOfMaterial
    inner join   stpo              as ItemChanges on  ItemChanges.stlnr = ItemHistory.stlnr
                                                  and ItemChanges.stlkn = ItemHistory.stlkn
                                                  and ItemChanges.stlty = ItemHistory.stlty
    inner join   I_ChangeMaster    as aenr        on ItemHistory.aennr = aenr.ChangeNumber
{
  key ItemChanges.stlnr     as BillOfMaterial,
  key ItemChanges.stlty     as BillOfMaterialCategory,
  key ItemHistory.stlal     as BillOfMaterialVariant,
  key ItemHistory.aennr     as EngineeringChangeDocument,
  key ItemHistory.bom_versn as BillOfMaterialVersion,
  key mast.Material,
  key mast.Plant,
  key mast.BillOfMaterialVariantUsage,
      aenr.ChangeNumberStatus,
      aenr.ChangeNumberValidFromDate,
      aenr.ChangeNumberCreatedByUser,
      aenr.ChangeNumberCreationDate
}
where
      ItemChanges.stlty = 'M'
  and ItemHistory.stlty = 'M'

//Code added to support Sales Order BOM 

union all select distinct from stas              as ItemHistory
    inner join   I_SalesOrderBOMLink as kdst      on  ItemHistory.stlal = kdst.BillOfMaterialVariant
                                                  and ItemHistory.stlnr = kdst.BillOfMaterial
    inner join   stpo              as ItemChanges on  ItemChanges.stlnr = ItemHistory.stlnr
                                                  and ItemChanges.stlkn = ItemHistory.stlkn
                                                  and ItemChanges.stlty = ItemHistory.stlty
    inner join   I_ChangeMaster    as aenr        on ItemHistory.aennr = aenr.ChangeNumber
{
  key ItemChanges.stlnr     as BillOfMaterial,
  key ItemChanges.stlty     as BillOfMaterialCategory,
  key ItemHistory.stlal     as BillOfMaterialVariant,
  key ItemHistory.aennr     as EngineeringChangeDocument,
  key ItemHistory.bom_versn as BillOfMaterialVersion,
  key kdst.Material,
  key kdst.Plant,
  key kdst.BillOfMaterialVariantUsage,
      aenr.ChangeNumberStatus,
      aenr.ChangeNumberValidFromDate,
      aenr.ChangeNumberCreatedByUser,
      aenr.ChangeNumberCreationDate
}
where
      ItemChanges.stlty = 'K'
  and ItemHistory.stlty = 'K'
  
union all select distinct from stpo_draft_v2  as ItemDraftChanges
  inner join          I_ChangeMaster as aenr on ItemDraftChanges.engineeringchangedocument = aenr.ChangeNumber
  inner join          stko_draft_v2 as  HeaderDraftChanges  on  ItemDraftChanges.parentdraftuuid = HeaderDraftChanges.draftuuid
{
  key ItemDraftChanges.billofmaterial             as BillOfMaterial,
  key ItemDraftChanges.billofmaterialcategory     as BillOfMaterialCategory,
  key ItemDraftChanges.billofmaterialvariantforedit      as BillOfMaterialVariant,
  key ItemDraftChanges.engineeringchangedocument  as EngineeringChangeDocument,
  key ItemDraftChanges.billofmaterialversionforedit      as BillOfMaterialVersion,
  key HeaderDraftChanges.materialforedit  as Material,
  key HeaderDraftChanges.plantforedit as Plant,
  key HeaderDraftChanges.billofmaterialvariantusage as BillOfMaterialVariantUsage,
  aenr.ChangeNumberStatus,
      aenr.ChangeNumberValidFromDate,
      aenr.ChangeNumberCreatedByUser,
      aenr.ChangeNumberCreationDate
}

where
     HeaderDraftChanges.material <> ''
  or HeaderDraftChanges.material is not null
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHANGEMASTER",
"I_MATERIALBOMLINK",
"I_SALESORDERBOMLINK",
"STAS",
"STKO_DRAFT_V2",
"STPO",
"STPO_DRAFT_V2"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/