P_ProjRevnRecgnRealTmeIss

DDL: P_PROJREVNRECGNREALTMEISS Type: view_entity CONSUMPTION Package: FINS_REV_REC_PECRUN

Event based rev. rec. Real-time issue

P_ProjRevnRecgnRealTmeIss is a Consumption CDS View that provides data about "Event based rev. rec. Real-time issue" in SAP S/4HANA. It reads from 6 data sources and exposes 37 fields with key field ApplicationLog. Part of development package FINS_REV_REC_PECRUN.

Data Sources (6)

SourceAliasJoin Type
P_EBRRRealTmeApplog Applog from
P_ProjRevnRecgnRealTmeApplLog AppLog union
I_CompanyCode CompanyCode inner
I_CompanyCode CompanyCode inner
I_RevnRecgnConstcyLdgrEvalArea ConstcyLdgrEvalArea inner
I_WBSElementBasicData WBSElement inner

Annotations (8)

NameValueLevelField
Metadata.ignorePropagatedAnnotations true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Event based rev. rec. Real-time issue view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
VDM.private true view
VDM.viewType #CONSUMPTION view

Fields (37)

KeyFieldSource TableSource FieldDescription
KEY ApplicationLog P_ProjRevnRecgnRealTmeApplLog ApplicationLog
ReferenceDocumentType P_ProjRevnRecgnRealTmeApplLog ReferenceDocumentType
ReferenceOrganizationalUnits P_ProjRevnRecgnRealTmeApplLog ReferenceOrganizationalUnits
ReferenceDocumentContext P_ProjRevnRecgnRealTmeApplLog ReferenceDocumentContext
ReferenceDocument P_ProjRevnRecgnRealTmeApplLog ReferenceDocument
FiscalPeriod P_ProjRevnRecgnRealTmeApplLog FiscalPeriod
FiscalYear P_ProjRevnRecgnRealTmeApplLog FiscalYear
CompanyCode P_ProjRevnRecgnRealTmeApplLog CompanyCode
Project
ProjectExternalID
AccountAssignmentType P_ProjRevnRecgnRealTmeApplLog AccountAssignmentType
NumberOfOpenErrorMessages P_ProjRevnRecgnRealTmeApplLog NumberOfOpenErrorMessages
ApplicationLogHandle P_ProjRevnRecgnRealTmeApplLog ApplicationLogHandle
ApplicationLogSubobject P_ProjRevnRecgnRealTmeApplLog ApplicationLogSubobject
CompanyCodeName I_CompanyCode CompanyCodeName
ToFiscalYearPeriod
FiscalYearPeriod
ReferenceDocumentTypeName ReferenceDocumentTypeText ReferenceDocumentTypeName
ApplicationLog
ReferenceDocumentType P_ProjRevnRecgnRealTmeApplLog ReferenceDocumentType
ReferenceOrganizationalUnits P_ProjRevnRecgnRealTmeApplLog ReferenceOrganizationalUnits
ReferenceDocumentContext P_ProjRevnRecgnRealTmeApplLog ReferenceDocumentContext
ReferenceDocument P_ProjRevnRecgnRealTmeApplLog ReferenceDocument
FiscalPeriod P_ProjRevnRecgnRealTmeApplLog FiscalPeriod
FiscalYear P_ProjRevnRecgnRealTmeApplLog FiscalYear
CompanyCode P_ProjRevnRecgnRealTmeApplLog CompanyCode
Project
ProjectExternalID
AccountAssignmentType
NumberOfOpenErrorMessages P_ProjRevnRecgnRealTmeApplLog NumberOfOpenErrorMessages
ApplicationLogHandle P_ProjRevnRecgnRealTmeApplLog ApplicationLogHandle
ApplicationLogSubobject P_ProjRevnRecgnRealTmeApplLog ApplicationLogSubobject
CompanyCodeName I_CompanyCode CompanyCodeName
ToFiscalYearPeriod
FiscalYearPeriod
ReferenceDocumentTypeName ReferenceDocumentTypeText ReferenceDocumentTypeName
RealTimeIssueLogVersion
@Metadata.ignorePropagatedAnnotations: true
@AccessControl.authorizationCheck: #NOT_REQUIRED

@Consumption.dbHints: ['NO_SUBPLAN_SHARING','OPTIMIZATION_LEVEL(COST_BASED)', 'NO_PREDICATE_SIMPLIFICATION']

@EndUserText.label: 'Event based rev. rec. Real-time issue'

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

@VDM.private: true

@VDM.viewType: #CONSUMPTION

define view entity P_ProjRevnRecgnRealTmeIss
  //----------------------------------------------------------------------------------------------------------------------------------------------------------------

  //1st Long AppLog

  //----------------------------------------------------------------------------------------------------------------------------------------------------------------

  as select from           P_EBRRRealTmeApplog         as Applog

    inner join             I_CompanyCode               as CompanyCode               on Applog.CompanyCode = CompanyCode.CompanyCode

    left outer to one join I_WBSElementBasicData       as WBSElement                on WBSElement.WBSElementInternalID = Applog.WBSElementInternalID

    left outer to one join I_ReferenceDocumentTypeText as ReferenceDocumentTypeText on  Applog.ReferenceDocumentType       = ReferenceDocumentTypeText.ReferenceDocumentType
                                                                                    and ReferenceDocumentTypeText.Language = $session.system_language

{
  key Applog.ApplicationLog,
      Applog.ReferenceDocumentType,
      Applog.ReferenceOrganizationalUnits,
      Applog.ReferenceDocumentContext,
      Applog.ReferenceDocument,
      Applog.FiscalPeriod,
      Applog.FiscalYear,
      Applog.CompanyCode                                           as CompanyCode,
      WBSElement._Project.Project                                  as Project,
      WBSElement._Project.ProjectExternalID,
      Applog.AccountAssignmentType,
      Applog.NumberOfOpenErrorMessages,
      Applog.ApplicationLogHandle,
      Applog.ApplicationLogSubobject,
      CompanyCode.CompanyCodeName                                  as CompanyCodeName,

      concat(Applog.FiscalPeriod, concat('.', Applog.FiscalYear) ) as ToFiscalYearPeriod,
      //Period in the format yearmont 2019006

      concat(Applog.FiscalYear, Applog.FiscalPeriod)               as FiscalYearPeriod,

      ReferenceDocumentTypeText.ReferenceDocumentTypeName          as ReferenceDocumentTypeName,
      Applog.RealTimeIssueLogVersion                               as RealTimeIssueLogVersion
}
where
     Applog.AccountAssignmentType = 'PR'
  or Applog.AccountAssignmentType = '' //Project corrupted logs


//----------------------------------------------------------------------------------------------------------------------------------------------------------------

//2nd for NPI

//----------------------------------------------------------------------------------------------------------------------------------------------------------------


union select from        P_ProjRevnRecgnRealTmeApplLog  as AppLog //NPI part


  inner join             I_CompanyCode                  as CompanyCode               on AppLog.CompanyCode = CompanyCode.CompanyCode

  inner join             I_RevnRecgnConstcyLdgrEvalArea as ConstcyLdgrEvalArea       on ConstcyLdgrEvalArea.CompanyCode = AppLog.CompanyCode

  inner join             I_WBSElementBasicData          as WBSElement                on WBSElement.WBSElementInternalID = AppLog.WBSElementInternalID

  left outer to one join I_ReferenceDocumentTypeText    as ReferenceDocumentTypeText on  AppLog.ReferenceDocumentType       = ReferenceDocumentTypeText.ReferenceDocumentType
                                                                                     and ReferenceDocumentTypeText.Language = $session.system_language

{
  key AppLog.ApplicationLog,
      AppLog.ReferenceDocumentType,
      AppLog.ReferenceOrganizationalUnits,
      AppLog.ReferenceDocumentContext,
      AppLog.ReferenceDocument,
      AppLog.FiscalPeriod,
      AppLog.FiscalYear,
      AppLog.CompanyCode,
      WBSElement._Project.Project,
      WBSElement._Project.ProjectExternalID,
      //dummy as it not needed for NPI

      cast( 'PR' as char2 )                                        as AccountAssignmentType,
      AppLog.NumberOfOpenErrorMessages,
      AppLog.ApplicationLogHandle,
      AppLog.ApplicationLogSubobject,
      CompanyCode.CompanyCodeName,

      //Period in the format month.year 006.2019

      concat(AppLog.FiscalPeriod, concat('.', AppLog.FiscalYear) ) as ToFiscalYearPeriod,
      //Period in the format yearmont 2019006

      concat(AppLog.FiscalYear, AppLog.FiscalPeriod)               as FiscalYearPeriod,

      ReferenceDocumentTypeText.ReferenceDocumentTypeName          as ReferenceDocumentTypeName,
      cast ( ' ' as fins_trr_log_version preserving type )         as RealTimeIssueLogVersion

}
group by

  AppLog.ApplicationLog,
  AppLog.ReferenceDocument,
  AppLog.ReferenceOrganizationalUnits,
  AppLog.ReferenceDocumentContext,
  AppLog.ReferenceDocumentType,
  AppLog.CompanyCode,
  CompanyCode.CompanyCodeName,
  AppLog.NumberOfOpenErrorMessages,
  AppLog.FiscalPeriod,
  AppLog.FiscalYear,
  ReferenceDocumentTypeText.ReferenceDocumentTypeName,
  WBSElement._Project.Project,
  WBSElement._Project.ProjectExternalID,
  AppLog.ApplicationLogHandle,
  AppLog.ApplicationLogSubobject