@AbapCatalog.sqlViewName: 'CDEFECTMNGCHARCS'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType: {
dataClass: #MIXED,
sizeCategory: #L,
serviceQuality: #D
}
@EndUserText.label: 'Defect: Characteristics Without Insp. Point'
@UI.presentationVariant.requestAtLeast: ['InspSpecIsQuantitative']
define view C_DefectMngCharcs as select from I_InspectionCharacteristic
/*association [1..*] to C_DefectMngCharcRslts as _DefectMngCharcRslts
on $projection.InspectionLot = _DefectMngCharcRslts.InspectionLot
and $projection.InspPlanOperationInternalID = _DefectMngCharcRslts.InspPlanOperationInternalID
and $projection.InspectionCharacteristic = _DefectMngCharcRslts.InspectionCharacteristic
*/
association [0..1] to I_InspectionResultStatus as _InspectionResultStatus on $projection.InspectionCharacteristicStatus = _InspectionResultStatus.InspectionResultStatus
{
@Consumption.semanticObject: 'InspectionLot'
@UI:{
fieldGroup: [{ position: 10, qualifier: 'CharGroup1' }]
}
key InspectionLot,
key InspPlanOperationInternalID,
@UI:{
fieldGroup: [{ position: 20, qualifier: 'CharGroup1' }],
textArrangement: #TEXT_FIRST
}
@ObjectModel.text.element: [ 'InspectionSpecificationText' ]
key InspectionCharacteristic,
@Consumption.semanticObject: 'InspectionOperation'
@UI:{
fieldGroup: [{ position: 30, qualifier: 'CharGroup1' }],
textArrangement: #TEXT_FIRST
}
@ObjectModel.text.element: [ 'OperationText' ]
cast( _InspectionOperation.InspectionOperation as vdm_vornr preserving type ) as InspectionOperation,
@UI.hidden: true
_InspectionOperation.OperationText,
//@UI.hidden: true
//_InspChar._InspectionOperation.InspectionOperation,
//_InspChar._InspectionOperation.OperationText,
//@UI.hidden: true
//InspectionMethod,
//@UI.hidden: true
//_InspChar._InspectionMethodVersion._InspectionMethodText[1:Language=$session.system_language].InspectionMethodText,
//@UI.hidden: true
//_InspChar._InspSpecImportanceCode.InspSpecImportanceCodeText, //description of weighting
//@UI.hidden: true
//InspectionSpecification, //Master Inspection Characteristics
InspectionSpecificationText, //description of characteristic
//'X' is quantitative,null is qualitative
@UI.hidden: true
InspSpecIsQuantitative,
@UI.hidden: true
//@Semantics.unitOfMeasure: true
//@ObjectModel.text.element: ['_InspectionSpecificationUnit._Text[1:Language=$session.system_language].UnitOfMeasureTechnicalName']
// _InspectionSpecificationUnit._Text[1:Language=$session.system_language].UnitOfMeasureTechnicalName as InspectionSpecificationUnit,
InspectionSpecificationUnit,
//@UI.hidden: true
//InspectionSpecificationPlant,
//@UI.hidden: true
//InspectionSpecificationVersion,
// RecordingType: null is Summary,'+' is Single
//field for exit calculations
@UI.hidden: true
InspSpecRecordingType,
@UI.hidden: true
InspSpecUpperLimit,
@UI.hidden: true
InspSpecHasUpperLimit,
@UI.hidden: true
InspSpecLowerLimit,
@UI.hidden: true
InspSpecHasLowerLimit,
@UI.hidden: true
InspSpecDecimalPlaces,
@UI.hidden: true
InspCharacteristicSampleSize, //Inspect value
@UI.hidden: true
InspSpecSampleQuantityFactor,
@UI.hidden: true
InspCharacteristicSampleUnit, //Sample Quantity Factor
@UI.hidden: true
_InspectionResult.InspectionResultMeanValue,
//@UI.hidden: true
//InspSpecIsMeasuredValueRqd,
//@UI.hidden: true
_CharcAttribSelectedCodeSet.SelectedCodeSetText,
//_CharcAttribSelectedCodeSet.SelectedCodeSet,
@UI.lineItem: {position: 30, importance: #HIGH}
@UI:{
fieldGroup: [{ position: 10, qualifier: 'CharGroup3', criticality: 'InspValnResultCriticality' , criticalityRepresentation: #WITHOUT_ICON}],
textArrangement: #TEXT_FIRST
}
@ObjectModel.text.element: ['InspectionValuationResultText']
_InspectionResult.InspectionValuationResult,
@UI.hidden: true
_InspectionResult._InspectionValuationResult._Text[1:Language=$session.system_language].InspectionValuationResultText,
@UI.hidden: true
case _InspectionResult.InspectionValuationResult
when 'A' then 3
when 'R' then 1
else 0
end as InspValnResultCriticality,
@UI:{
fieldGroup: [{ position: 50, qualifier: 'CharGroup1' }]
}
_InspectionResult.InspResultValidValuesNumber,
@UI:{
fieldGroup: [{ position: 60, qualifier: 'CharGroup1' }]
}
_InspectionResult.InspRsltNonconformingValsNmbr,
/*
concat (concat (cast (_InspectionResult.InspResultValidValuesNumber as abap.char( 20 )),' / '),concat(' ', cast (_InspectionResult.InspRsltNonconformingValsNmbr as abap.char( 20 )))) as InspRsltInspNonConformanceCt,
*/
@UI:{
fieldGroup: [{ position: 10, qualifier: 'CharGroup2' }]
}
@ObjectModel: {
readOnly: true,
virtualElement: true,
virtualElementCalculatedBy: 'ABAP:CL_QM_DEFECT_MANAGE_EXIT'
}
cast( ' ' as vdm_qinspsummerizedresults preserving type ) as InspectionResultMeanValueText,
@UI:{
fieldGroup: [{ position: 20, qualifier: 'CharGroup2' }],
multiLineText: true
}
@ObjectModel: {
readOnly: true,
virtualElement: true,
virtualElementCalculatedBy: 'ABAP:CL_QM_DEFECT_MANAGE_EXIT'
}
cast( ' ' as vdm_qinspspecification preserving type ) as InspSpecToleranceLimitsText,
//field for exit calculations
@UI.hidden: true
_InspectionResult.InspectionResultHasMeanValue,
@ObjectModel.text.element: ['CharacteristicAttributeCodeTxt']
@UI:{
fieldGroup: [{ position: 11, qualifier: 'CharGroup2' }],
textArrangement: #TEXT_LAST
}
cast( _InspectionResult.CharacteristicAttributeCode as vdm_qinspsummerizedresults) as CharacteristicAttributeCode,
@UI.hidden: true
_InspectionResult.CharacteristicAttributeCodeGrp,
@UI.hidden: true
_InspectionResult._CharcAttributeCode.CharacteristicAttributeCodeTxt,
@UI.hidden: true
InspectionMethodPlant,
@UI.hidden: true
InspectionMethodVersion,
@UI:{
fieldGroup: [{ position: 40, qualifier: 'CharGroup1' }]
}
cast(
case
when _InspectionResult.InspectionResultStatus is null
then _InspCharacteristicStatus.InspectionResultStatusText
else _InspectionResult._InspectionResultStatus.InspectionResultStatusText
end as vdm_qbeastatus_text preserving type ) as InspectionResultStatusText,
@UI.hidden: true
InspectionCharacteristicStatus,
//Associations
@Consumption.filter.hidden: true
_InspectionLot,
@Consumption.filter.hidden: true
_InspectionOperation,
@Consumption.filter.hidden: true
_InspectionResult._InspectionValuationResult
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHARCATTRIBSELECTEDCODESET",
"I_CHARCATTRIBUTECODE",
"I_INSPECTIONCHARACTERISTIC",
"I_INSPECTIONOPERATION",
"I_INSPECTIONRESULT",
"I_INSPECTIONRESULTSTATUS",
"I_INSPECTIONVALUATIONRESULT",
"I_INSPECTIONVALUATIONRSLTTEXT"
],
"ASSOCIATED":
[
"I_INSPECTIONLOT",
"I_INSPECTIONOPERATION",
"I_INSPECTIONRESULTSTATUS",
"I_INSPECTIONVALUATIONRESULT"
],
"BASE":
[
"I_INSPECTIONCHARACTERISTIC",
"I_INSPECTIONRESULT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/