FAC_CDS_VE_VALIDATION_GROUP

DDL: FAC_CDS_VE_VALIDATION_GROUP SQL: FACVEGROUP Type: view

Validation Group

FAC_CDS_VE_VALIDATION_GROUP is a CDS View that provides data about "Validation Group" in SAP S/4HANA. It reads from 5 data sources (fac_ve_scenariot, fac_cds_uh_clfd_value, uhdt_node, FAC_CDS_VE_VALIDATION_SCENARIO, fac_cds_uh_version) and exposes 23 fields with key field VersionId. It has 7 associations to related views.

Data Sources (5)

SourceAliasJoin Type
fac_ve_scenariot _ScenarioText left_outer
fac_cds_uh_clfd_value CLASSFIED inner
uhdt_node node inner
FAC_CDS_VE_VALIDATION_SCENARIO scenario inner
fac_cds_uh_version Version from

Associations (7)

CardinalityTargetAliasCondition
[0..1] FAC_VE_GRP_STATUST _StatusText _StatusText.ValidationGroupStatus = $projection.ValidationGroupStatus
[1..*] fac_cds_ve_group_node to_node $projection.VersionId = to_node.VersionId
[1..1] fac_cds_uh_category to_category $projection.HierarchyCategory = to_category.CategoryKey
[1..*] fac_cds_uh_clfd_value to_clfd_value $projection.VersionId = to_clfd_value.ObjectId
[0..*] FAC_CDS_UH_CD to_changelog $projection.VersionId = to_changelog.VersionId and to_changelog.Langauge = $session.system_language
[0..1] I_UserContactCard to_CreatedByContactCard $projection.CreatedBy = to_CreatedByContactCard.ContactCardID
[0..1] I_UserContactCard to_ChangedByContactCard $projection.ChangedBy = to_ChangedByContactCard.ContactCardID

Annotations (8)

NameValueLevelField
AbapCatalog.sqlViewName FACVEGROUP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Validation Group view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view

Fields (23)

KeyFieldSource TableSource FieldDescription
KEY VersionId fac_cds_uh_version VersionId
HierarchyCategory fac_cds_uh_version HierarchyCategory
ValidationGroupID uhdt_node node_lval
ValidationGroupDescription fac_cds_uh_version HierarchyText
ValidationScenarioID fac_cds_uh_clfd_value LowValue
ValidationGroupStatus fac_cds_uh_version VersionStatus
ValidationGroupStatusText _StatusText ValidationGroupStatusText
EnableAssignment FAC_CDS_VE_VALIDATION_SCENARIO EnableAssignment
CreatedAt fac_cds_uh_version CreatedAt
CreatedByFullName usnam_user UserDescription
CreatedBy fac_cds_uh_version CreatedBy
ChangedAt fac_cds_uh_version UpdatedAt
ChangedBy fac_cds_uh_version UpdatedBy
ChangedByFullName ppnam_user UserDescription
LockedAt fac_cds_uh_version LockedAt
LockedBy fac_cds_uh_version LockedBy
ScenarioText fac_ve_scenariot descr
_StatusText _StatusText
to_node to_node
to_changelog to_changelog
to_category to_category
to_CreatedByContactCard to_CreatedByContactCard
to_ChangedByContactCard to_ChangedByContactCard
@AbapCatalog.sqlViewName: 'FACVEGROUP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.privilegedAssociations: ['to_CreatedByContactCard', 'to_ChangedByContactCard']
@EndUserText.label: 'Validation Group'
@ObjectModel.usageType: {
  dataClass: #MASTER,
  serviceQuality: #C,
  sizeCategory: #L
}
define view FAC_CDS_VE_VALIDATION_GROUP
  as select from           fac_cds_uh_version             as Version
    inner join             fac_cds_uh_clfd_value          as CLASSFIED     on  Version.VersionId   = CLASSFIED.ObjectId
                                                                           and CLASSFIED.FieldName = 'VALIDATIONSCENARIOID'
    inner join             uhdt_node                      as node          on  Version.VersionId = node.ver_id
                                                                           and node.node_type    = 'R'
    inner join             FAC_CDS_VE_VALIDATION_SCENARIO as scenario      on scenario.ValidationScenarioID = CLASSFIED.LowValue
    left outer join        fac_ve_scenariot               as _ScenarioText on  _ScenarioText.scen_id = CLASSFIED.LowValue
                                                                           and _ScenarioText.langu   = $session.system_language

    left outer to one join I_User                         as usnam_user    on usnam_user.UserID = Version.CreatedBy
    left outer to one join I_User                         as ppnam_user    on ppnam_user.UserID = Version.UpdatedBy
    


  association [0..1] to FAC_VE_GRP_STATUST    as _StatusText   on  _StatusText.ValidationGroupStatus = $projection.ValidationGroupStatus
  association [1..*] to fac_cds_ve_group_node as to_node       on  $projection.VersionId = to_node.VersionId
  association [1..1] to fac_cds_uh_category   as to_category   on  $projection.HierarchyCategory = to_category.CategoryKey
  association [1..*] to fac_cds_uh_clfd_value as to_clfd_value on  $projection.VersionId = to_clfd_value.ObjectId
  association [0..*] to FAC_CDS_UH_CD         as to_changelog  on  $projection.VersionId = to_changelog.VersionId
                                                               and to_changelog.Langauge = $session.system_language
  association [0..1] to I_UserContactCard     as to_CreatedByContactCard on $projection.CreatedBy = to_CreatedByContactCard.ContactCardID
  association [0..1] to I_UserContactCard     as to_ChangedByContactCard on $projection.ChangedBy = to_ChangedByContactCard.ContactCardID
{
  key Version.VersionId                     as VersionId,
      Version.HierarchyCategory             as HierarchyCategory,
      node.node_lval                        as ValidationGroupID,
      Version.HierarchyText                 as ValidationGroupDescription,
      CLASSFIED.LowValue                    as ValidationScenarioID,
      Version.VersionStatus                 as ValidationGroupStatus,
      _StatusText.ValidationGroupStatusText as ValidationGroupStatusText,
      scenario.EnableAssignment             as EnableAssignment,
      Version.CreatedAt,
      usnam_user.UserDescription            as CreatedByFullName,
      @Consumption.semanticObject: 'CreatedBy'
      @ObjectModel.foreignKey.association: 'to_CreatedByContactCard'
      Version.CreatedBy,
      Version.UpdatedAt                     as ChangedAt,
      @Consumption.semanticObject: 'ChangedBy'
      @ObjectModel.foreignKey.association: 'to_ChangedByContactCard'
      Version.UpdatedBy                     as ChangedBy,
      ppnam_user.UserDescription            as ChangedByFullName,
      Version.LockedAt                      as LockedAt,
      Version.LockedBy                      as LockedBy,
      _ScenarioText.descr                   as ScenarioText,

      /* Associations */
      _StatusText,
      to_node,
      to_changelog,
      to_category,
      to_clfd_value,
      to_CreatedByContactCard,
      to_ChangedByContactCard
}
where
  Version.HierarchyCategory = 'GL05'