I_ProdStrucVariantChangeState

DDL: I_PRODSTRUCVARIANTCHANGESTATE SQL: IPSVARCHGSTATE Type: view BASIC

Product Structure Variant Change State

I_ProdStrucVariantChangeState is a Basic CDS View that provides data about "Product Structure Variant Change State" in SAP S/4HANA. It reads from 2 data sources (aenr, pvcmp) and exposes 13 fields with key fields ProductStructureVariantUUID, ProdStrucVariantChgStateIntID. It has 4 associations to related views.

Data Sources (2)

SourceAliasJoin Type
aenr aenr left_outer
pvcmp pvcmp from

Associations (4)

CardinalityTargetAliasCondition
[0..1] I_ProdStrucVariantBasic _VariantBasic $projection.ProductStructureVariantUUID = _VariantBasic.ProductStructureVariantUUID
[0..1] I_ProdStrucLogAccMActive _LogAccMObjectTypeActive $projection.productstructuregnrcobjtype = _LogAccMObjectTypeActive.LogAccMObjectType
[0..*] I_ProdStrucLogAccMSecureAssgmt _LogAccMObjSecureIDAssgmt $projection.prodstrucvariantuniqueid = _LogAccMObjSecureIDAssgmt.LogAccMObjectID and $projection.productstructuregnrcobjtype = _LogAccMObjSecureIDAssgmt.LogAccMObjectType
[0..*] I_ProdStrucLogAccMUserAuthzn _LogAccMObjectUserAuthzn $projection.prodstrucvariantuniqueid = _LogAccMObjectUserAuthzn.LogAccMObjectID 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 IPSVARCHGSTATE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #BASIC view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.representativeKey ProdStrucVariantChgStateIntID view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #C view
EndUserText.label Product Structure Variant Change State view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (13)

KeyFieldSource TableSource FieldDescription
KEY ProductStructureVariantUUID pvcmp pvguid
KEY ProdStrucVariantChgStateIntID pvcmp pvcnt
ProdStrucVariantUniqueID _VariantBasic ProdStrucVariantUniqueID
ProdStrucVarBasicDataChgState pvcmp pvcdcnt
ProdStrucVariantChangeNumber pvcmp aennr
ProdStrucVarIsMrkdForDeletion pvcmp delflg
ProdStrucVarChgNmbrDescription aenr aetxt
AuthorizationGroup aenr aenbe
ProductStructureGnrcObjType _VariantBasic ProductStructureGnrcObjType
_VariantBasic _VariantBasic
_LogAccMObjectTypeActive _LogAccMObjectTypeActive
_LogAccMObjSecureIDAssgmt _LogAccMObjSecureIDAssgmt
_LogAccMObjectUserAuthzn _LogAccMObjectUserAuthzn
@AbapCatalog.sqlViewName: 'IPSVARCHGSTATE'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #BASIC
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.representativeKey: 'ProdStrucVariantChgStateIntID'


@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.sizeCategory: #M
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #SEARCHABLE_ENTITY ]

@EndUserText.label: 'Product Structure Variant Change State'
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_ProdStrucVariantChangeState
  as select  from pvcmp
    left outer join       aenr on pvcmp.aennr = aenr.aennr
  association [0..1] to I_ProdStrucVariantBasic as _VariantBasic on $projection.ProductStructureVariantUUID = _VariantBasic.ProductStructureVariantUUID
  association [0..1] to I_ProdStrucLogAccMActive  as _LogAccMObjectTypeActive       on  $projection.productstructuregnrcobjtype = _LogAccMObjectTypeActive.LogAccMObjectType 
  association [0..*] to I_ProdStrucLogAccMSecureAssgmt as _LogAccMObjSecureIDAssgmt on  $projection.prodstrucvariantuniqueid = _LogAccMObjSecureIDAssgmt.LogAccMObjectID
                                                                                    and $projection.productstructuregnrcobjtype = _LogAccMObjSecureIDAssgmt.LogAccMObjectType
  association [0..*] to I_ProdStrucLogAccMUserAuthzn  as _LogAccMObjectUserAuthzn  on  $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
                                                                                 )
{
      @ObjectModel.foreignKey.association: '_VariantBasic'
  key pvcmp.pvguid                       as ProductStructureVariantUUID,
  key pvcmp.pvcnt                        as ProdStrucVariantChgStateIntID,
      ///bintohex( pvguid )                 as ProdStrucVariantUniqueID,

      _VariantBasic.ProdStrucVariantUniqueID,
      pvcmp.pvcdcnt                      as ProdStrucVarBasicDataChgState,
      pvcmp.aennr                        as ProdStrucVariantChangeNumber,
      pvcmp.delflg                       as ProdStrucVarIsMrkdForDeletion,
      aenr.aetxt                         as ProdStrucVarChgNmbrDescription,
      aenr.aenbe                         as AuthorizationGroup,
      _VariantBasic.ProductStructureGnrcObjType,
      //_LogAccMObjSecureIDAssgmt.LogAccMObjectID,

      _VariantBasic,
      _LogAccMObjectTypeActive,
      _LogAccMObjSecureIDAssgmt,
      _LogAccMObjectUserAuthzn
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PRODSTRUCVARIANTBASIC",
"AENR",
"PVCMP"
],
"ASSOCIATED":
[
"I_PRODSTRUCLOGACCMACTIVE",
"I_PRODSTRUCLOGACCMSECUREASSGMT",
"I_PRODSTRUCLOGACCMUSERAUTHZN",
"I_PRODSTRUCVARIANTBASIC"
],
"BASE":
[],
"ANNO_REF":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/