Deprecated
This CDS view is deprecated in S/4HANA. Use I_ProdStrucVariantMaterial instead. View all deprecated CDS views →

I_VariantMaterial

DDL: I_VARIANTMATERIAL SQL: IVARIANTMATERIAL Type: view BASIC

Material of Variant

I_VariantMaterial is a Basic CDS View that provides data about "Material of Variant" in SAP S/4HANA. It reads from 4 data sources (makt, mara, pvcmpd, pvcmpp) and exposes 11 fields with key fields ProductStructureVariantUUID, ProdStrucVarBasicDataChgState. It has 3 associations to related views.

Data Sources (4)

SourceAliasJoin Type
makt makt left_outer
mara mara left_outer
pvcmpd pvcmpd from
pvcmpp pvcmpp left_outer

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_LogAccMObjectTypeActive _LogAccMObjectTypeActive _LogAccMObjectTypeActive.LogAccMObjectType = 'PLM_PPEPV' or _LogAccMObjectTypeActive.LogAccMObjectType = 'PLM_PPEPIV'
[0..*] I_LogAccMObjSecureIDAssgmt _LogAccMObjSecureIDAssgmt $projection.ProdStrucVariantUniqueID = _LogAccMObjSecureIDAssgmt.LogAccMObjectID and ( _LogAccMObjSecureIDAssgmt.LogAccMObjectType = 'PLM_PPEPV' or _LogAccMObjSecureIDAssgmt.LogAccMObjectType = 'PLM_PPEPIV' )
[0..*] I_LogAccMObjectUserAuthzn _LogAccMObjectUserAuthzn $projection.ProdStrucVariantUniqueID = _LogAccMObjectUserAuthzn.LogAccMObjectID and ( _LogAccMObjectUserAuthzn.LogAccMObjectType = 'PLM_PPEPV' or _LogAccMObjectUserAuthzn.LogAccMObjectType = 'PLM_PPEPIV' ) and ( _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject = 'PLM_PPEPV' or _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject = 'PLM_PPEPIV' ) and ( _LogAccMObjectUserAuthzn.LogAccMUserAuthznFrom = '03' or _LogAccMObjectUserAuthzn.LogAccMUserAuthznFrom = '*' ) and _LogAccMObjectUserAuthzn.LogAccMUserAuthznField = 'ACTVT' and ( _LogAccMObjectUserAuthzn.LogAccMUserEntityID = $session.user or _LogAccMObjectUserAuthzn.UserID = $session.user )

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IVARIANTMATERIAL view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #BASIC view
VDM.lifecycle.status #DEPRECATED view
VDM.lifecycle.successor I_ProdStrucVariantMaterial view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.serviceQuality #C view
EndUserText.label Material of Variant view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (11)

KeyFieldSource TableSource FieldDescription
KEY ProductStructureVariantUUID pvcmpd pvguid Internal Number
KEY ProdStrucVarBasicDataChgState pvcmpd pvcdcnt Counter
ProdStrucVariantUniqueID
Material
quant_fixendasProductStructureVariantQty
ProductStructureVariantUnit pvcmpd qunit Unit
MaterialName makt maktx Product Description
MaterialAuthorizationGroup mara begru AuthorizGroup
_LogAccMObjectTypeActive _LogAccMObjectTypeActive
_LogAccMObjSecureIDAssgmt _LogAccMObjSecureIDAssgmt
_LogAccMObjectUserAuthzn _LogAccMObjectUserAuthzn

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_VariantMaterial.
-- 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: IVARIANTMATERIAL

CREATE VIEW I_VariantMaterial AS
SELECT
  pvcmpd.pvguid AS ProductStructureVariantUUID,
  pvcmpd.pvcdcnt AS ProdStrucVarBasicDataChgState,
  bintohex( pvcmpd.pvguid ) AS ProdStrucVariantUniqueID,
  cast(pvcmpd.cmpid as matnr) AS Material,
  case when pvcmpp.pvguid is null then pvcmpd.quant else pvcmpp.quant_fix end as ProductStructureVariantQty AS quant_fixendasProductStructureVariantQty,
  pvcmpd.qunit AS ProductStructureVariantUnit,
  makt.maktx AS MaterialName,
  mara.begru AS MaterialAuthorizationGroup
FROM pvcmpd
LEFT OUTER JOIN pvcmpp ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN makt ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN mara ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_LogAccMObjectTypeActive AS _LogAccMObjectTypeActive ON _LogAccMObjectTypeActive.LogAccMObjectType = 'PLM_PPEPV' OR _LogAccMObjectTypeActive.LogAccMObjectType = 'PLM_PPEPIV'  -- association [0..1]
LEFT OUTER JOIN I_LogAccMObjSecureIDAssgmt AS _LogAccMObjSecureIDAssgmt ON ProdStrucVariantUniqueID = _LogAccMObjSecureIDAssgmt.LogAccMObjectID AND ( _LogAccMObjSecureIDAssgmt.LogAccMObjectType = 'PLM_PPEPV' OR _LogAccMObjSecureIDAssgmt.LogAccMObjectType = 'PLM_PPEPIV' )  -- association [0..*]
LEFT OUTER JOIN I_LogAccMObjectUserAuthzn AS _LogAccMObjectUserAuthzn ON ProdStrucVariantUniqueID = _LogAccMObjectUserAuthzn.LogAccMObjectID AND ( _LogAccMObjectUserAuthzn.LogAccMObjectType = 'PLM_PPEPV' OR _LogAccMObjectUserAuthzn.LogAccMObjectType = 'PLM_PPEPIV' ) AND ( _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject = 'PLM_PPEPV' OR _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject = 'PLM_PPEPIV' ) AND ( _LogAccMObjectUserAuthzn.LogAccMUserAuthznFrom = '03' OR _LogAccMObjectUserAuthzn.LogAccMUserAuthznFrom = '*' ) AND _LogAccMObjectUserAuthzn.LogAccMUserAuthznField = 'ACTVT' AND ( _LogAccMObjectUserAuthzn.LogAccMUserEntityID = $session.user OR _LogAccMObjectUserAuthzn.UserID = $session.user )  -- association [0..*]
;