I_CharcAttribSelectedCodeSet

DDL: I_CHARCATTRIBSELECTEDCODESET SQL: ICHATTSELDCDSET Type: view BASIC

Selected Set for Characteristic Attribute

I_CharcAttribSelectedCodeSet is a Basic CDS View that provides data about "Selected Set for Characteristic Attribute" in SAP S/4HANA. It reads from 2 data sources (qpam, qpamtxt) and exposes 10 fields with key fields SelectedCodeSetPlant, SelectedCodeSet. It has 2 associations to related views.

Data Sources (2)

SourceAliasJoin Type
qpam qpam from
qpamtxt qpamtxt left_outer

Associations (2)

CardinalityTargetAliasCondition
[0..*] I_CharcAttribSelectedSetCode _CharcAttribSelectedSetCode $projection.SelectedCodeSetPlant = _CharcAttribSelectedSetCode.SelectedCodeSetPlant and $projection.SelectedCodeSet = _CharcAttribSelectedSetCode.SelectedCodeSet
[0..1] I_Plant _SelectedCodeSetPlant $projection.SelectedCodeSetPlant = _SelectedCodeSetPlant.Plant

Annotations (14)

NameValueLevelField
AbapCatalog.sqlViewName ICHATTSELDCDSET view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Selected Set for Characteristic Attribute view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.representativeKey SelectedCodeSet view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.serviceQuality #A view
Search.searchable true view
Metadata.ignorePropagatedAnnotations true view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY SelectedCodeSetPlant qpam werks
KEY SelectedCodeSet qpam auswahlmge
ktx01endasSelectedCodeSetText
InspectionSelectedSetStatus status
CharcAttribSeldSetCreatedBy ersteller
CharcAttribSeldSetCrtedOn e_datum
CharcAttribSeldSetLastChgdBy aenderer
CharcAttribSeldSetLastChgdOn a_datum
_CharcAttribSelectedSetCode _CharcAttribSelectedSetCode
_SelectedCodeSetPlant _SelectedCodeSetPlant
@AbapCatalog.sqlViewName: 'ICHATTSELDCDSET'
@AbapCatalog.preserveKey: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Selected Set for Characteristic Attribute'
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@ObjectModel.supportedCapabilities:
    [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET ]
@ObjectModel.representativeKey: 'SelectedCodeSet'
@ObjectModel.usageType: {
    dataClass: #MASTER,
    sizeCategory: #S,
    serviceQuality: #A
}
@Search.searchable: true
@Metadata.ignorePropagatedAnnotations: true
define view I_CharcAttribSelectedCodeSet 
  as select from qpam
            left outer join qpamtxt
            on  qpamtxt.werks      = qpam.werks
              and qpamtxt.katalogart = qpam.katalogart
              and qpamtxt.auswahlmge = qpam.auswahlmge
              and qpamtxt.language   = $session.system_language
              
  association [0..*] to I_CharcAttribSelectedSetCode as _CharcAttribSelectedSetCode
    on $projection.SelectedCodeSetPlant  = _CharcAttribSelectedSetCode.SelectedCodeSetPlant
    and $projection.SelectedCodeSet      = _CharcAttribSelectedSetCode.SelectedCodeSet
  association [0..1] to I_Plant                      as _SelectedCodeSetPlant        
    on  $projection.SelectedCodeSetPlant = _SelectedCodeSetPlant.Plant

{
    @ObjectModel.foreignKey.association: '_SelectedCodeSetPlant'
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #HIGH }
    key qpam.werks      as SelectedCodeSetPlant,
    //key katalogart as CharacteristicAttributeCatalog, --> WHERE condition

    @ObjectModel.text.element:  [ 'SelectedCodeSetText' ] 
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #HIGH }
    key qpam.auswahlmge as SelectedCodeSet,

    // Compatibility Switch: IF QPAMTXT contains no text in current logon language we use QPAM-KTX01 as default text.

    // In case we use the default text the $session.system_language is used as "artificial" language code.

    @UI.hidden: true
    case when qpamtxt.language is not null
      then qpamtxt.language
      else cast( $session.system_language as spras preserving type ) // qpam.ksp01

    end as Language,
    @Semantics.text: true
    case when qpamtxt.language is not null
      then qpamtxt.ktx01
      else qpam.ktx01
    end as SelectedCodeSetText,
    
    @UI.hidden: true // At the moment we do not have a proper VDM model for the domain QLOESCHKZ1 => hide this field on UIs

    status         as InspectionSelectedSetStatus,
    
    @Semantics.user.createdBy: true
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
    ersteller      as CharcAttribSeldSetCreatedBy,
    @Semantics.businessDate.at: true
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
    e_datum        as CharcAttribSeldSetCrtedOn,
    @Semantics.user.lastChangedBy: true
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
    aenderer       as CharcAttribSeldSetLastChgdBy,
    @Semantics.businessDate.at: true
    @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.8, ranking: #MEDIUM }
    a_datum        as CharcAttribSeldSetLastChgdOn,
    
    //Associations

    @Consumption.filter.hidden: true
    _CharcAttribSelectedSetCode,
    @Consumption.filter.hidden: true
    _SelectedCodeSetPlant
    
}
where qpam.katalogart = '1'  
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"QPAM",
"QPAMTXT"
],
"ASSOCIATED":
[
"I_CHARCATTRIBSELECTEDSETCODE",
"I_PLANT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/