I_PhysInvtryDocItem
Physical Inventory Document Item
I_PhysInvtryDocItem (Basic)
Package: Explore, extend and adapt the SAP S/4HANA Cloud Public Edition with built-in and side-by-side extension capabilities.
PhysicalInventoryDocumentItem · Supply Chain
I_PhysInvtryDocItem is a Basic CDS View (Dimension) that provides data about "Physical Inventory Document Item" in SAP S/4HANA. It reads from 1 data source (iseg) and exposes 87 fields with key fields FiscalYear, PhysicalInventoryDocument, PhysicalInventoryDocumentItem. It has 32 associations to related views. Part of development package MM_IM_VDM_PI.
SAP API Hub
| Category | Basic |
|---|---|
| State | C1 |
| Line of Business | Supply Chain |
| Application Component | MM-IM-VDM-PI-2CL |
| Capabilities | Data Source for Data Extraction,Association Target for Defining CDS Entities,Data Source for Defining CDS Entities,Data Source in SQL Select,Analytical Dimension |
| Extensible (Key User) | Yes |
| Extensible (Developer) | No |
| Release State (Key User) | Released |
| Release State (Developer) | Released |
| Package | Supply Chain for SAP S/4HANA Cloud Public Edition |
| Description | <p>This CDS view provides the prerequisites for answering the following business questions:</p> <ul> <li><p>Which materials in a storage location were counted when, and with which differences?</p></li> <li><p>Who performed the count?</p></li> <li><p>Who approved the counted differences?</p></li> <li> <p>How big was the book quantity in the system before the count?</p> </li> <li> <p>If the inventory count of this item had to be re-done, which physical inventory document was used for this?</p> </li> </ul> |
Documentation
- Analytics with CDS Views — Build Analytics for S/4HANA Cloud Public Edition ABAP CDS views replicated to SAP Cloud Platform
- CDS Views on SAP Business Accelerator Hub — Explore SAP S/4HANA Cloud Public Edition CDS Views on SAP Business Accelerator Hub
- Create CDS View as API — Create CDS views in SAP S/4HANA Cloud Public Edition and consume them as APIs
- Custom CDS Views — Access data using a Custom Core Data Service view (Custom CDS view)
- Custom Communication Scenarios — Create custom communication scenarios to configure custom communication arrangement
- Key User Extensibility Tools — The Key User Extensibility Tools of S/4HANA
- SAP Extensibility Explorer for SAP S/4HANA Cloud Public Edition — Explore SAP S/4HANA Cloud Public Edition Extensibility options by leveraging the sample scenarios from SAP
- SAP S/4HANA Extensibility — SAP S/4HANA Extensibility Tutorial
- VDM View Types — The Virtual Data Model in SAP S/4HANA Cloud Public Edition
- View Browser — Search, browse and tag CDS Views
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| iseg | iseg | from |
Associations (32)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_Material | _Material | $projection.Material = _Material.Material |
| [0..1] | I_Product | _Product | $projection.Material = _Product.Product |
| [0..1] | I_ProductPlant | _ProductPlant | $projection.Material = _ProductPlant.Product and $projection.Plant = _ProductPlant.Plant |
| [0..1] | I_ProductPlantBasic | _ProductPlantBasic | $projection.Material = _ProductPlantBasic.Product and $projection.Plant = _ProductPlantBasic.Plant |
| [0..1] | I_ProductStorageLocation | _ProductStorageLocation | $projection.Material = _ProductStorageLocation.Product and $projection.Plant = _ProductStorageLocation.Plant and $projection.StorageLocation = _ProductStorageLocation.StorageLocation |
| [0..1] | I_BatchPlant | _BatchPlant | $projection.Material = _BatchPlant.Material and $projection.Plant = _BatchPlant.Plant and $projection.Batch = _BatchPlant.Batch |
| [0..1] | I_Material | _CrossPlantConfigurableMatl | $projection.CrossPlantConfigurableMaterial = _CrossPlantConfigurableMatl.Material |
| [0..1] | I_Product | _CrossPlantConfigurableProd | $projection.CrossPlantConfigurableMaterial = _CrossPlantConfigurableProd.Product |
| [0..1] | I_User | _LastChangeUser | $projection.LastChangeUser = _LastChangeUser.UserID |
| [0..1] | I_User | _CountedByUser | $projection.CountedByUser = _CountedByUser.UserID |
| [0..1] | I_User | _AdjustmentPostingMadeByUser | $projection.AdjustmentPostingMadeByUser = _AdjustmentPostingMadeByUser.UserID |
| [0..1] | I_UnitOfMeasure | _MaterialBaseUnit | $projection.MaterialBaseUnit = _MaterialBaseUnit.UnitOfMeasure |
| [0..1] | I_UnitOfMeasure | _UnitOfEntry | $projection.UnitOfEntry = _UnitOfEntry.UnitOfMeasure |
| [0..1] | I_Currency | _Currency | $projection.Currency = _Currency.Currency |
| [0..1] | I_Supplier | _Supplier | $projection.Supplier = _Supplier.Supplier |
| [1..1] | I_SupplierCompanyByPlant | _SupplierCompanyByPlant | $projection.Supplier = _SupplierCompanyByPlant.Supplier and $projection.Plant = _SupplierCompanyByPlant.Plant |
| [0..1] | I_Customer | _Customer | $projection.Customer = _Customer.Customer |
| [1..1] | I_CustomerCompanyByPlant | _CustomerCompanyByPlant | $projection.Customer = _CustomerCompanyByPlant.Customer and $projection.Plant = _CustomerCompanyByPlant.Plant |
| [0..1] | I_SalesOrder | _SalesOrder | $projection.SalesOrder = _SalesOrder.SalesOrder |
| [0..1] | I_SalesOrderItem | _SalesOrderItem | $projection.SalesOrder = _SalesOrderItem.SalesOrder and $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem |
| [0..1] | I_SalesOrderScheduleLine | _SalesOrderScheduleLine | $projection.SalesOrder = _SalesOrderScheduleLine.SalesOrder and $projection.SalesOrderItem = _SalesOrderScheduleLine.SalesOrderItem and $projection.ScheduleLine = _SalesOrderScheduleLine.ScheduleLine |
| [0..1] | I_Plant | _Plant | $projection.Plant = _Plant.Plant |
| [0..1] | I_StorageLocation | _StorageLocation | $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation |
| [0..*] | I_PhysInvtryStatusT | _PhysInvtryStatusT | $projection.PhysicalInventoryItemIsCounted = _PhysInvtryStatusT.PhysicalInventoryItemIsCounted and $projection.PhysInvtryDifferenceIsPosted = _PhysInvtryStatusT.PhysInvtryDifferenceIsPosted and $projection.PhysInvtryItemIsRecounted = _PhysInvtryStatusT.PhysInvtryItemIsRecounted and $projection.PhysInvtryItemIsDeleted = _PhysInvtryStatusT.PhysInvtryItemIsDeleted |
| [1..1] | I_PhysInvtryDocHeader | _PhysInvtryDocHeader | $projection.PhysicalInventoryDocument = _PhysInvtryDocHeader.PhysicalInventoryDocument and $projection.FiscalYear = _PhysInvtryDocHeader.FiscalYear |
| [0..1] | I_PhysInvtryStockType | _PhysicalInventoryStockType | $projection.PhysicalInventoryStockType = _PhysicalInventoryStockType.PhysicalInventoryStockType |
| [0..1] | I_InventorySpecialStockType | _InventorySpecialStockType | $projection.InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType |
| [0..1] | I_ProductCategory | _ProductCategory | $projection.ProductCategory = _ProductCategory.ProductCategory |
| [0..1] | I_WBSElementByInternalKey | _WBSElement | $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID and $projection.WBSElementInternalID <> '00000000' |
| [0..1] | I_WBSElementBasicData | _WBSElementBasic | $projection.WBSElementInternalID = _WBSElementBasic.WBSElementInternalID and $projection.WBSElementInternalID <> '00000000' |
| [1..1] | I_PhysInvtryDocFiscalYear | _PhysInvtryDocFiscalYear | $projection.FiscalYear = _PhysInvtryDocFiscalYear.FiscalYear |
| [0..1] | E_PhysInvtryDocumentItem | _Extension | $projection.FiscalYear = _Extension.FiscalYear and $projection.PhysicalInventoryDocument = _Extension.PhysicalInventoryDocument and $projection.PhysicalInventoryDocumentItem = _Extension.PhysicalInventoryDocumentItem |
Annotations (17)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Physical Inventory Document Item | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.representativeKey | PhysicalInventoryDocumentItem | view | |
| ObjectModel.sapObjectNodeType.name | PhysicalInventoryDocumentItem | view | |
| VDM.viewType | #BASIC | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.dataExtraction.enabled | true | view | |
| Analytics.dataExtraction.delta.changeDataCapture.automatic | true | view | |
| Analytics.internalName | #LOCAL | view | |
| Analytics.technicalName | IPIDOCITEM | view |
Fields (87)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | FiscalYear | iseg | gjahr | Settlement Year |
| KEY | PhysicalInventoryDocument | Physical Inventory Document | ||
| KEY | PhysicalInventoryDocumentItem | Physical Inventory Item Number | ||
| Material | iseg | matnr | Material Number | |
| Plant | iseg | werks | Receiving Plant | |
| StorageLocation | iseg | lgort | Storage Location | |
| Batch | iseg | charg | Chargeable Proc. | |
| chargendascharg_dasRealProductBatch | ||||
| ValuationType | _BatchPlant | InventoryValuationType | Valuation Type | |
| InventorySpecialStockType | Special Stock Type | |||
| PhysicalInventoryStockType | iseg | bstar | Stock Type (Physical Inventory) | |
| SalesOrder | iseg | kdauf | Sales Order Number | |
| SalesOrderItem | Item Number in Sales Order | |||
| ScheduleLine | Delivery Schedule for Sales Order | |||
| Supplier | Account Number of Supplier | |||
| Customer | Account Number of Customer | |||
| StockOwner | iseg | disub_owner | Owner of stock | |
| LastChangeUser | iseg | usnam | Changed By | |
| LastChangeDate | iseg | aedat | Last Changed On | |
| CountedByUser | iseg | usnaz | Counted By | |
| PhysicalInventoryLastCountDate | iseg | zldat | Date of Last Count | |
| AdjustmentPostingMadeByUser | Adjustment Posting Made By | |||
| PostingDate | Posting Date in the Document | |||
| PhysInventoryReferenceNumber | Physical Inventory Reference | |||
| PhysicalInventoryItemIsCounted | Item is Counted | |||
| PhysInvtryDifferenceIsPosted | Difference of Item is Posted | |||
| PhysInvtryItemIsRecounted | Item is Recounted | |||
| PhysInvtryItemIsDeleted | Item is Deleted | |||
| IsHandledInAltvUnitOfMsr | Without Unit of Measure Proposal | |||
| BookQtyBfrCountInMatlBaseUnit | iseg | buchm | Book Quantity Immediately Prior to Count | |
| PhysicalInventoryItemIsZero | Is Zero Count | |||
| Quantity | Counted Quantity | |||
| MaterialBaseUnit | iseg | meins | Base Unit of Measure | |
| QuantityInUnitOfEntry | Counted Quantity in Entry Unit | |||
| UnitOfEntry | Entry Unit | |||
| MaterialDocumentYear | Material Document Year | |||
| MaterialDocument | iseg | mblnr | Number of Material Document | |
| MaterialDocumentItem | Material Document Item | |||
| PhysInvtryRecountDocument | iseg | nblnr | Number of Recount Document | |
| DifferenceAmountInCoCodeCrcy | Value of Difference | |||
| Currency | Company Code Currency | |||
| CycleCountType | Cycle Count Type | |||
| WBSElementInternalID | iseg | ps_psp_pnr | Work Breakdown Structure Element (WBS Element) | |
| WBSElementInternalID_2 | WBS Element | |||
| SlsPrcAmtInclVATInCoCodeCrcy | iseg | vkwrt | Value at Sales Prices Including Value-Added Tax | |
| SlsPrcAmtExclVATInCoCodeCrcy | iseg | vkwra | Value at Sales Prices Excluding Value Added Tax | |
| DiffAmountOnCountEntryInCCCrcy | iseg | diwzl | Inventory Difference Value Upon Count Entry | |
| EnteredSlsAmtInCoCodeCrcy | Externally Entered Value Based on Sales Price | |||
| SlsPriceAmountInCoCodeCrcy | Sales Price Book Value | |||
| IsValueOnlyMaterial | Is Value-Only Material | |||
| PhysInvtryCtAmtInCoCodeCrcy | Counted Quantity Value | |||
| BookQtyAmountInCoCodeCrcy | Book Value | |||
| ProductCategory | Product Category | |||
| ReasonForPhysInvtryDifference | Difference Reason | |||
| CrossPlantConfigurableMaterial | Cross-Plant Configurable Material | |||
| PhysInvtryDiffIsDistributed | Is Difference Distributed | |||
| _Material | _Material | |||
| _Product | _Product | |||
| _ProductPlant | _ProductPlant | |||
| _ProductPlantBasic | _ProductPlantBasic | |||
| _BatchPlant | _BatchPlant | |||
| _ProductStorageLocation | _ProductStorageLocation | |||
| _CrossPlantConfigurableMatl | _CrossPlantConfigurableMatl | |||
| _CrossPlantConfigurableProd | _CrossPlantConfigurableProd | |||
| _LastChangeUser | _LastChangeUser | |||
| _CountedByUser | _CountedByUser | |||
| _AdjustmentPostingMadeByUser | _AdjustmentPostingMadeByUser | |||
| _MaterialBaseUnit | _MaterialBaseUnit | |||
| _Currency | _Currency | |||
| _Supplier | _Supplier | |||
| _Customer | _Customer | |||
| _SalesOrder | _SalesOrder | |||
| _SalesOrderItem | _SalesOrderItem | |||
| _SalesOrderScheduleLine | _SalesOrderScheduleLine | |||
| _Plant | _Plant | |||
| _StorageLocation | _StorageLocation | |||
| _UnitOfEntry | _UnitOfEntry | |||
| _PhysInvtryStatusT | _PhysInvtryStatusT | |||
| _PhysInvtryDocHeader | _PhysInvtryDocHeader | |||
| _PhysicalInventoryStockType | _PhysicalInventoryStockType | |||
| _InventorySpecialStockType | _InventorySpecialStockType | |||
| _ProductCategory | _ProductCategory | |||
| _WBSElement | _WBSElement | |||
| _WBSElementBasic | _WBSElementBasic | |||
| _PhysInvtryDocFiscalYear | _PhysInvtryDocFiscalYear | |||
| _SupplierCompanyByPlant | _SupplierCompanyByPlant | |||
| _CustomerCompanyByPlant | _CustomerCompanyByPlant |
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_PhysInvtryDocItem.
-- 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.
CREATE VIEW I_PhysInvtryDocItem AS
SELECT
iseg.gjahr AS FiscalYear,
cast(iseg.iblnr as pi_item_document preserving type) AS PhysicalInventoryDocument,
cast(iseg.zeili as pi_item_number preserving type) AS PhysicalInventoryDocumentItem,
iseg.matnr AS Material,
iseg.werks AS Plant,
iseg.lgort AS StorageLocation,
iseg.charg AS Batch,
cast( case when ( _ProductPlantBasic.ValuationCategory <> '' and _ProductPlantBasic.IsBatchManagementRequired = '' ) then ( '' ) else ( iseg.charg ) end as charg_d ) as RealProductBatch AS chargendascharg_dasRealProductBatch,
_BatchPlant.InventoryValuationType AS ValuationType,
cast(iseg.sobkz as nsdm_spcl_stock_type preserving type) AS InventorySpecialStockType,
iseg.bstar AS PhysicalInventoryStockType,
iseg.kdauf AS SalesOrder,
cast(iseg.kdpos as pi_sales_order_item preserving type) AS SalesOrderItem,
cast(iseg.kdein as pi_sales_order_sched_line preserving type) AS ScheduleLine,
cast(iseg.lifnr as mmim_supplier preserving type) AS Supplier,
cast(iseg.kunnr as mmim_customer preserving type) AS Customer,
iseg.disub_owner AS StockOwner,
iseg.usnam AS LastChangeUser,
iseg.aedat AS LastChangeDate,
iseg.usnaz AS CountedByUser,
iseg.zldat AS PhysicalInventoryLastCountDate,
cast(iseg.usnad as pi_item_adjustment_posting_usr preserving type) AS AdjustmentPostingMadeByUser,
cast(iseg.budat as mmim_postingdate preserving type) AS PostingDate,
cast(iseg.xblni as pi_item_reference preserving type ) AS PhysInventoryReferenceNumber,
cast(iseg.xzael as pi_is_item_counted preserving type) AS PhysicalInventoryItemIsCounted,
cast(iseg.xdiff as pi_is_item_difference_posted preserving type) AS PhysInvtryDifferenceIsPosted,
cast(iseg.xnzae as pi_is_item_recounted preserving type) AS PhysInvtryItemIsRecounted,
cast(iseg.xloek as pi_is_item_deleted preserving type) AS PhysInvtryItemIsDeleted,
cast(iseg.xamei as pi_item_is_handled_in_altv_uom preserving type) AS IsHandledInAltvUnitOfMsr,
iseg.buchm AS BookQtyBfrCountInMatlBaseUnit,
cast(iseg.xnull as pi_item_is_zero_count preserving type) AS PhysicalInventoryItemIsZero,
cast(iseg.menge as pi_item_cntd_qty preserving type) AS Quantity,
iseg.meins AS MaterialBaseUnit,
cast(iseg.erfmg as pi_item_qty_in_entry_uom preserving type) AS QuantityInUnitOfEntry,
cast(iseg.erfme as pi_item_entry_uom preserving type) AS UnitOfEntry,
cast(iseg.mjahr as nsdm_mjahr preserving type) AS MaterialDocumentYear,
iseg.mblnr AS MaterialDocument,
cast(iseg.zeile as nsdm_mblpo preserving type) AS MaterialDocumentItem,
iseg.nblnr AS PhysInvtryRecountDocument,
cast(iseg.dmbtr as pi_item_diff_value preserving type) AS DifferenceAmountInCoCodeCrcy,
cast(iseg.waers as nsdm_comp_code_currency preserving type) AS Currency,
cast(iseg.abcin as pi_item_cycle_count_type preserving type) AS CycleCountType,
iseg.ps_psp_pnr AS WBSElementInternalID,
cast ( iseg.ps_psp_pnr as ps_s4_pspnr ) AS WBSElementInternalID_2,
iseg.vkwrt AS SlsPrcAmtInclVATInCoCodeCrcy,
iseg.vkwra AS SlsPrcAmtExclVATInCoCodeCrcy,
iseg.diwzl AS DiffAmountOnCountEntryInCCCrcy,
cast(iseg.exvkw as pi_item_ext_value_sp preserving type) AS EnteredSlsAmtInCoCodeCrcy,
cast(iseg.buchw as pi_item_sp_of_book_qty preserving type) AS SlsPriceAmountInCoCodeCrcy,
cast(iseg.kwart as pi_item_is_value_only_mat preserving type) AS IsValueOnlyMaterial,
cast(iseg.wrtzl as pi_item_counted_qty_value preserving type) AS PhysInvtryCtAmtInCoCodeCrcy,
cast(iseg.wrtbm as pi_item_book_value preserving type) AS BookQtyAmountInCoCodeCrcy,
cast(iseg.attyp as prodcategory preserving type) AS ProductCategory,
cast(iseg.grund as pi_item_difference_reason preserving type) AS ReasonForPhysInvtryDifference,
cast(iseg.samat as pi_item_cross_plant_cnf_mat preserving type) AS CrossPlantConfigurableMaterial,
cast(iseg.xdispatch as pi_item_is_diff_distributed preserving type) AS PhysInvtryDiffIsDistributed
FROM iseg
LEFT OUTER JOIN I_Material AS _Material ON Material = _Material.Material -- association [0..1]
LEFT OUTER JOIN I_Product AS _Product ON Material = _Product.Product -- association [0..1]
LEFT OUTER JOIN I_ProductPlant AS _ProductPlant ON Material = _ProductPlant.Product AND Plant = _ProductPlant.Plant -- association [0..1]
LEFT OUTER JOIN I_ProductPlantBasic AS _ProductPlantBasic ON Material = _ProductPlantBasic.Product AND Plant = _ProductPlantBasic.Plant -- association [0..1]
LEFT OUTER JOIN I_ProductStorageLocation AS _ProductStorageLocation ON Material = _ProductStorageLocation.Product AND Plant = _ProductStorageLocation.Plant AND StorageLocation = _ProductStorageLocation.StorageLocation -- association [0..1]
LEFT OUTER JOIN I_BatchPlant AS _BatchPlant ON Material = _BatchPlant.Material AND Plant = _BatchPlant.Plant AND Batch = _BatchPlant.Batch -- association [0..1]
LEFT OUTER JOIN I_Material AS _CrossPlantConfigurableMatl ON CrossPlantConfigurableMaterial = _CrossPlantConfigurableMatl.Material -- association [0..1]
LEFT OUTER JOIN I_Product AS _CrossPlantConfigurableProd ON CrossPlantConfigurableMaterial = _CrossPlantConfigurableProd.Product -- association [0..1]
LEFT OUTER JOIN I_User AS _LastChangeUser ON LastChangeUser = _LastChangeUser.UserID -- association [0..1]
LEFT OUTER JOIN I_User AS _CountedByUser ON CountedByUser = _CountedByUser.UserID -- association [0..1]
LEFT OUTER JOIN I_User AS _AdjustmentPostingMadeByUser ON AdjustmentPostingMadeByUser = _AdjustmentPostingMadeByUser.UserID -- association [0..1]
LEFT OUTER JOIN I_UnitOfMeasure AS _MaterialBaseUnit ON MaterialBaseUnit = _MaterialBaseUnit.UnitOfMeasure -- association [0..1]
LEFT OUTER JOIN I_UnitOfMeasure AS _UnitOfEntry ON UnitOfEntry = _UnitOfEntry.UnitOfMeasure -- association [0..1]
LEFT OUTER JOIN I_Currency AS _Currency ON Currency = _Currency.Currency -- association [0..1]
LEFT OUTER JOIN I_Supplier AS _Supplier ON Supplier = _Supplier.Supplier -- association [0..1]
LEFT OUTER JOIN I_SupplierCompanyByPlant AS _SupplierCompanyByPlant ON Supplier = _SupplierCompanyByPlant.Supplier AND Plant = _SupplierCompanyByPlant.Plant -- association [1..1]
LEFT OUTER JOIN I_Customer AS _Customer ON Customer = _Customer.Customer -- association [0..1]
LEFT OUTER JOIN I_CustomerCompanyByPlant AS _CustomerCompanyByPlant ON Customer = _CustomerCompanyByPlant.Customer AND Plant = _CustomerCompanyByPlant.Plant -- association [1..1]
LEFT OUTER JOIN I_SalesOrder AS _SalesOrder ON SalesOrder = _SalesOrder.SalesOrder -- association [0..1]
LEFT OUTER JOIN I_SalesOrderItem AS _SalesOrderItem ON SalesOrder = _SalesOrderItem.SalesOrder AND SalesOrderItem = _SalesOrderItem.SalesOrderItem -- association [0..1]
LEFT OUTER JOIN I_SalesOrderScheduleLine AS _SalesOrderScheduleLine ON SalesOrder = _SalesOrderScheduleLine.SalesOrder AND SalesOrderItem = _SalesOrderScheduleLine.SalesOrderItem AND ScheduleLine = _SalesOrderScheduleLine.ScheduleLine -- association [0..1]
LEFT OUTER JOIN I_Plant AS _Plant ON Plant = _Plant.Plant -- 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_PhysInvtryStatusT AS _PhysInvtryStatusT ON PhysicalInventoryItemIsCounted = _PhysInvtryStatusT.PhysicalInventoryItemIsCounted AND PhysInvtryDifferenceIsPosted = _PhysInvtryStatusT.PhysInvtryDifferenceIsPosted AND PhysInvtryItemIsRecounted = _PhysInvtryStatusT.PhysInvtryItemIsRecounted AND PhysInvtryItemIsDeleted = _PhysInvtryStatusT.PhysInvtryItemIsDeleted -- association [0..*]
LEFT OUTER JOIN I_PhysInvtryDocHeader AS _PhysInvtryDocHeader ON PhysicalInventoryDocument = _PhysInvtryDocHeader.PhysicalInventoryDocument AND FiscalYear = _PhysInvtryDocHeader.FiscalYear -- association [1..1]
LEFT OUTER JOIN I_PhysInvtryStockType AS _PhysicalInventoryStockType ON PhysicalInventoryStockType = _PhysicalInventoryStockType.PhysicalInventoryStockType -- association [0..1]
LEFT OUTER JOIN I_InventorySpecialStockType AS _InventorySpecialStockType ON InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType -- association [0..1]
LEFT OUTER JOIN I_ProductCategory AS _ProductCategory ON ProductCategory = _ProductCategory.ProductCategory -- association [0..1]
LEFT OUTER JOIN I_WBSElementByInternalKey AS _WBSElement ON WBSElementInternalID = _WBSElement.WBSElementInternalID AND WBSElementInternalID <> '00000000' -- association [0..1]
LEFT OUTER JOIN I_WBSElementBasicData AS _WBSElementBasic ON WBSElementInternalID = _WBSElementBasic.WBSElementInternalID AND WBSElementInternalID <> '00000000' -- association [0..1]
LEFT OUTER JOIN I_PhysInvtryDocFiscalYear AS _PhysInvtryDocFiscalYear ON FiscalYear = _PhysInvtryDocFiscalYear.FiscalYear -- association [1..1]
LEFT OUTER JOIN E_PhysInvtryDocumentItem AS _Extension ON FiscalYear = _Extension.FiscalYear AND PhysicalInventoryDocument = _Extension.PhysicalInventoryDocument AND PhysicalInventoryDocumentItem = _Extension.PhysicalInventoryDocumentItem -- association [0..1]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA