C_RAMnlRevnSprdgByPeriodTP

DDL: C_RAMNLREVNSPRDGBYPERIODTP Type: view_entity CONSUMPTION Package: ODATA_FARR_MANUALSPREADING

RA Manual Spreading By Period

C_RAMnlRevnSprdgByPeriodTP is a Consumption CDS View that provides data about "RA Manual Spreading By Period" in SAP S/4HANA. It reads from 1 data source (P_RAMnlRevnSprdgByPeriodTP) and exposes 12 fields with key fields RevenueAccountingContract, PerformanceObligation, FiscalYear, FiscalPeriod. It has 1 association to related views. It is exposed through 1 OData service (UI_MANUALSPREADING). Part of development package ODATA_FARR_MANUALSPREADING.

Data Sources (1)

SourceAliasJoin Type
P_RAMnlRevnSprdgByPeriodTP _SprdgByPeriodTP from

Associations (1)

CardinalityTargetAliasCondition
[1..1] C_RAContrManualSpreadingTP _Contract $projection.RevenueAccountingContract = _Contract.RevenueAccountingContract

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label RA Manual Spreading By Period view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #CONSUMPTION view

OData Services (1)

ServiceBindingVersionContractRelease
UI_MANUALSPREADING UI_MANUALSPREADING V4 C1 NOT_RELEASED

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY RevenueAccountingContract P_RAMnlRevnSprdgByPeriodTP RevenueAccountingContract
KEY PerformanceObligation P_RAMnlRevnSprdgByPeriodTP PerformanceObligation
KEY FiscalYear P_RAMnlRevnSprdgByPeriodTP FiscalYear
KEY FiscalPeriod P_RAMnlRevnSprdgByPeriodTP FiscalPeriod
FiscalYearPeriod
CompanyCode CompanyCode
AccountingPrinciple AccountingPrinciple
FulfilledAmountInSlsDocCrcy Previous Manual Spreading
RecgdCatchUpAmtInSlsDocCrcy RecgdCatchUpAmtInSlsDocCrcy Revenue Catch-up
ReportedFulfilledQuantity ReportedFulfilledQuantity Fulfilled Quantity
_PerformanceObligation _PerformanceObligation
_Contract _Contract
@AbapCatalog.viewEnhancementCategory: [ #NONE ]

@AccessControl.authorizationCheck: #MANDATORY

@EndUserText.label: 'RA Manual Spreading By Period'

@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.usageType: { serviceQuality: #X, sizeCategory: #L, dataClass: #MIXED }

@VDM.usage.type: [ #TRANSACTIONAL_PROCESSING_SERVICE ]
@VDM.viewType: #CONSUMPTION

define view entity C_RAMnlRevnSprdgByPeriodTP
  as select from P_RAMnlRevnSprdgByPeriodTP as _SprdgByPeriodTP

  association        to parent C_RAPerfOblgnManualSpreadingTP as _PerformanceObligation
    on  $projection.RevenueAccountingContract = _PerformanceObligation.RevenueAccountingContract
    and $projection.PerformanceObligation     = _PerformanceObligation.PerformanceObligation

  association [1..1] to C_RAContrManualSpreadingTP            as _Contract
    on $projection.RevenueAccountingContract = _Contract.RevenueAccountingContract

{
  key _SprdgByPeriodTP.RevenueAccountingContract,
  key _SprdgByPeriodTP.PerformanceObligation,
  key _SprdgByPeriodTP.FiscalYear,
  key _SprdgByPeriodTP.FiscalPeriod,

      @Semantics.fiscal.yearPeriod: true
      cast(  concat(FiscalYear,FiscalPeriod) as fins_fyearperiod)                      as FiscalYearPeriod,
      
      CompanyCode,

      AccountingPrinciple,

      @EndUserText.label: 'Previous Manual Spreading '
      @Semantics.amount.currencyCode: 'SalesDocumentCurrency'
      cast(FulfilledAmountInSlsDocCrcy as farr_mnlsprdg_prev_mnl_sprdg preserving type) as FulfilledAmountInSlsDocCrcy,

      @Semantics.amount.currencyCode: 'SalesDocumentCurrency'
      cast(DeltaRecognizedAmtInSlsDocCrcy + RecgdCatchUpAmtInSlsDocCrcy
           as farr_mnlsprdg_recgbl_revenue)                                             as DeltaRecognizedAmtInSlsDocCrcy,

      @EndUserText.label: 'Revenue Catch-up '
      @Semantics.amount.currencyCode: 'SalesDocumentCurrency'
      RecgdCatchUpAmtInSlsDocCrcy,

      @EndUserText.label: 'New Recognizable Revenue '
      @ObjectModel.editableFieldFor: 'DeltaRecognizedAmtInSlsDocCrcy'
      @Semantics.amount.currencyCode: 'SalesDocumentCurrency'
      cast(DeltaRecognizedAmtInSlsDocCrcy + RecgdCatchUpAmtInSlsDocCrcy
      as farr_mnlsprdg_new_recgbl_rev)                                                  as DeltaRecgdAmtInSlsDocCrcyFoEd,

      case
        when SalesDocumentCurrency = _PerformanceObligation.SalesDocumentCurrency
        then SalesDocumentCurrency
        else _PerformanceObligation.SalesDocumentCurrency
      end                                                                               as SalesDocumentCurrency,

      @EndUserText.label: 'Fulfilled Quantity '
      @Semantics.quantity.unitOfMeasure: 'FulfilledQuantityUnit'
      ReportedFulfilledQuantity                                                         as ReportedFulfilledQuantity,

      case
        when FulfilledQuantityUnit = _PerformanceObligation.PerfOblgnEffectiveQuantityUnit
        then FulfilledQuantityUnit
        else _PerformanceObligation.PerfOblgnEffectiveQuantityUnit
      end                                                                               as FulfilledQuantityUnit,


      cast(case
             when NotEditableSplit = 'X' or NotEditablePeriod = 'X'
             then ' '
             else 'X'
           end as farr_revninfyperdiseditable)                                          as RevnInFYPerdIsEditable,

      _PerformanceObligation,
      _Contract

}
where _PerformanceObligation.PerfOblgnIsSoftDeleted    = ''
  and _PerformanceObligation.PerfOblgnFulfillmentType  = 'T'
  and _PerformanceObligation.RAPerfOblgnCategory      <> 'C'
  and _PerformanceObligation.RAPerfOblgnDistinctType   = 'D'
// and _Contract.RAContractHasAssetsImpairment         <> 'X'