I_InspectionSelectedSet is a Basic CDS View that provides data about "Inspection Selected Set" in SAP S/4HANA. It reads from 2 data sources (qpam, qpamtxt) and exposes 9 fields with key fields SelectedCodeSetPlant, InspectionCatalog, SelectedCodeSet. It has 3 associations to related views.
@AbapCatalog.sqlViewName: 'IINSPSELDSET'
@AbapCatalog.preserveKey: true@ClientHandling.algorithm: #SESSION_VARIABLE@AccessControl.authorizationCheck: #CHECK@EndUserText.label: 'Inspection Selected Set'
@VDM: {
viewType: #BASIC,
lifecycle.contract.type: #PUBLIC_LOCAL_API
}@ObjectModel.supportedCapabilities:
[ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET ]@ObjectModel: {
usageType: {
dataClass: #MASTER,
sizeCategory: #M,
serviceQuality: #A
},
representativeKey: 'SelectedCodeSet'
}
@Metadata.ignorePropagatedAnnotations: truedefineview I_InspectionSelectedSet
asselectfrom qpam
leftouterjoin qpamtxt
on qpamtxt.werks = qpam.werks
and qpamtxt.katalogart = qpam.katalogart
and qpamtxt.auswahlmge = qpam.auswahlmge
and qpamtxt.language = $session.system_language
association [0..1] to I_Plant as _SelectedCodeSetPlant
on $projection.SelectedCodeSetPlant = _SelectedCodeSetPlant.Plant
association [0..1] to I_Inspectioncatalog as _InspectionCatalog
on $projection.InspectionCatalog = _InspectionCatalog.InspectionCatalog
association [0..*] to I_InspectionSelectedSetText as _InspectionSelectedSetText // => DEPRECATED! Do not use. Use fields Language and SelectedCodeSetText directly.
on $projection.SelectedCodeSetPlant = _InspectionSelectedSetText.SelectedCodeSetPlant and
$projection.InspectionCatalog = _InspectionSelectedSetText.InspectionCatalog and
$projection.SelectedCodeSet = _InspectionSelectedSetText.SelectedCodeSet
{
@ObjectModel.foreignKey.association: '_SelectedCodeSetPlant'
key qpam.werks as SelectedCodeSetPlant,
@ObjectModel.foreignKey.association: '_InspectionCatalog'
key qpam.katalogart as InspectionCatalog,
@ObjectModel.text.element: [ 'SelectedCodeSetText' ]key qpam.auswahlmge as SelectedCodeSet,
// Compatibility Switch: IF QPAMTXT contains no text in current logon language we use QPAM-KTX01 asdefault text.
// Incase we use the default text the $session.system_language is used as "artificial" language code.
@UI.hidden: truecasewhen qpamtxt.language isnotnullthen qpamtxt.language
elsecast( $session.system_language as spras preserving type ) // qpam.ksp01
endas Language,
@Semantics.text: truecasewhen qpamtxt.language isnotnullthencast( qpamtxt.ktx01 as vdm_qktextam preserving type )
elsecast( qpam.ktx01 as vdm_qktextam preserving type )
endas SelectedCodeSetText,
// qpam.ltextv,
// qpam.ersteller,
// qpam.e_datum,
// qpam.aenderer,
// qpam.a_datum,
// qpam.verwendung,
@UI.hidden: true// At the moment we do not have a proper VDM model for the domain QLOESCHKZ1 => hide this field on UIs
qpam.status as InspectionSelectedSetStatus,
qpam.defaultcodegr as SelectedCodeSetDfltCodeGroup,
qpam.defaultcode as SelectedCodeSetDefaultCode,
/* Associations */@Consumption.filter.hidden: true
_SelectedCodeSetPlant,
@Consumption.filter.hidden: true
_InspectionCatalog,
@Consumption.filter.hidden: true
_InspectionSelectedSetText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"QPAM",
"QPAMTXT"
],
"ASSOCIATED":
[
"I_INSPECTIONCATALOG",
"I_INSPECTIONSELECTEDSETTEXT",
"I_PLANT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/