C_ObjPgMaintOrderCost

DDL: C_OBJPGMAINTORDERCOST Type: view_entity CONSUMPTION Package: ODATA_EAM_ORD_MAN

Maintenance Order Cost

C_ObjPgMaintOrderCost is a Consumption CDS View that provides data about "Maintenance Order Cost" in SAP S/4HANA. It reads from 1 data source (I_MaintenanceOrderCost) and exposes 16 fields with key fields MaintenanceOrderInternalID, ControllingAreaCurrency, ControllingObjectDebitType, ControllingValueType, FiscalYear. It has 1 association to related views. Part of development package ODATA_EAM_ORD_MAN.

Data Sources (1)

SourceAliasJoin Type
I_MaintenanceOrderCost I_MaintenanceOrderCost from

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_MaintenanceOrder _MaintenanceOrder _MaintenanceOrder.MaintenanceOrderInternalID = $projection.MaintenanceOrderInternalID

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Maintenance Order Cost view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #CONSUMPTION view

Fields (16)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceOrderInternalID I_MaintenanceOrderCost MaintenanceOrderInternalID
KEY ControllingAreaCurrency I_MaintenanceOrderCost ControllingAreaCurrency
KEY ControllingObjectDebitType I_MaintenanceOrderCost ControllingObjectDebitType
KEY ControllingValueType I_MaintenanceOrderCost ControllingValueType
KEY FiscalYear I_MaintenanceOrderCost FiscalYear
KEY ValueCategory I_MaintenanceOrderCost ValueCategory
KEY PlanningVersion I_MaintenanceOrderCost PlanningVersion
KEY HighestPeriodInRecord I_MaintenanceOrderCost HighestPeriodInRecord
KEY BudgetType I_MaintenanceOrderCost BudgetType
KEY AccountingIndicatorCode I_MaintenanceOrderCost AccountingIndicatorCode
KEY ResultCategory I_MaintenanceOrderCost ResultCategory
ValueCategoryName Value Category
EstimatedCost
PlannedCost
ActualCost
_MaintenanceOrder _MaintenanceOrder
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Maintenance Order Cost'

@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory: #L

@VDM.viewType: #CONSUMPTION

define view entity C_ObjPgMaintOrderCost
  as select from I_MaintenanceOrderCost

  association [1..1] to I_MaintenanceOrder as _MaintenanceOrder on _MaintenanceOrder.MaintenanceOrderInternalID = $projection.MaintenanceOrderInternalID
{
      @UI.hidden: true
  key I_MaintenanceOrderCost.MaintenanceOrderInternalID,

      @UI.hidden: true
  key I_MaintenanceOrderCost.ControllingAreaCurrency,

      @UI.hidden: true
  key I_MaintenanceOrderCost.ControllingObjectDebitType,

      @UI.hidden: true
  key I_MaintenanceOrderCost.ControllingValueType,

      @UI.hidden: true
  key I_MaintenanceOrderCost.FiscalYear,

      @UI.hidden: true
  key I_MaintenanceOrderCost.ValueCategory,

      @UI.hidden: true
  key I_MaintenanceOrderCost.PlanningVersion,

      @UI.hidden: true
  key I_MaintenanceOrderCost.HighestPeriodInRecord,

      @UI.hidden: true
  key I_MaintenanceOrderCost.BudgetType,

      @UI.hidden: true
  key I_MaintenanceOrderCost.AccountingIndicatorCode,

      @UI.hidden: true
  key I_MaintenanceOrderCost.ResultCategory,

      @EndUserText.label: 'Value Category'
      @EndUserText.quickInfo: 'Value Category'
      @UI: {
          lineItem: [{position: 10, importance: #HIGH, label: 'Value Category' },
          { position: 10, qualifier: 'MyInbox_Items', importance: #HIGH, label: 'Value Category' }]
      }
      cast('' as char30)       as ValueCategoryName,
      /* Todo: Implement I_ValueCategory / copy from Z
      _ValueCategory._Text[1:Language = $session.system_language].ValueCategoryName as ValueCategoryName,
      */
      @EndUserText.quickInfo: 'Estimated Cost'  
      @Semantics.amount.currencyCode: 'ControllingAreaCurrency'
      @UI: {
          lineItem: [{position: 20, importance: #HIGH, label: 'Estimated Cost' },
          { position: 20, qualifier: 'MyInbox_Items', importance: #HIGH, label: 'Estimated Cost' }]
      }
      cast('0' as dkgrkossch ) as EstimatedCost,
      
      @EndUserText.quickInfo: 'Planned Cost'  
      @Semantics.amount.currencyCode: 'ControllingAreaCurrency'
      @UI: {
          lineItem: [{position: 30, importance: #HIGH, label: 'Planned Cost' },
          { position: 30, qualifier: 'MyInbox_Items', importance: #HIGH, label: 'Planned Cost' }]
      }
      cast('0' as dkgrkoplan ) as PlannedCost,
      
      @EndUserText.quickInfo: 'Actual Cost'  
      @Semantics.amount.currencyCode: 'ControllingAreaCurrency'
      @UI: {
          lineItem: [{position: 40, importance: #HIGH, label: 'Actual Cost' }]
      }
      cast('0' as dkgrkoplan ) as ActualCost,

      //association

      _MaintenanceOrder
}