Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view I_ProjMatComponentVersion.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: IPROJMATCOMPVER
CREATE VIEW I_ProjMatComponentVersion AS
SELECT
cast( vsresb_cn.vsnmr as ps_s4_vsnmr preserving type ) AS Version,
cast (vsresb_cn.rspos as ps_s4_rspos preserving type ) AS ReservationItem,
cast ((case when vsresb_cn.aufnr like '?!%' then NetworkActivityVersion.ProjectNetwork else vsresb_cn.aufnr end) as ps_s4_aufnr) AS ProjectNetwork,
cast (vsresb_cn.knttp as ps_s4_knttp) AS AccountAssignmentCategory,
cast (vsresb_cn.bwart as bwartwa) AS GoodsMovementType,
cast(vsresb_cn.ablad as ps_s4_ablad preserving type ) AS UnloadingPointName,
cast (vsresb_cn.banfn as ps_s4_banfn preserving type ) AS PurchaseRequisition,
cast (vsresb_cn.bnfpo as ps_s4_bnfpo) AS PurchaseRequisitionItem,
cast (vsresb_cn.rform as ps_s4_rform preserving type ) AS FormulaKey,
cast (vsresb_cn.sernr as ps_s4_sernr) AS ProductionSeries,
cast (vsresb_cn.nlfzv as ps_s4_cs_nlfzv) AS OperationLeadTimeOffset,
cast (vsresb_cn.nlfmv as ps_s4_cs_nlfmv) AS OperationLeadTimeOffsetUnit,
cast (vsresb_cn.kzmpf as ps_s4_kzmpf) AS RqmtDateIsEnteredManually,
cast (vsresb_cn.potx1 as ps_s4_potx1) AS BOMItemDescription,
cast (vsresb_cn.ekgrp as ekgrp) AS PurchasingGroup,
cast (vsresb_cn.kdauf as ps_s4_kdauf) AS SalesOrder,
cast(vsresb_cn.kdpos as ps_s4_kdpos) AS SalesOrderItem,
cast(vsresb_cn.lgort as ps_s4_lgort_d preserving type ) AS StorageLocation,
cast( NetworkActivityVersion.WBSElementInternalID as ps_s4_pspnr) AS WBSElementInternalID,
cast (vsresb_cn.saknr as saknr) AS GLAccount,
cast (vsresb_cn.sanka as ps_s4_ck_selkz ) AS MaterialCompIsCostRelevant,
cast (vsresb_cn.rgekz as rgekz) AS MatlCompIsMarkedForBackflush,
cast (vsresb_cn.schgt as schgt) AS IsBulkMaterialComponent,
cast (vsresb_cn.sobkz as sobkz) AS MaterialCompIsSpecialStock,
cast (vsresb_cn.txtps as txtps) AS MatlCompIsTextItem,
cast (vsresb_cn.xfehl as xfehl) AS MaterialComponentIsMissing,
cast (vsresb_cn.xloek as ps_s4_loevm ) AS MatlCompIsMarkedForDeletion,
cast (vsresb_cn.no_disp as no_disp_plus) AS MatlCompIsRelevantForMRP,
cast(vsresb_cn.wempf as ps_s4_wempf ) AS GoodsRecipientName,
cast (vsresb_cn.xwaok as xwaok) AS GoodsMovementIsAllowed,
cast (vsrsadd_cn.changeby as ps_s4_aenam) AS LastChangedByUser,
cast (vsrsadd_cn.changedat as ps_s4_aedat) AS LastChangeDate,
cast (vsrsadd_cn.creaby as ernam) AS CreatedByUser,
cast (vsrsadd_cn.creadat as erdat) AS CreationDate,
cast (vsrsadd_cn.emlif as emlif) AS Supplier,
NetworkActivityVersion._ProjectNetwork.ProjectNetworkDescription AS ProjectNetworkDescription,
cast(NetworkActivityVersion.Project as psb_bo_pspid_de preserving type ) AS Project,
cast ( vsresb_cn.bdter as ps_s4_bdter preserving type ) AS MatlCompRequirementDate,
cast (vsresb_cn.dbskz as dbskz) AS MaterialCompIsProcuredDirectly,
cast (vsresb_cn.dumps as dumps) AS MaterialComponentIsPhantomItem,
cast (vsresb_cn.flgex as flgex) AS MatlCompIsProcuredExternally,
cast(vsresb_cn.vornr as pt_vornr_receiver preserving type ) AS NetworkActivity,
cast (vsresb_cn.waers as waers) AS Currency,
cast (vsresb_cn.flmng as ps_s4_flmng) AS ShortfallQuantity,
cast (vsresb_cn.enmng as pph_enmng) AS WithdrawnQuantity,
cast (vsresb_cn.enmng as mmiv_quantity_received) AS ReceivedQuantity,
cast(vsresb_cn.bdmng as ps_s4_bdmng preserving type ) AS RequirementQuantityInBaseUnit,
cast (vsresb_cn.lifzt as ps_s4_lifzt) AS DeliveryDurationInDays,
case when vsresb_cn.erfme <> ' ' and vsresb_cn.erfme <> vsresb_cn.meins then case when vsresb_cn.vmeng = vsresb_cn.bdmng then case when vsresb_cn.bdmng is null then vsresb_cn.bdmng else vsresb_cn.erfmg end else case when vsresb_cn.umrez = 0 then cast(0 as abap.dec(15,3)) else cast(vsresb_cn.vmeng as abap.fltp) * ( cast(vsresb_cn.umren as abap.fltp) / cast(vsresb_cn.umrez as abap.fltp)) end end else cast(vsresb_cn.vmeng as vmeng) end as CommittedQuantity AS vmengasvmengendasCommittedQuantity,
vsresb_cn.bdmng - vsresb_cn.enmng AS OpenQuantity,
cast(vsresb_cn.postp as ps_s4_postp preserving type ) AS BOMItemCategory,
grpga.grpnr AS GroupingWBSElementInternalID,
NetworkActivityVersion.ProjectWithCodingMask AS ProjectWithCodingMask,
NetworkActivityVersion.ControllingArea AS ControllingArea,
vsresb_cn.rsnum AS Reservation,
vsresb_cn.rsart AS RecordType,
vsresb_cn.werks AS Plant,
vsresb_cn.matnr AS Material,
vsresb_cn.stlty AS BillOfMaterialCategory,
vsresb_cn.aennr AS ProjectObjectChangeNumber,
vsresb_cn.posnr AS BillOfMaterialItemNumber,
vsresb_cn.kzbws AS InventorySpecialStockValnType,
vsresb_cn.kzvbr AS ConsumptionPosting,
vsresb_cn.producttype AS ProductTypeCode,
vsresb_cn.startdate AS PerformancePeriodStartDate,
vsresb_cn.enddate AS PerformancePeriodEndDate,
vsresb_cn.serviceperformer AS ServicePerformer,
vsresb_cn.serviceduration AS LeanServiceDuration,
vsresb_cn.servicedurationunit AS LeanServiceDurationUnit,
vsresb_cn.lifnr AS Creditor,
vsresb_cn.meins AS BaseUnit,
vsresb_cn.objnr AS MaterialComponentObject,
vsresb_cn.kzear AS ReservationIsFinallyIssued,
vsresb_cn.lmeng AS MRPRequiredQuantityInBaseUnit,
vsresb_cn.vmeng AS ConfirmedAvailableQuantity,
vsresb_cn.gpreis AS MaterialComponentPrice,
vsresb_cn.enwrt AS WithdrawnQuantityAmount,
vsresb_cn.webaz AS GoodsReceiptDurationInDays,
vsresb_cn.peinh AS MaterialPriceUnitQty,
vsresb_cn.umren AS MaterialQtyToBaseQtyDnmntr,
vsresb_cn.umrez AS QuantityNumerator,
vsresb_cn.fldlogssupplyprocess AS FldLogsSupplyProcess,
vsresb_cn.fldlogsdelivisheldonshore AS FldLogsDelivIsHeldOnShore,
vsresb_cn.fldlogsversion AS FldLogsVersion,
vsrsadd_cn.overalllimitamount AS OverallLimitAmount,
vsrsadd_cn.expectedoveralllimitamount AS ExpectedOverallLimitAmount,
vsrsadd_cn.afnam AS RequisitionerUser,
vsrsadd_cn.fplnr AS BillingPlan,
_BillOfMaterial.Assembly AS BillOfMaterial,
_BillOfMaterial.AssemblyName AS BOMHeaderText,
_BillOfMaterial.BillOfMaterialCategory AS MaterialCompMainAssemblyCat,
_PlantName.PlantName AS PlantName,
_ProjMatBOMAssembly.Assembly AS Assembly,
_ProjMatBOMAssembly.AssemblyName AS AssemblyName
INNER JOIN I_NetworkActivityVersion AS NetworkActivityVersion ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN vsrsadd_cn ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN grpga ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_WBSElement AS _WBSGroupElement ON GroupingWBSElementInternalID = _WBSGroupElement.WBSElementInternalID -- association [1..1]
LEFT OUTER JOIN I_Plant AS _PlantName ON vsresb_cn.werks = _PlantName.Plant -- association [1..1]
LEFT OUTER JOIN I_ProjectNetwork AS _ProjectNetwork ON ProjectNetwork = _ProjectNetwork.ProjectNetwork -- association [0..1]
LEFT OUTER JOIN I_MaterialText AS _MaterialText ON Material = _MaterialText.Material AND _MaterialText.Language = $session.system_language -- association [0..1]
LEFT OUTER JOIN I_NetworkActivity AS _NetworkActivity ON ProjectNetwork = _NetworkActivity.ProjectNetwork AND NetworkActivity = _NetworkActivity.NetworkActivity -- association [0..1]
LEFT OUTER JOIN I_AccAssgnmtCategory AS _AccAssgnmtCategory ON AccountAssignmentCategory = _AccAssgnmtCategory.AccountAssignmentCategory -- association [0..1]
LEFT OUTER JOIN I_BillOfMaterialItemCategory AS _BillOfMaterialItemCategory ON BOMItemCategory = _BillOfMaterialItemCategory.BillOfMaterialItemCategory -- association [0..1]
LEFT OUTER JOIN I_InventorySpecialStockType AS _InventorySpecialStockType ON MaterialCompIsSpecialStock = _InventorySpecialStockType.InventorySpecialStockType -- association [0..1]
LEFT OUTER JOIN I_SpecialStockValuationName AS _SpecialStockValuationName ON InventorySpecialStockValnType = _SpecialStockValuationName.InventorySpecialStockValnType -- association [0..1]
LEFT OUTER JOIN I_StorageLocation AS _StorageLocation ON Plant = _StorageLocation.Plant AND StorageLocation = _StorageLocation.StorageLocation -- association [0..1]
LEFT OUTER JOIN I_Material AS _Material ON Material = _Material.Material -- association [1..1]
LEFT OUTER JOIN I_Supplier AS _Supplier ON Creditor = _Supplier.Supplier -- association [1..1]
LEFT OUTER JOIN I_ProjMatlProcurementType AS _ProjMatlProcurementType ON ProcurementType = _ProjMatlProcurementType.ProcurementType -- association [1..1]
LEFT OUTER JOIN I_ConsumptionPostingName AS _ConsumptionPostingName ON ConsumptionPosting = _ConsumptionPostingName.ConsumptionPosting -- association [1..1]
LEFT OUTER JOIN I_WBSElement AS _WBSElement ON WBSElementInternalID = _WBSElement.WBSElementInternalID -- association [0..1]
LEFT OUTER JOIN I_ProjMatBomCategory AS _ProjMatBomCategory ON BillOfMaterialCategory = _ProjMatBomCategory.BillOfMaterialCategory -- association [0..1]
LEFT OUTER JOIN I_ProjMatBomCategory AS _BillOfMaterialCategory ON MaterialCompMainAssemblyCat = _BillOfMaterialCategory.BillOfMaterialCategory -- association [0..1]
LEFT OUTER JOIN P_ProjMatBOMAssembly AS _ProjMatBOMAssembly ON vsresb_cn.stlty = _ProjMatBOMAssembly.BillOfMaterialCategory AND vsresb_cn.stlnr = _ProjMatBOMAssembly.BillOfMaterial AND vsresb_cn.stlal = _ProjMatBOMAssembly.BillOfMaterialVariant -- association [0..1]
LEFT OUTER JOIN P_ProjMatBOMAssembly AS _BillOfMaterial ON ( vsrsadd_cn.bstln = _BillOfMaterial.BillOfMaterial AND vsrsadd_cn.bstlt = _BillOfMaterial.BillOfMaterialCategory ) OR ( vsrsadd_cn.bstln = _BillOfMaterial.BillOfMaterial ) -- association [0..1]
LEFT OUTER JOIN E_ProjMatComponentVersion AS _Extension ON vsresb_cn.vsnmr = _Extension.Version AND vsresb_cn.rsnum = _Extension.Reservation AND vsresb_cn.rspos = _Extension.ReservationItem AND vsresb_cn.rsart = _Extension.RecordType -- association [1..1]
;