@AbapCatalog.sqlViewName: 'CCHGRCDOBJPGDEF'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #CONSUMPTION
@ObjectModel.usageType: {serviceQuality: #C,
dataClass: #MIXED,
sizeCategory: #L}
@ObjectModel: {
semanticKey: ['Notification','NotificationItem'],
createEnabled: false,
deleteEnabled:false,
updateEnabled:'EXTERNAL_CALCULATION' ,
transactionalProcessingDelegated: true
}
@UI.headerInfo:{
typeName: 'Defect',
typeNamePlural: 'Defects',
imageUrl: 'ProductImageURL',
title:{value:'Defect'}
}
@UI.presentationVariant : [{
requestAtLeast: [ 'ChangeRecordType','ChangeRecordReferenceType']
}]
@EndUserText.label: 'Change Record Ref Object Defect'
define view C_ChangeRecordObjPgDefect
as select from I_ChgRecdRefDefectTP as ChangeRecordReferenceDefectTP
association[0..1] to P_MfgOrderDefectAllDetail as _MfgOrderDefectDetail on $projection.Notification = _MfgOrderDefectDetail.Notification
and $projection.NotificationItem = _MfgOrderDefectDetail.NotificationItem
association [1..1] to C_ChangeRecordObjPg as _ChangeRecordObjPg on $projection.ChangeRecordUUID = _ChangeRecordObjPg.ChangeRecordUUID
association [0..1] to I_MaterialText as _MaterialText on $projection.Material = _MaterialText.Material
and _MaterialText.Language = $session.system_language
association [0..1] to I_MaterialText as _ProducedMatText on $projection.producedmaterial = _ProducedMatText.Material
and _ProducedMatText.Language = $session.system_language
association [1..1] to C_ChgRecdItmRlvnceDefectVH as _ChangeRecordItemRelVH on $projection.ChangeRecordItemRelevance = _ChangeRecordItemRelVH.ChangeRecordItemRelevance
and $projection.ChangeRecordType = _ChangeRecordItemRelVH.ChangeRecordType
association [1..1] to C_ChgRecordItemProcgStatusVH as _ProcessingStatusVH on $projection.ChangeRecordItemProcgStatus = _ProcessingStatusVH.ChgRecdNextItemProcgStatus
and $projection.ChgRecdCurrentItemProcgStatus = _ProcessingStatusVH.ChgRecdCurrentItemProcgStatus
and $projection.ChangeRecordLifecycleStatus = _ProcessingStatusVH.ChangeRecordLifecycleStatus
association [0..*] to I_ChgRecdItemProcgStatusText as _ProcessingStatusTxt on $projection.ChangeRecordItemProcgStatus = _ProcessingStatusTxt.ChangeRecordItemProcgStatus
association [0..*] to C_ChangeRecdDigSignStatusVH as _DigSignStatusText on $projection.ChgRecdItmDSgntr = _DigSignStatusText.ChgRecdDigitalSignatureStatus
{
@UI.hidden: true
@ObjectModel.readOnly: true
key ChangeRecordReferenceUUID,
@UI.hidden: true
@UI.lineItem: [{position:5, importance:#HIGH }]
@UI.identification: [{position: 5, importance: #HIGH}]
@Semantics.imageUrl: true
@ObjectModel.readOnly: true
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_OBJECT_THUMBNAIL_VE'
cast( '' as productimageurl ) as ProductImageURL,
@UI.lineItem:[{ position:10,importance:#HIGH }]
@UI.identification: [{position: 10, importance: #HIGH}]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.Defect,
@UI.hidden:true
@ObjectModel.readOnly: true
ChangeRecordReferenceDefectTP.Notification,
@UI.lineItem:[{ position:20,importance:#HIGH }]
@UI.identification: [{position:20, importance: #HIGH}]
@ObjectModel.readOnly: true
@UI.hidden: true
ChangeRecordReferenceDefectTP.NotificationItem,
@UI.lineItem:[{position:30,importance:#HIGH }]
@UI.identification: [{position: 30, importance: #HIGH }]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.QualityNotification,
@UI.lineItem:[{position:40,importance:#HIGH }]
@UI.identification: [{position: 40, importance: #HIGH }]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.QualityNotificationItem,
@UI.lineItem:[{position:50,importance:#HIGH }]
@UI.identification: [{position: 50, importance: #HIGH }]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.ProductionOrder,
@UI.lineItem:[{position:60,importance:#HIGH }]
@UI.identification: [{position: 60, importance: #HIGH }]
@ObjectModel.text.element: [ 'MfgOrderOperationText' ]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.Operation,
@UI.hidden:true
@ObjectModel.readOnly:true
_MfgOrderDefectDetail.MfgOrderOperationText,
@UI.lineItem:[{position:70,importance:#HIGH }]
@UI.identification: [{position: 70, importance: #HIGH }]
@ObjectModel.text.element: [ 'OperationActivityName' ]
@ObjectModel.readOnly: true
_MfgOrderDefectDetail.OpActyNtwkElementExternalID,
@UI.hidden:true
@ObjectModel.readOnly:true
_MfgOrderDefectDetail.OperationActivityName,
@UI.lineItem:[{position:80,importance:#HIGH }]
@UI.identification: [{position: 80, importance: #HIGH }]
@ObjectModel.text.association: '_ProducedMatText'
@ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
@ObjectModel.readOnly: true
@EndUserText.label: 'Produced Material'
_MfgOrderDefectDetail.ProducedMaterial,
@UI.lineItem:[{position:90,importance:#HIGH }]
@UI.identification: [{position: 90, importance: #HIGH }]
@ObjectModel.readOnly: true
@ObjectModel.text.association: '_MaterialText'
@ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
cast(_MfgOrderDefectDetail.Material as vdm_defective_material preserving type) as Material,
@UI.lineItem:[{position:100,importance:#HIGH }]
@UI.identification: [{position: 100, importance: #HIGH }]
@ObjectModel.readOnly: true
@EndUserText.label: 'Produced Serial Number'
_MfgOrderDefectDetail.ProducedSerialNumber,
@UI.lineItem:[{position:110,importance:#HIGH }]
@UI.identification: [{position: 110, importance: #HIGH }]
@ObjectModel.readOnly: true
@EndUserText.label: 'Defective Serial Number'
_MfgOrderDefectDetail.DefectiveSingleUnit,
@UI.lineItem:[{ position:120,importance:#MEDIUM }]
@UI.identification: [{position:120, importance: #MEDIUM}]
@Consumption: { valueHelp: '_ChangeRecordItemRelVH' }
@ObjectModel: {foreignKey.association: '_ChangeRecordItemRelVH' }
@UI.textArrangement: #TEXT_ONLY
@ObjectModel.mandatory: true
ChangeRecordItemRelevance,
@Semantics.user.createdBy: true
@ObjectModel.readOnly: true
@UI.identification: [{position: 130, importance: #MEDIUM }]
CreatedByUser,
@UI.hidden: true
CreationDateTime,
@ObjectModel.virtualElement : true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_CREATIONDATE_CONVERT'
@ObjectModel.readOnly: true
@UI.identification: [{position: 140, importance: #MEDIUM }]
cast( '00000000' as /plmb/created_on ) as CreationDate,
@Semantics.user.lastChangedBy: true
@ObjectModel.readOnly: true
@UI.identification: [{position: 150, importance: #MEDIUM }]
LastChangedByUser,
@UI.hidden: true
LastChangeDateTime,
@ObjectModel.virtualElement : true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_CHANGEDATE_CONVERT'
@ObjectModel.readOnly: true
@UI.identification: [{position: 160, importance: #MEDIUM }]
cast( '00000000' as /plmb/changed_on ) as LastChangeDate,
@UI.lineItem: [{position:170, importance:#MEDIUM }]
@UI.identification: [{position: 180, importance: #MEDIUM }]
@EndUserText.label: 'Processing Status'
@Consumption.valueHelpDefinition: [{association: '_ProcessingStatusVH'}]
@ObjectModel.foreignKey.association: '_ProcessingStatusVH'
@UI.textArrangement: #TEXT_FIRST
ChangeRecordItemProcgStatus,
@UI.hidden: true
@ObjectModel.readOnly: true
ChgRecdCurrentItemProcgStatus,
@ObjectModel.readOnly:true
@UI.hidden: true
_ChangeRecordObjPg.ChgRecdItemProcgStatusIsEnbld,
@UI.hidden: true
@ObjectModel.readOnly: true
_ChangeRecordObjPg.ChangeRecordItemIsNotEditable,
@UI.hidden: true
@ObjectModel.readOnly: true
_ChangeRecordObjPg.ChangeRecordItmIsAddDelEnabled,
@UI.hidden: true
@UI.lineItem: [{importance:#HIGH, hidden: true }]
@EndUserText.label: 'Digital Signature Status'
@ObjectModel.foreignKey.association: '_DigSignStatusText'
@Consumption: { valueHelp: '_DigSignStatusText' }
ChgRecdItmDSgntr,
@UI.lineItem:[{hidden: true,importance:#LOW }]
@UI.hidden: true
@ObjectModel.readOnly: true
@ObjectModel.virtualElement : true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_I_DSGNTR_ENABLE'
cast( '' as boolean) as DigitalSignUserIsAuthorized,
@ObjectModel.readOnly: true
@UI.identification: [{importance: #LOW, position: 160 }]
@EndUserText.label: 'Digital Signature Status'
_DigSignStatusText.ChgRecdDigSignStatusTxt as ChgRecdDigSignStatusTxt,
@UI.identification: [{position: 170, importance: #MEDIUM }]
ChgRecdReasonForChange,
@UI.identification: [{position: 180, importance: #MEDIUM }]
ExpdCompltnDte,
@UI.identification: [{position: 190, importance: #MEDIUM }]
@Consumption.valueHelpDefinition: [{ entity : { name : 'C_ChangeRecdAuthznGrpVH' , element: 'ChgRecdNmbrAuthznGrp'}}]
ChgRecdAuthznGrpText,
@UI.lineItem:[{hidden: true,importance:#LOW }]
@UI.hidden: true
@ObjectModel.readOnly: true
@ObjectModel.virtualElement : true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CR_I_DSGNTR_ENABLE'
cast( '' as boolean) as ChgRecdObjDgtlSgntrEnable,
@ObjectModel.readOnly: true
@UI.hidden: true
_ChangeRecordObjPg.ChangeRecordLifecycleStatus as ChangeRecordLifecycleStatus,
@UI.hidden: true
@ObjectModel.readOnly: true
_ChangeRecordObjPg.ChangeRecordStatus,
@UI.hidden: true
@ObjectModel.readOnly: true
_ChangeRecordObjPg.ChangeRecordType as ChangeRecordType,
@UI.hidden: true
ChangeRecordUUID,
@UI.hidden: true
ChangeRecordReferenceType,
@UI.hidden: true
ChangeRecordReferenceSubtype,
@UI.hidden: true
ParentChangeRecordRefUUID,
@UI.hidden: true
ChangeRecordReference,
@UI.hidden: true
ChangeRecordVirtualRefInd,
_MaterialText,
_ProducedMatText,
_ChangeRecordItemRelVH,
_ProcessingStatusVH,
@ObjectModel.association.type: [ #TO_COMPOSITION_ROOT,#TO_COMPOSITION_PARENT ]
_ChangeRecordObjPg,
_ProcessingStatusTxt,
_DigSignStatusText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_CHANGERECDDIGSIGNSTATUSVH",
"C_CHANGERECORDOBJPG",
"I_CHGRECDREFDEFECTTP",
"P_MFGORDERDEFECTALLDETAIL"
],
"ASSOCIATED":
[
"C_CHANGERECDDIGSIGNSTATUSVH",
"C_CHANGERECORDOBJPG",
"C_CHGRECDITMRLVNCEDEFECTVH",
"C_CHGRECORDITEMPROCGSTATUSVH",
"I_CHGRECDITEMPROCGSTATUSTEXT",
"I_MATERIALTEXT",
"P_MFGORDERDEFECTALLDETAIL"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/