I_ProdStrucVariantBasic
Product Structure Variant Basic
I_ProdStrucVariantBasic is a Basic CDS View that provides data about "Product Structure Variant Basic" in SAP S/4HANA. It reads from 1 data source (posvid) and exposes 13 fields with key field ProductStructureVariantUUID. It has 4 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| posvid | posvid | from |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_ProdStrucVarGnrcObjTypeMap | _ppe_c_i2g | posvid.pvtype = _ppe_c_i2g.ProductStructureVariantType |
| [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)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IVARIANTBASIC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| VDM.viewType | #BASIC | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.representativeKey | ProductStructureVariantUUID | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| EndUserText.label | Product Structure Variant Basic | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view |
Fields (13)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProductStructureVariantUUID | pvguid | ||
| ProdStrucVariantUniqueID | ||||
| ProductStructureVariantName | pvname | |||
| ProdStructureVariantParentUUID | pnguid | |||
| ProductStructureVariantType | pvtype | |||
| ProductStructureGnrcObjType | _ppe_c_i2g | ProductStructureGnrcObjType | ||
| ProductStructureCreationDate | creadat | |||
| ProductStructureCreatedByUser | creaby | |||
| ProductStrucLastChangedDate | chngdat | |||
| ProductStrucLastChangedByUser | chngby | |||
| _LogAccMObjectTypeActive | _LogAccMObjectTypeActive | |||
| _LogAccMObjSecureIDAssgmt | _LogAccMObjSecureIDAssgmt | |||
| _LogAccMObjectUserAuthzn | _LogAccMObjectUserAuthzn |
@AbapCatalog.sqlViewName: 'IVARIANTBASIC'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #BASIC
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.representativeKey: 'ProductStructureVariantUUID'
@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 Basic'
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_ProdStrucVariantBasic
as select from posvid
association [0..1] to I_ProdStrucVarGnrcObjTypeMap as _ppe_c_i2g on posvid.pvtype = _ppe_c_i2g.ProductStructureVariantType
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
)
{
key pvguid as ProductStructureVariantUUID,
bintohex( pvguid ) as ProdStrucVariantUniqueID,
pvname as ProductStructureVariantName,
pnguid as ProdStructureVariantParentUUID,
pvtype as ProductStructureVariantType,
_ppe_c_i2g.ProductStructureGnrcObjType,
//@Semantics.businessDate.createdAt: true
@Semantics.businessDate.at: true
creadat as ProductStructureCreationDate,
@Semantics.user.createdBy: true
creaby as ProductStructureCreatedByUser,
//@Semantics.businessDate.lastChangedAt: true
@Semantics.businessDate.at: true
chngdat as ProductStrucLastChangedDate,
@Semantics.user.lastChangedBy: true
chngby as ProductStrucLastChangedByUser,
//_LogAccMObjSecureIDAssgmt.LogAccMObjectID,
_LogAccMObjectTypeActive,
_LogAccMObjSecureIDAssgmt,
_LogAccMObjectUserAuthzn
} where applobj_type = 'CMP' and pnguid != hextobin('00000000000000000000000000000000')
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PRODSTRUCVARGNRCOBJTYPEMAP",
"POSVID"
],
"ASSOCIATED":
[
"I_PRODSTRUCLOGACCMACTIVE",
"I_PRODSTRUCLOGACCMSECUREASSGMT",
"I_PRODSTRUCLOGACCMUSERAUTHZN",
"I_PRODSTRUCVARGNRCOBJTYPEMAP"
],
"BASE":
[],
"ANNO_REF":
[],
"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