I_PRODUCTSTRUCTURENODEVARIANT

CDS View

Product Structure Node Variant

I_PRODUCTSTRUCTURENODEVARIANT is a CDS View in S/4HANA. Product Structure Node Variant. It contains 6 fields. 2 CDS views read from this table.

CDS Views using this table (2)

ViewTypeJoinVDMDescription
P_PlanningScopeHeader view left_outer COMPOSITE
P_PlanningScopeHeader view union_all COMPOSITE

Fields (6)

KeyField CDS FieldsUsed in Views
Class Class 1
ClassType ClassType 1
ProductStructureNodeName ProductStructureNodeName 1
ProductStructureNodeType ProductStructureNodeType 1
ProductStructureNodeUUID ProductStructureNodeUUID 1
ProductStructureUsage ProductStructureUsage 1
@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
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CLFNCLASS",
"I_PRODSTRUCVARIANTPLANTUSAGE",
"I_PRODUCTSTRUCTURENODETEXT",
"I_PRODUCTSTRUCTURENODE_2",
"I_PRODUCTSTRUCTUREVARIANTTEXT",
"I_PRODUCTSTRUCTUREVARIANT_2"
],
"ASSOCIATED":
[
"I_PRODSTRUCLOGACCMACTIVE",
"I_PRODSTRUCOBJECTUSERAUTHZN",
"I_PRODSTRUCOBJSECUREIDASSGMT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/