A_MaterialDocumentItem
Document Items
A_MaterialDocumentItem is a Composite CDS View that provides data about "Document Items" in SAP S/4HANA. It reads from 1 data source (I_GoodsMovementDocument) and exposes 86 fields with key fields MaterialDocumentYear, MaterialDocument, MaterialDocumentItem. It has 8 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_GoodsMovementDocument | I_GoodsMovementDocument | from |
Associations (8)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | A_MaterialDocumentHeader | _MaterialDocumentHeader | $projection.MaterialDocumentYear = _MaterialDocumentHeader.MaterialDocumentYear and $projection.MaterialDocument = _MaterialDocumentHeader.MaterialDocument |
| [1..1] | E_MaterialDocumentItem | _ProcessExtension | $projection.MaterialDocument = _ProcessExtension.MaterialDocument and $projection.MaterialDocumentYear = _ProcessExtension.MaterialDocumentYear and $projection.MaterialDocumentItem = _ProcessExtension.MaterialDocumentItem and _ProcessExtension.MaterialDocumentRecordType = 'MDOC' |
| [1..1] | E_MaterialDocumentItem_2 | _MaterialDocumentItemExtension | $projection.MaterialDocument = _MaterialDocumentItemExtension.MaterialDocument and $projection.MaterialDocumentYear = _MaterialDocumentItemExtension.MaterialDocumentYear and $projection.MaterialDocumentItem = _MaterialDocumentItemExtension.MaterialDocumentItem and _MaterialDocumentItemExtension.MaterialDocumentRecordType = 'MDOC' |
| [0..*] | A_SerialNumberMaterialDocument | _SerialNumbers | $projection.MaterialDocument = _SerialNumbers.MaterialDocument and $projection.MaterialDocumentItem = _SerialNumbers.MaterialDocumentItem and $projection.MaterialDocumentYear = _SerialNumbers.MaterialDocumentYear |
| [0..1] | A_Supplier | _AuthSupplier | $projection.Supplier = _AuthSupplier.Supplier |
| [0..1] | A_Customer | _AuthCustomer | $projection.Customer = _AuthCustomer.Customer |
| [0..1] | I_SupplierCompanyByPlant | _SupplierCompanyByPlant | $projection.Supplier = _SupplierCompanyByPlant.Supplier and $projection.Plant = _SupplierCompanyByPlant.Plant |
| [0..1] | I_CustomerCompanyByPlant | _CustomerCompanyByPlant | $projection.Customer = _CustomerCompanyByPlant.Customer and $projection.Plant = _CustomerCompanyByPlant.Plant |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.preserveKey | true | view | |
| AbapCatalog.sqlViewName | AMATDOCITEM | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Document Items | view | |
| VDM.viewType | #COMPOSITE | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.createEnabled | false | view | |
| ObjectModel.updateEnabled | false | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (86)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MaterialDocumentYear | MaterialDocumentYear | ||
| KEY | MaterialDocument | MaterialDocument | ||
| KEY | MaterialDocumentItem | MaterialDocumentItem | ||
| Material | Material | |||
| Plant | Plant | |||
| StorageLocation | StorageLocation | |||
| Batch | Batch | |||
| GoodsMovementType | GoodsMovementType | |||
| InventoryStockType | InventoryStockType | |||
| InventoryValuationType | InventoryValuationType | |||
| InventorySpecialStockType | InventorySpecialStockType | |||
| Supplier | Supplier | |||
| Customer | Customer | |||
| SalesOrder | SalesOrder | |||
| SalesOrderItem | SalesOrderItem | |||
| SalesOrderScheduleLine | SalesOrderScheduleLine | |||
| PurchaseOrder | PurchaseOrder | |||
| PurchaseOrderItem | PurchaseOrderItem | |||
| WBSElement | _WBSElement | WBSElement | ||
| ManufacturingOrder | ManufacturingOrder | |||
| ManufacturingOrderItem | ManufacturingOrderItem | |||
| GoodsMovementRefDocType | GoodsMovementRefDocType | |||
| GoodsMovementReasonCode | GoodsMovementReasonCode | |||
| Delivery | DeliveryDocument | |||
| DeliveryItem | DeliveryDocumentItem | |||
| AccountAssignmentCategory | AccountAssignmentCategory | |||
| CostCenter | CostCenter | |||
| ControllingArea | ControllingArea | |||
| CostObject | CostObject | |||
| GLAccount | GLAccount | |||
| FunctionalArea | FunctionalArea | |||
| ProfitabilitySegment | ProfitabilitySegment_2 | |||
| ProfitCenter | ProfitCenter | |||
| MasterFixedAsset | MasterFixedAsset | |||
| FixedAsset | FixedAsset | |||
| MaterialBaseUnit | MaterialBaseUnit | |||
| QuantityInBaseUnit | QuantityInBaseUnit | |||
| EntryUnit | EntryUnit | |||
| QuantityInEntryUnit | QuantityInEntryUnit | |||
| CompanyCodeCurrency | CompanyCodeCurrency | |||
| GdsMvtExtAmtInCoCodeCrcy | GdsMvtExtAmtInCoCodeCrcy | |||
| FiscalYear | FiscalYear | |||
| FiscalYearPeriod | FiscalYearPeriod | |||
| FiscalYearVariant | FiscalYearVariant | |||
| IssgOrRcvgMaterial | IssgOrRcvgMaterial | |||
| IssgOrRcvgBatch | IssgOrRcvgBatch | |||
| IssuingOrReceivingPlant | IssuingOrReceivingPlant | |||
| IssuingOrReceivingStorageLoc | IssuingOrReceivingStorageLoc | |||
| IssuingOrReceivingStockType | IssuingOrReceivingStockType | |||
| IssgOrRcvgSpclStockInd | IssgOrRcvgSpclStockInd | |||
| IssuingOrReceivingValType | IssuingOrReceivingValType | |||
| IsCompletelyDelivered | IsCompletelyDelivered | |||
| MaterialDocumentItemText | MaterialDocumentItemText | |||
| GoodsRecipientName | GoodsRecipientName | |||
| UnloadingPointName | UnloadingPointName | |||
| ShelfLifeExpirationDate | ShelfLifeExpirationDate | |||
| ManufactureDate | ManufactureDate | |||
| SerialNumbersAreCreatedAutomly | SerialNumbersAreCreatedAutomly | |||
| Reservation | Reservation | |||
| ReservationItem | ReservationItem | |||
| ReservationIsFinallyIssued | ReservationIsFinallyIssued | |||
| SpecialStockIdfgSalesOrder | SpecialStockIdfgSalesOrder | |||
| SpecialStockIdfgSalesOrderItem | SpecialStockIdfgSalesOrderItem | |||
| SpecialStockIdfgWBSElement | _SpecialStockIdfgWBSElement | WBSElement | ||
| IsAutomaticallyCreated | IsAutomaticallyCreated | |||
| MaterialDocumentLine | MaterialDocumentLine | |||
| MaterialDocumentParentLine | MaterialDocumentParentLine | |||
| HierarchyNodeLevel | HierarchyNodeLevel | |||
| GoodsMovementIsCancelled | GoodsMovementIsCancelled | |||
| ReversedMaterialDocumentYear | ReversedMaterialDocumentYear | |||
| ReversedMaterialDocument | ReversedMaterialDocument | |||
| ReversedMaterialDocumentItem | ReversedMaterialDocumentItem | |||
| ReferenceDocumentFiscalYear | ReferenceDocumentFiscalYear | |||
| InvtryMgmtRefDocumentItem | InvtryMgmtRefDocumentItem | |||
| InvtryMgmtReferenceDocument | InvtryMgmtReferenceDocument | |||
| MaterialDocumentPostingType | MaterialDocumentPostingType | |||
| InventoryUsabilityCode | InventoryUsabilityCode | |||
| EWMWarehouse | EWMWarehouse | |||
| EWMStorageBin | EWMStorageBin | |||
| DebitCreditCode | DebitCreditCode | |||
| _SerialNumbers | _SerialNumbers | |||
| _MaterialDocumentHeader | _MaterialDocumentHeader | |||
| _AuthSupplier | _AuthSupplier | |||
| _AuthCustomer | _AuthCustomer | |||
| _SupplierCompanyByPlant | _SupplierCompanyByPlant | |||
| _CustomerCompanyByPlant | _CustomerCompanyByPlant |
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'AMATDOCITEM'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Document Items'
@VDM.viewType : #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.createEnabled: false
@ObjectModel.updateEnabled: false
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@Metadata.ignorePropagatedAnnotations:true
define view A_MaterialDocumentItem
as select from I_GoodsMovementDocument
association [1..1] to A_MaterialDocumentHeader as _MaterialDocumentHeader on $projection.MaterialDocumentYear = _MaterialDocumentHeader.MaterialDocumentYear
and $projection.MaterialDocument = _MaterialDocumentHeader.MaterialDocument
association [1..1] to E_MaterialDocumentItem as _ProcessExtension on $projection.MaterialDocument = _ProcessExtension.MaterialDocument
and $projection.MaterialDocumentYear = _ProcessExtension.MaterialDocumentYear
and $projection.MaterialDocumentItem = _ProcessExtension.MaterialDocumentItem
and _ProcessExtension.MaterialDocumentRecordType = 'MDOC'
association [1..1] to E_MaterialDocumentItem_2 as _MaterialDocumentItemExtension on $projection.MaterialDocument = _MaterialDocumentItemExtension.MaterialDocument
and $projection.MaterialDocumentYear = _MaterialDocumentItemExtension.MaterialDocumentYear
and $projection.MaterialDocumentItem = _MaterialDocumentItemExtension.MaterialDocumentItem
and _MaterialDocumentItemExtension.MaterialDocumentRecordType = 'MDOC'
association [0..*] to A_SerialNumberMaterialDocument as _SerialNumbers on $projection.MaterialDocument = _SerialNumbers.MaterialDocument
and $projection.MaterialDocumentItem = _SerialNumbers.MaterialDocumentItem
and $projection.MaterialDocumentYear = _SerialNumbers.MaterialDocumentYear
association [0..1] to A_Supplier as _AuthSupplier on $projection.Supplier = _AuthSupplier.Supplier
association [0..1] to A_Customer as _AuthCustomer on $projection.Customer = _AuthCustomer.Customer
association [0..1] to I_SupplierCompanyByPlant as _SupplierCompanyByPlant on $projection.Supplier = _SupplierCompanyByPlant.Supplier
and $projection.Plant = _SupplierCompanyByPlant.Plant
association [0..1] to I_CustomerCompanyByPlant as _CustomerCompanyByPlant on $projection.Customer = _CustomerCompanyByPlant.Customer
and $projection.Plant = _CustomerCompanyByPlant.Plant
{
key MaterialDocumentYear,
key MaterialDocument,
key MaterialDocumentItem,
Material,
Plant,
@ObjectModel.sapObjectNodeTypeReference: 'StorageLocation'
StorageLocation,
Batch,
@ObjectModel.sapObjectNodeTypeReference: 'GoodsMovementType'
GoodsMovementType,
@ObjectModel.sapObjectNodeTypeReference: 'InventoryStockType'
InventoryStockType,
@ObjectModel.sapObjectNodeTypeReference: 'ProductValuationType'
InventoryValuationType,
@ObjectModel.sapObjectNodeTypeReference: 'InventorySpecialStockType'
InventorySpecialStockType,
Supplier,
Customer,
SalesOrder,
SalesOrderItem,
SalesOrderScheduleLine,
PurchaseOrder,
PurchaseOrderItem,
_WBSElement.WBSElement,
ManufacturingOrder,
ManufacturingOrderItem,
@ObjectModel.sapObjectNodeTypeReference: 'GoodsMovementReferenceDocType'
GoodsMovementRefDocType,
@ObjectModel.sapObjectNodeTypeReference: 'GoodsMovementReason'
GoodsMovementReasonCode,
//Delivery - aliasing is done to be consistent with SOAP service
DeliveryDocument as Delivery,
DeliveryDocumentItem as DeliveryItem,
//Accounting information
@ObjectModel.sapObjectNodeTypeReference: 'AccountAssignmentCategory'
AccountAssignmentCategory,
CostCenter,
ControllingArea,
CostObject,
GLAccount,
FunctionalArea,
ProfitabilitySegment_2 as ProfitabilitySegment,
ProfitCenter,
MasterFixedAsset,
FixedAsset,
//Quantities
@Semantics.unitOfMeasure: true
MaterialBaseUnit,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
QuantityInBaseUnit,
@Semantics.unitOfMeasure: true
EntryUnit,
@Semantics.quantity.unitOfMeasure: 'EntryUnit'
QuantityInEntryUnit,
//Amounts
@ObjectModel.sapObjectNodeTypeReference: 'Currency'
@Semantics.currencyCode: true
CompanyCodeCurrency,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
GdsMvtExtAmtInCoCodeCrcy,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
case when EnteredSlsAmtInCoCodeCrcy <> 0 then SlsPrcAmtInclVATInCoCodeCrcy
else 0 end as SlsPrcAmtInclVATInCoCodeCrcy,
FiscalYear,
FiscalYearPeriod,
@ObjectModel.sapObjectNodeTypeReference: 'FiscalYearVariant'
FiscalYearVariant,
IssgOrRcvgMaterial,
IssgOrRcvgBatch,
IssuingOrReceivingPlant,
IssuingOrReceivingStorageLoc,
@ObjectModel.sapObjectNodeTypeReference: 'InventoryStockType'
IssuingOrReceivingStockType,
@ObjectModel.sapObjectNodeTypeReference: 'InventorySpecialStockType'
IssgOrRcvgSpclStockInd,
@ObjectModel.sapObjectNodeTypeReference: 'ProductValuationType'
IssuingOrReceivingValType,
IsCompletelyDelivered,
@Semantics.text: true
MaterialDocumentItemText,
GoodsRecipientName, //3250177
UnloadingPointName,
ShelfLifeExpirationDate,
ManufactureDate,
SerialNumbersAreCreatedAutomly,
Reservation,
ReservationItem,
ReservationIsFinallyIssued,
SpecialStockIdfgSalesOrder,
SpecialStockIdfgSalesOrderItem,
_SpecialStockIdfgWBSElement.WBSElement as SpecialStockIdfgWBSElement,
//Automatically created entries
IsAutomaticallyCreated,
MaterialDocumentLine,
MaterialDocumentParentLine,
HierarchyNodeLevel,
// Cancellation information
GoodsMovementIsCancelled,
ReversedMaterialDocumentYear,
ReversedMaterialDocument,
ReversedMaterialDocumentItem,
//Reference Document
ReferenceDocumentFiscalYear,
InvtryMgmtRefDocumentItem,
InvtryMgmtReferenceDocument,
@ObjectModel.sapObjectNodeTypeReference: 'MaterialDocumentPostingType'
MaterialDocumentPostingType,
//Stock type
@ObjectModel.sapObjectNodeTypeReference: 'InventoryUsabilityCode'
InventoryUsabilityCode,
//EWM Data
@ObjectModel.sapObjectNodeTypeReference: 'Warehouse'
EWMWarehouse,
EWMStorageBin,
DebitCreditCode,
// Serial Numbers
_SerialNumbers,
@ObjectModel: { association: { type: [#TO_COMPOSITION_PARENT , #TO_COMPOSITION_ROOT] } }
_MaterialDocumentHeader,
//only for DCL
@Consumption.hidden: true
_AuthSupplier,
@Consumption.hidden: true
_AuthCustomer,
@Consumption.hidden: true
_SupplierCompanyByPlant,
@Consumption.hidden: true
_CustomerCompanyByPlant
}
where
MaterialDocumentRecordType = 'MDOC'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_GOODSMOVEMENTDOCUMENT",
"I_WBSELEMENTBYINTERNALKEY"
],
"ASSOCIATED":
[
"A_CUSTOMER",
"A_MATERIALDOCUMENTHEADER",
"A_SERIALNUMBERMATERIALDOCUMENT",
"A_SUPPLIER",
"E_MATERIALDOCUMENTITEM",
"E_MATERIALDOCUMENTITEM_2",
"I_CUSTOMERCOMPANYBYPLANT",
"I_SUPPLIERCOMPANYBYPLANT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- 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