@EndUserText.label: 'Utilities Billing Order Errors With Details'
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@AccessControl.privilegedAssociations: ['_User','_PreviousUser']
@UI.headerInfo: {
typeName: '{@i18n>@BILLING_ORDER}',
typeNamePlural: '{@i18n>@BILLING_ORDERS}',
title: {
type: #STANDARD,
value: 'UtilitiesContract'
}
}
@UI.presentationVariant: [ {
requestAtLeast: [ 'UtilitiesContract',
'ContractAccount',
'BusinessPartner',
'UtilitiesInstallation',
'BPEMCase',
'AddressID' ]
} ]
define view entity C_UtilsBillgOrdErrorsWithDets
as select from I_UtilsBillingOrder as UtilsBillingOrder
left outer join I_LatestOpenBPEMCase as LatestOpenBPEMCase on UtilsBillingOrder.UtilitiesInstallation = LatestOpenBPEMCase.BPEMCaseMainObject
and LatestOpenBPEMCase.BPEMBusinessProcessCode = 'EBI00001'
association [0..*] to C_BPEMCaseTP as _BPEMCaseTP on $projection.UtilitiesInstallation = _BPEMCaseTP.BPEMCaseMainObject
and _BPEMCaseTP.BPEMCaseMainObjectType = 'INSTLN'
and _BPEMCaseTP.BPEMBusinessProcessCode = 'EBI00001'
association [1..1] to I_CalendarDate as _CalendarDate on $projection.ScheduledUtilitiesBillingDate = _CalendarDate.CalendarDate
association [0..1] to I_OpenBPEMCaseStatusVH as _OpenBPEMCaseStatus on $projection.BPEMCaseStatus = _OpenBPEMCaseStatus.BPEMCaseStatus
association [1..1] to I_ContractAccountPartner as _ContractAccountPartner on $projection.ContractAccount = _ContractAccountPartner.ContractAccount
and $projection.BusinessPartner = _ContractAccountPartner.BusinessPartner
{
@UI.lineItem:[ { position: 30, importance: #HIGH, type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams' } ]
@UI.fieldGroup: [{ qualifier: 'General02', position: 10, groupLabel: '{@i18n>@GENERAL02}', type:#WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams', importance: #HIGH, value: 'UtilitiesContract' }]
@Consumption.semanticObject: 'UtilitiesContract'
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_UtilitiesContractVH', element: 'UtilitiesContract' } }]
key UtilsBillingOrder.UtilitiesContract,
@UI.lineItem:[ { position: 40, importance: #HIGH, type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams' } ]
@UI.fieldGroup: [{ qualifier: 'General03', position: 10,groupLabel: '{@i18n>@GENERAL03}', importance: #HIGH, type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams', value: 'UtilitiesInstallation'},
{ qualifier: 'Header01', position: 30, importance: #HIGH, type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams', value: 'UtilitiesInstallation'}]
@Consumption.semanticObject: 'UtilitiesInstallation'
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_UtilitiesInstallationVH', element: 'UtilitiesInstallation' } }]
@ObjectModel.foreignKey.association: '_UtilitiesInstallation'
key UtilsBillingOrder.UtilitiesInstallation,
@Semantics.businessDate.at: true
@UI.selectionField: [ {position: 20 }]
@UI.lineItem: [{ position: 20, importance: #HIGH }]
@UI.fieldGroup: [{ qualifier: 'Header01', position: 10, importance: #HIGH, value: 'ScheduledUtilitiesBillingDate'}]
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_MeterReadingPortnSchedVH', element: 'ScheduledUtilitiesBillingDate'},
additionalBinding: [{ localElement: 'UtilitiesPortion', element: 'UtilitiesPortion' }] }]
key UtilsBillingOrder.ScheduledUtilitiesBillingDate,
@UI.textArrangement: #TEXT_ONLY
@ObjectModel.foreignKey.association:'_UtilitiesBillingReason'
@UI.lineItem: [{ position: 50, importance: #HIGH }]
@UI.selectionField: [ {position: 30 }]
@UI.fieldGroup: [{ qualifier: 'Header02', position: 20, importance: #HIGH, value: 'UtilitiesBillingReason'}]
key UtilsBillingOrder.UtilitiesBillingReason,
@UI.lineItem:[ { position: 70, importance: #HIGH, type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayBPEMCaseWithParams' } ]
@Consumption.semanticObject: 'UtilitiesBillingOrder'
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_BPEMCaseVH', element: 'BPEMCase' } }]
cast(LatestOpenBPEMCase._BPEMCase.BPEMCase as e_clarificationcase_vdm preserving type) as BPEMCase,
@UI.textArrangement: #TEXT_SEPARATE
@UI.fieldGroup: [{ qualifier: 'General01', position: 10, groupLabel: '{@i18n>@GENERAL01}', type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams', importance: #HIGH, value: 'ContractAccount' }]
@Consumption.semanticObject: 'ContractAccount'
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_ContractAccountPartnerVH', element: 'ContractAccount'} }]
@ObjectModel.foreignKey.association: '_ContrAcc'
UtilsBillingOrder.ContractAccount,
@UI.textArrangement: #TEXT_FIRST
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_BPEMCaseCategoryVH', element: 'BPEMCaseCategory' } }]
@ObjectModel.foreignKey.association: '_BPEMCaseCategory'
cast(LatestOpenBPEMCase._BPEMCase.BPEMCaseCategory as e_clarcasecategory_vdm preserving type) as BPEMCaseCategory,
@UI.textArrangement: #TEXT_FIRST
@ObjectModel.foreignKey.association: '_User'
@ObjectModel.text.element: [ 'UserDescription' ]
LatestOpenBPEMCase._BPEMCase.BPEMCaseCurrentProcessor,
@UI.hidden: true
LatestOpenBPEMCase._BPEMCase._User.UserDescription,
@UI.textArrangement: #TEXT_FIRST
@ObjectModel.foreignKey.association: '_PreviousUser'
@ObjectModel.text.element: [ 'LastChangedByUserDescription' ]
cast(LatestOpenBPEMCase._BPEMCase.BPEMCasePreviousProcessor as e_clarcaseprevproc_vdm preserving type) as BPEMCasePreviousProcessor,
@UI.hidden: true
LatestOpenBPEMCase._BPEMCase._PreviousUser.UserDescription as LastChangedByUserDescription,
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_BPEMBusinessProcessCodeVH', element: 'BPEMBusinessProcessCode'} }]
@ObjectModel.foreignKey.association: '_BPEMBusinessProcessCode'
LatestOpenBPEMCase._BPEMCase.BPEMBusinessProcessCode,
@ObjectModel.foreignKey.association: '_BPEMCaseForwardReason'
@UI.textArrangement: #TEXT_FIRST
LatestOpenBPEMCase._BPEMCase.BPEMCaseForwardingReason,
// @Semantics.businessDate.at: true
cast(LatestOpenBPEMCase._BPEMCase.BPEMCaseCreationDate as e_clarcasecreationdate_vdm preserving type) as BPEMCaseCreationDate,
// @Semantics.businessDate.at: true
cast(LatestOpenBPEMCase._BPEMCase.BPEMCaseDueDate as e_clarcaseduedate_vdm preserving type) as BPEMCaseDueDate,
// @Semantics.businessDate.at: true
cast(LatestOpenBPEMCase._BPEMCase.BPEMCaseOriginalDate as e_clarcaseorigdate_vdm preserving type) as BPEMCaseOriginalDate,
@ObjectModel.foreignKey.association: '_BPEMCasePriority'
cast(LatestOpenBPEMCase._BPEMCase.BPEMCasePriority as e_clarcasepriority_vdm preserving type) as BPEMCasePriority,
@UI.textArrangement: #TEXT_FIRST
@ObjectModel.foreignKey.association: '_OpenBPEMCaseStatus'
cast(LatestOpenBPEMCase._BPEMCase.BPEMCaseStatus as e_clarcasestatus_vdm) as BPEMCaseStatus,
@UI.textArrangement: #TEXT_FIRST
@UI.selectionField: [ {position: 10 }]
@UI.lineItem: [{ position: 10, importance: #HIGH }]
@UI.fieldGroup: [{ qualifier: 'Header02', position: 10, importance: #HIGH, value: 'UtilitiesPortion', groupLabel: '{@i18n>@HEADER02}' }]
@ObjectModel.foreignKey.association:'_UtilitiesPortion'
UtilsBillingOrder.UtilitiesPortion,
// @Semantics.businessDate.at: true
UtilsBillingOrder.ScheduledMeterReadingDate,
@UI.textArrangement: #TEXT_FIRST
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_CompanyCodeStdVH', element: 'CompanyCode'} }]
@ObjectModel.foreignKey.association:'_CompanyCode'
UtilsBillingOrder.CompanyCode,
@UI.textArrangement: #TEXT_FIRST
@ObjectModel.foreignKey.association:'_Division'
@UI.fieldGroup: [{ qualifier: 'General03',groupLabel: '{@i18n>@GENERAL03}', position: 30, importance: #HIGH, value: 'Division'}]
@UI.selectionField: [ {position: 40 }]
@UI.lineItem: [{ position: 60, importance: #HIGH }]
UtilsBillingOrder.Division,
@UI.textArrangement: #TEXT_FIRST
@UI.fieldGroup: [{ qualifier: 'General02', position: 70, importance: #HIGH, value: 'UtilsBillgBlockReason' }]
@ObjectModel.foreignKey.association:'_UtilsBillgBlockReason'
UtilsBillingOrder.UtilsBillgBlockReason,
@UI.textArrangement: #TEXT_FIRST
@UI.fieldGroup: [{ qualifier: 'General02', position: 80, importance: #HIGH, value: 'UtilsBillgUnblockReason' }]
@ObjectModel.foreignKey.association: '_UtilsBillgUnblockReason'
UtilsBillingOrder.UtilsBillgUnblockReason,
@UI.textArrangement: #TEXT_FIRST
@UI.fieldGroup: [{ qualifier: 'General03',groupLabel: '{@i18n>@GENERAL03}', position: 40, importance: #HIGH, value: 'UtilitiesBillingClass'}]
@ObjectModel.foreignKey.association: '_UtilsBillingClass'
UtilsBillingOrder.UtilitiesBillingClass,
@UI.textArrangement: #TEXT_FIRST
@ObjectModel.foreignKey.association: '_BusinessPartner'
@UI.fieldGroup: [{ qualifier: 'Header01', position: 20, importance: #HIGH, value: 'BusinessPartner', type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'displayWithParams' }]
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_BusinessPartnerVH', element: 'BusinessPartner'} }]
@Consumption.semanticObject: 'CAContractPartner'
UtilsBillingOrder.BusinessPartner,
@UI.textArrangement: #TEXT_FIRST
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_UtilitiesRateCategoryVH', element: 'UtilitiesRateCategory'} }]
@UI.fieldGroup: [{ qualifier: 'Header02', position: 30, importance: #HIGH, value: 'UtilitiesRateCategory'}]
@ObjectModel.foreignKey.association: '_UtilitiesRateCategory'
UtilsBillingOrder.UtilitiesRateCategory,
@ObjectModel.foreignKey.association:'_MeterReadingUnit'
UtilsBillingOrder.MeterReadingUnit,
@Semantics.businessDate.from: true
@UI.fieldGroup: [{ qualifier: 'General02', position: 20, importance: #HIGH, value: 'UtilitiesMoveInDate' },
{ qualifier: 'OPHeader' }] //CHECKMAN: qualifier: 'OPHeader'is not allowed multiple time
UtilsBillingOrder.UtilitiesMoveInDate,
@Semantics.businessDate.to: true
UtilsBillingOrder.UtilitiesMoveOutDate,
@UI.textArrangement: #TEXT_FIRST
@Consumption.filter.hidden: true
@UI.fieldGroup: [{ qualifier: 'General02', position: 30, importance: #HIGH, value: 'UtilsDefaultBdgtBillgCycle' }]
@ObjectModel.foreignKey.association: '_UtilitiesBdgtBillgCyc'
UtilsBillingOrder._UtilitiesPortion.UtilsDefaultBdgtBillgCycle,
@Consumption.filter.hidden: true
@UI.fieldGroup: [{ qualifier: 'General02', position: 40, importance: #HIGH, value: 'UtilsContrSpcfcBdgtBillgCycle' }]
@ObjectModel.foreignKey.association: '_UtilsContrSpcfcBdgtBillgCyc'
UtilsBillingOrder.UtilsContrSpcfcBdgtBillgCycle,
@UI.textArrangement: #TEXT_FIRST
@UI.fieldGroup: [{ qualifier: 'General02', position: 50, importance: #HIGH, value: 'UtilitiesAccountDetnCode' }]
@ObjectModel.foreignKey.association: '_UtilsAccountDetnCode'
UtilsBillingOrder.UtilitiesAccountDetnCode,
@UI.fieldGroup: [{ qualifier: 'General02', position: 60, importance: #HIGH, value: 'UtilsBillgOutsortingReason' }]
@Consumption.valueHelpDefinition:[{ entity: {name: 'I_UtilsBillgOutsortingGroupVH', element: 'UtilsBillgOutsortingReason'} }]
@ObjectModel.foreignKey.association: '_UtilsBillgOutsortingGroup'
@Consumption.filter.hidden: true
UtilsBillingOrder.UtilsBillgOutsortingReason,
@UI.fieldGroup: [{ qualifier: 'General03', position: 50, importance: #HIGH, value: 'UtilsExternalPointOfDelivery' }]
@Consumption.filter.hidden: true
UtilsBillingOrder.UtilsExternalPointOfDelivery,
@UI.hidden: true
case when LatestOpenBPEMCase._BPEMCase.BPEMCase is null
then cast('' as boolean )
else cast('X' as boolean)
end as BPEMCaseIsExisting,
@UI.multiLineText: true
@Consumption.filter.hidden: true
@UI.fieldGroup: [{ qualifier: 'General03', position: 20, importance: #HIGH, value: 'UtilsPostalAddressFormatted', label: '{@i18n>@Address}' }]
cast('' as abap.sstring( 256 )) as UtilsPostalAddressFormatted,
@UI.hidden: true
UtilsBillingOrder._UtilitiesInstallation._UtilitiesPremise._UtilsTechObjLocationAddr.AddressID,
@UI.hidden: true
UtilsBillingOrder.AuthorizationGroup,
@ObjectModel.foreignKey.association: '_CalendarMonth'
@ObjectModel.text.element: [ 'CalendarMonthName' ]
@UI.textArrangement: #TEXT_ONLY
cast(_CalendarDate.CalendarMonth as e_schdldmnth_vdm preserving type ) as CalendarMonth,
@UI.hidden: true
_CalendarDate._CalendarMonth._Text[1: Language = $session.system_language].CalendarMonthName,
@ObjectModel.foreignKey.association: '_CalendarYear'
cast(_CalendarDate.CalendarYear as e_schdldyr_vdm preserving type ) as CalendarYear,
/* Associations */
@Consumption.filter.hidden: true
UtilsBillingOrder._CompanyCode,
@Consumption.filter.hidden: true
UtilsBillingOrder._Division,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilitiesBillingReason,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilitiesInstallation,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilitiesPortion,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsBillgBlockReason,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsBillgUnblockReason,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsBillingClass,
@Consumption.filter.hidden: true
UtilsBillingOrder._BusinessPartner,
@Consumption.filter.hidden: true
UtilsBillingOrder._ContrAcc,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilitiesRateCategory,
@Consumption.filter.hidden: true
UtilsBillingOrder._MeterReadingUnit,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsContrSpcfcBdgtBillgCyc,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsBillgOutsortingGroup,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilitiesPortion._UtilitiesBdgtBillgCyc,
@Consumption.filter.hidden: true
UtilsBillingOrder._UtilsAccountDetnCode,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._BPEMBusinessProcessCode,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._BPEMCaseCategory,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._BPEMCasePriority,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._User,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._PreviousUser,
@Consumption.filter.hidden: true
LatestOpenBPEMCase._BPEMCase._BPEMCaseForwardReason,
@Consumption.filter.hidden: true
_BPEMCaseTP,
@Consumption.filter.hidden: true
_CalendarDate,
@Consumption.filter.hidden: true
_CalendarDate._CalendarYear,
@Consumption.filter.hidden: true
_CalendarDate._CalendarMonth,
@Consumption.filter.hidden: true
_OpenBPEMCaseStatus,
@Consumption.filter.hidden: true
_ContractAccountPartner
}
where
UtilsBillingOrder.UtilsBillingOrderStatus = '2'
and UtilsBillingOrder.UtilsBillingOrderIndicator = 'X'
and UtilsBillingOrder.UtilsInstTimeSliceIsValid = 'X'
and UtilsBillingOrder.UtilitiesContractIsActive = 'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CALENDARDATE",
"I_CALENDARMONTH",
"I_CALENDARMONTHTEXT",
"I_CONTRACTACCOUNTPARTNER",
"I_LATESTOPENBPEMCASE",
"I_OPENBPEMCASE",
"I_USER",
"I_UTILITIESINSTALLATION",
"I_UTILITIESPORTION",
"I_UTILITIESPREMISE",
"I_UTILSBILLINGORDER",
"I_UTILSTECHOBJLOCATIONADDR"
],
"ASSOCIATED":
[
"C_BPEMCASETP",
"I_BPEMBUSINESSPROCESSCODE",
"I_BPEMCASECATEGORY",
"I_BPEMCASEFORWARDREASON",
"I_BPEMCASEPRIORITY",
"I_BUSINESSPARTNER",
"I_CALENDARDATE",
"I_CALENDARMONTH",
"I_CALENDARYEAR",
"I_COMPANYCODE",
"I_CONTRACTACCOUNTHEADER",
"I_CONTRACTACCOUNTPARTNER",
"I_DIVISION",
"I_METERREADINGUNIT",
"I_OPENBPEMCASESTATUSVH",
"I_USER",
"I_UTILITIESBILLINGREASON",
"I_UTILITIESINSTALLATION",
"I_UTILITIESPORTION",
"I_UTILITIESRATECATEGORY",
"I_UTILSACCOUNTDETNCODE",
"I_UTILSBILLGBLOCKREASON",
"I_UTILSBILLGOUTSORTINGGROUP",
"I_UTILSBILLGUNBLOCKREASON",
"I_UTILSBILLINGCLASS",
"I_UTILSCONTRSPCFCBDGTBILLGCYC",
"I_UTILSPORTNDFLTBDGTBILLGCYC"
],
"BASE":
[
"I_CALENDARDATE",
"I_OPENBPEMCASE",
"I_UTILITIESPORTION",
"I_UTILSBILLINGORDER"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/