I_SponsoredClassCore

DDL: I_SPONSOREDCLASSCORE SQL: IGMSPCLASSCL Type: view BASIC Package: PSM_S4C_GM_MD

Sponsored Class

I_SponsoredClassCore is a Basic CDS View (Dimension) that provides data about "Sponsored Class" in SAP S/4HANA. It reads from 1 data source (gmspclass) and exposes 14 fields with key field SponsoredClass. It has 6 associations to related views. Part of development package PSM_S4C_GM_MD.

Data Sources (1)

SourceAliasJoin Type
gmspclass gmspclass from

Associations (6)

CardinalityTargetAliasCondition
[1..1] I_SponsoredClassTypeCore _Type $projection.SponsoredClassType = _Type.SponsoredClassType
[0..*] I_SponsoredClassHierarchyNode _SponsoredClassHierarchyNode $projection.SponsoredClass = _SponsoredClassHierarchyNode.SponsoredClass
[0..*] I_SponsoredClassCoreText _Text $projection.SponsoredClass = _Text.SponsoredClass
[0..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID
[1..1] E_SponsoredClassCore _Extension $projection.SponsoredClass = _Extension.SponsoredClass

Annotations (19)

NameValueLevelField
EndUserText.label Sponsored Class view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey SponsoredClass view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.sapObjectNodeType.name SponsoredClass view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
Metadata.allowExtensions true view
Search.searchable true view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.ignorePropagatedAnnotations true view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.sqlViewName IGMSPCLASSCL view
Analytics.internalName #LOCAL view

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY SponsoredClass sponsored_class
SponsoredClassType class_type
SponsoredClassIsBillable
CreatedByUser created_by
CreationDate created_on
LastChangedByUser modified_by
LastChangeDate modified_on
SponsoredClassAuthznGrp auth_group
GteeMBdgtAcctForSpnsrdCl account_for_budget
_Type _Type
_Text _Text
_SponsoredClassHierarchyNode _SponsoredClassHierarchyNode
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
@EndUserText.label: 'Sponsored Class'
@Analytics: { dataCategory: #DIMENSION, dataExtraction.enabled: true }
@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@AccessControl.authorizationCheck: #CHECK
@AccessControl.privilegedAssociations:['_SponsoredClassHierarchyNode','_CreatedByUser','_LastChangedByUser']
@ObjectModel.representativeKey: 'SponsoredClass'
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #EXTRACTION_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #CDS_MODELING_DATA_SOURCE]
@ObjectModel.usageType: {
  dataClass: #MASTER,
  serviceQuality: #C,
  sizeCategory: #L
}
@ObjectModel.sapObjectNodeType.name: 'SponsoredClass'
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@Metadata.allowExtensions:true
@Search.searchable: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations:true
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.sqlViewName: 'IGMSPCLASSCL'
@Analytics.internalName:#LOCAL
define view I_SponsoredClassCore

  as select from gmspclass

  association [1..1] to I_SponsoredClassTypeCore      as _Type                        on $projection.SponsoredClassType = _Type.SponsoredClassType

  association [0..*] to I_SponsoredClassHierarchyNode as _SponsoredClassHierarchyNode on $projection.SponsoredClass = _SponsoredClassHierarchyNode.SponsoredClass

  association [0..*] to I_SponsoredClassCoreText      as _Text                        on $projection.SponsoredClass = _Text.SponsoredClass

  association [0..1] to I_User                        as _CreatedByUser               on $projection.CreatedByUser = _CreatedByUser.UserID
  association [0..1] to I_User                        as _LastChangedByUser           on $projection.LastChangedByUser = _LastChangedByUser.UserID

  association [1..1] to E_SponsoredClassCore          as _Extension //do not expose this association in the projection list of the view

                                                                                      on $projection.SponsoredClass = _Extension.SponsoredClass
{

      @ObjectModel.text.association: '_Text'
      @ObjectModel.hierarchy.association: '_SponsoredClassHierarchyNode'
      @Search.defaultSearchElement: true
      @Search.ranking:#HIGH
  key sponsored_class                                           as SponsoredClass,
      @ObjectModel.foreignKey.association: '_Type'
      class_type                                                as SponsoredClassType,
      cast(flg_billable as gm_flg_billable_ce preserving type ) as SponsoredClassIsBillable,
      created_by                                                as CreatedByUser,
      @Semantics.systemDate.createdAt: true
      created_on                                                as CreationDate,
      modified_by                                               as LastChangedByUser,
      @Semantics.systemDate.lastChangedAt: true
      modified_on                                               as LastChangeDate,

      auth_group                                                as SponsoredClassAuthznGrp,

      account_for_budget                                        as GteeMBdgtAcctForSpnsrdCl,

      _Type,
      _Text,
      _SponsoredClassHierarchyNode,
      _CreatedByUser,
      _LastChangedByUser

}