//@EndUserText.label: 'In-House Repair: Status of Item'
@VDM: {
private: true,
viewType: #COMPOSITE
}
//@Analytics: {
// dataCategory: #DIMENSION,
// internalName: #LOCAL
//}
@AccessControl: {
authorizationCheck: #NOT_REQUIRED
}
@ObjectModel: {
representativeKey: 'InhRepairItemStatus',
usageType: {serviceQuality: #B, sizeCategory: #S, dataClass: #CUSTOMIZING}
}
@Metadata: {
ignorePropagatedAnnotations: true
}
@ClientHandling: {
algorithm: #SESSION_VARIABLE
}
@AbapCatalog: {
sqlViewName: 'INHREPITMSTAT',
compiler.compareFilter: true,
preserveKey: true
}
define view P_InHouseRepairItemStatus
as select from I_CustMgmtLfcycUsrStsMapping as UserStatusMapping
inner join I_CustMgmtDocItemCategory as InhRepairItemCategory on InhRepairItemCategory.CustMgmtDocItemObjectType = 'BUS2000257'
and UserStatusMapping.StatusProfile = InhRepairItemCategory.StatusProfile
association [0..1] to I_CustMgmtDocItemCategory as _InhRepairItemCategory on $projection.InhRepairItemCategory = _InhRepairItemCategory.CustMgmtDocItemCategory
association [0..*] to I_InhRepairItemStatusText as _InhRepairItemStatusText on $projection.InhRepairItemStatus = _InhRepairItemStatusText.InhRepairItemStatus
and $projection.InhRepairItemCategory = _InhRepairItemStatusText.InhRepairItemCategory
{
@ObjectModel.text.association: '_InhRepairItemStatusText'
key CustMgmtLifecycleUserStatus as InhRepairItemStatus,
@ObjectModel.foreignKey.association: '_InhRepairItemCategory'
key CustMgmtDocItemCategory as InhRepairItemCategory,
UserStatusMapping.UserStatus,
/* Associations */
_InhRepairItemStatusText,
_InhRepairItemCategory
}
where
UserStatusMapping.CustMgmtLifecycleUserStsField = 'STAT_LIFECYCLE'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTDOCITEMCATEGORY",
"I_CUSTMGMTLFCYCUSRSTSMAPPING"
],
"ASSOCIATED":
[
"I_CUSTMGMTDOCITEMCATEGORY",
"I_INHREPAIRITEMSTATUSTEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/