I_ProductStructureNodeVariant

DDL: I_PRODUCTSTRUCTURENODEVARIANT SQL: IPSMNODEVAR Type: view COMPOSITE Package: VDM_PLMB_PSM

Product Structure Node Variant

I_ProductStructureNodeVariant is a Composite CDS View that provides data about "Product Structure Node Variant" in SAP S/4HANA. It reads from 3 data sources (I_ProductStructureNode_2, I_ProductStructureVariant_2, I_ProdStrucVariantPlantUsage) and exposes 27 fields with key fields ProductStructureNodeUUID, ProductStructureVariantUUID, ProdStrucVariantChgStateIntID. It has 3 associations to related views. Part of development package VDM_PLMB_PSM.

Data Sources (3)

SourceAliasJoin Type
I_ProductStructureNode_2 _Node from
I_ProductStructureVariant_2 _Variant left_outer
I_ProdStrucVariantPlantUsage _VariantPlantUsage left_outer

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_ProdStrucLogAccMActive _LogAccMObjectTypeActive $projection.ProductStructureGnrcObjType = _LogAccMObjectTypeActive.LogAccMObjectType
[0..1] I_ProdStrucObjSecureIDAssgmt _LogAccMObjSecureIDAssgmt $projection.ProductStructureNodeUniqueID = _LogAccMObjSecureIDAssgmt.LogAccMObjectID and $projection.ProductStructureGnrcObjType = _LogAccMObjSecureIDAssgmt.LogAccMObjectType
[0..1] I_ProdStrucObjectUserAuthzn _LogAccMObjectUserAuthzn $projection.ProductStructureNodeUniqueID = _LogAccMObjectUserAuthzn.LogAccMObjectID and _LogAccMObjectUserAuthzn.LogAccMObjectType = $projection.ProductStructureGnrcObjType and _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject = $projection.ProductStructureGnrcObjType

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName IPSMNODEVAR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #C view
EndUserText.label Product Structure Node Variant view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (27)

KeyFieldSource TableSource FieldDescription
KEY ProductStructureNodeUUID ProductStructureNodeUUID
KEY ProductStructureVariantUUID I_ProductStructureVariant_2 ProductStructureVariantUUID
KEY ProdStrucVariantChgStateIntID I_ProductStructureVariant_2 ProdStrucVariantChgStateIntID
ProductStructureNodeUniqueID I_ProductStructureNode_2 ProductStructureNodeUniqueID
ProductStructureNodeName ProductStructureNodeName
ProductStructureNodeType I_ProductStructureNode_2 ProductStructureNodeType
ProductStructureVariantType I_ProductStructureVariant_2 ProductStructureVariantType
ProductStructureGnrcObjType I_ProductStructureNode_2 ProductStructureGnrcObjType
ClassType
Class
ProdStrucNodeDescription Node Description
ProductStructureCreationDate I_ProductStructureNode_2 ProductStructureCreationDate
ProductStructureCreatedByUser I_ProductStructureNode_2 ProductStructureCreatedByUser
ProductStrucLastChangedDate I_ProductStructureNode_2 ProductStrucLastChangedDate
ProductStrucLastChangedByUser I_ProductStructureNode_2 ProductStrucLastChangedByUser
ProductStructureVariantName I_ProductStructureVariant_2 ProductStructureVariantName
Material I_ProductStructureVariant_2 Material
ProdStrucVariantChangeNumber I_ProductStructureVariant_2 ProdStrucVariantChangeNumber
ProdStrucVarChgNmbrDescription I_ProductStructureVariant_2 ProdStrucVarChgNmbrDescription
ProductStructureUsage I_ProdStrucVariantPlantUsage ProductStructureUsage
Plant I_ProdStrucVariantPlantUsage Plant
MaterialAuthorizationGroup I_ProductStructureVariant_2 MaterialAuthorizationGroup
AuthorizationGroup I_ProductStructureVariant_2 AuthorizationGroup
ProdStrucVariantDescription Variant Description
_LogAccMObjectTypeActive _LogAccMObjectTypeActive
_LogAccMObjSecureIDAssgmt _LogAccMObjSecureIDAssgmt
_LogAccMObjectUserAuthzn _LogAccMObjectUserAuthzn
@AbapCatalog.sqlViewName: 'IPSMNODEVAR'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #COMPOSITE

//@ObjectModel.representativeKey: 'ProductStructureVariantUUID'

//@ObjectModel.semanticKey: 'ProductStructureVariant'


@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.sizeCategory: #M
@ObjectModel.usageType.serviceQuality: #C

@EndUserText.label: 'Product Structure Node Variant'
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_ProductStructureNodeVariant
  as select from I_ProductStructureNode_2 as _Node
  left outer join  I_ProductStructureVariant_2  as _Variant                  on  _Node.ProductStructureNodeUUID = _Variant.ProdStructureVariantParentUUID
  left outer join I_ProdStrucVariantPlantUsage as _VariantPlantUsage   on  _Variant.ProductStructureVariantUUID = _VariantPlantUsage.ProductStructureVariantUUID
                                                                             and _VariantPlantUsage.Material =  _Variant.Material
  association [0..1] to I_ProdStrucLogAccMActive  as _LogAccMObjectTypeActive  on  $projection.ProductStructureGnrcObjType = _LogAccMObjectTypeActive.LogAccMObjectType
  association [0..1] to I_ProdStrucObjSecureIDAssgmt as _LogAccMObjSecureIDAssgmt on  $projection.ProductStructureNodeUniqueID          = _LogAccMObjSecureIDAssgmt.LogAccMObjectID
                                                                                and $projection.ProductStructureGnrcObjType             = _LogAccMObjSecureIDAssgmt.LogAccMObjectType  
  association [0..1] to I_ProdStrucObjectUserAuthzn  as _LogAccMObjectUserAuthzn  on  $projection.ProductStructureNodeUniqueID          = _LogAccMObjectUserAuthzn.LogAccMObjectID
                                                                                and _LogAccMObjectUserAuthzn.LogAccMObjectType          = $projection.ProductStructureGnrcObjType
                                                                                and _LogAccMObjectUserAuthzn.LogAccMUserAuthznObject    = $projection.ProductStructureGnrcObjType
{
  key ProductStructureNodeUUID,
  key _Variant.ProductStructureVariantUUID,
  key _Variant.ProdStrucVariantChgStateIntID,
      //bintohex( ProductStructureNodeUUID ) as ProductStructureNodeUniqueID,

      _Node.ProductStructureNodeUniqueID,
      ProductStructureNodeName,
      _Node.ProductStructureNodeType,
      _Variant.ProductStructureVariantType,
      _Node.ProductStructureGnrcObjType,
      _Node._Class.ClassType,
      _Node._Class.Class,
      @EndUserText.label: 'Node Description'
      _Node._Text[1:Language = $session.system_language].ProdStrucNodeDescription,
      @Semantics.businessDate.at: true
      @Semantics.businessDate.createdAt: true
      _Node.ProductStructureCreationDate,
      @Semantics.user.createdBy: true
      _Node.ProductStructureCreatedByUser,
      @Semantics.businessDate.at: true
      @Semantics.businessDate.lastChangedAt: true
      _Node.ProductStrucLastChangedDate,
      @Semantics.user.lastChangedBy: true
      _Node.ProductStrucLastChangedByUser,
      _Variant.ProductStructureVariantName,
      _Variant.Material,
      _Variant.ProdStrucVariantChangeNumber,
      _Variant.ProdStrucVarChgNmbrDescription,
      _VariantPlantUsage.ProductStructureUsage,
      _VariantPlantUsage.Plant,
      _Variant.MaterialAuthorizationGroup,
      _Variant.AuthorizationGroup,
      @EndUserText.label: 'Variant Description'
      _Variant._Text[1:Language = $session.system_language].ProdStrucVariantDescription,
      //_Node._Text as _NodeText,

      //_Variant._Text as _VariantText

     // _LogAccMObjSecureIDAssgmt.LogAccMObjectID,

     
      _LogAccMObjectTypeActive,
      _LogAccMObjSecureIDAssgmt,
      _LogAccMObjectUserAuthzn
} where _Variant.Material is not null and ProductStructureUsage is not null