P_EngmntProjSlsOrdItmDet

DDL: P_ENGMNTPROJSLSORDITMDET SQL: PENGSLSORRDET Type: view COMPOSITE

P_EngmntProjSlsOrdItmDet is a Composite CDS View in SAP S/4HANA. It reads from 6 data sources and exposes 15 fields.

Data Sources (6)

SourceAliasJoin Type
I_EngmntProjAssgmtToSessionUsr EngagementProject from
I_EngagementProjectItem EngagementProjectItem inner
I_Ledger Ledger left_outer
I_SalesOrderItem SalesOrderItem left_outer
P_EngmntProjGLAcctLneItmSemTag SemanticTag left_outer
I_WBSElement WBSElement left_outer

Annotations (6)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.sqlViewName PENGSLSORRDET view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #COMPOSITE view
VDM.private true view

Fields (15)

KeyFieldSource TableSource FieldDescription
EngagementProject I_EngmntProjAssgmtToSessionUsr EngagementProject
EngagementProjectUUID I_EngmntProjAssgmtToSessionUsr EngagementProjectUUID
Currency I_EngmntProjAssgmtToSessionUsr Currency
ProjectVisibility I_EngmntProjAssgmtToSessionUsr ProjectVisibility
SalesOrder I_SalesOrderItem SalesOrder
SalesOrderItem I_SalesOrderItem SalesOrderItem
SalesOrderItemText I_SalesOrderItem SalesOrderItemText
CappedNetAmount I_SalesOrderItem CappedNetAmount
CappedNetAmtAlertThldInPct I_SalesOrderItem CappedNetAmtAlertThldInPct
WBSElement I_WBSElement WBSElement
TransactionCurrency I_SalesOrderItem TransactionCurrency
CompanyCodeCurrency P_EngmntProjGLAcctLneItmSemTag CompanyCodeCurrency
IsMyProject I_EngmntProjAssgmtToSessionUsr IsMyProject
SalesOrderItemCategory I_SalesOrderItem SalesOrderItemCategory
BusinessTransactionType P_EngmntProjGLAcctLneItmSemTag BusinessTransactionType
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.sqlViewName: 'PENGSLSORRDET'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.viewType: #COMPOSITE
@VDM.private:true
define view P_EngmntProjSlsOrdItmDet
  as select from    I_EngmntProjAssgmtToSessionUsr as EngagementProject
    inner join      I_EngagementProjectItem        as EngagementProjectItem on  EngagementProjectItem.EngagementProject         = EngagementProject.EngagementProject
                                                                            and EngagementProjectItem.EngagementProjectItemType = '0SOH'
    left outer join I_SalesOrderItem               as SalesOrderItem        on SalesOrderItem.SalesOrder = EngagementProjectItem.EngagementProjectItem

    left outer join I_WBSElement                   as WBSElement            on WBSElement.WBSElementInternalID = SalesOrderItem.WBSElement

    left outer join I_Ledger                       as Ledger                on Ledger.IsLeadingLedger = 'X'

    left outer join P_EngmntProjGLAcctLneItmSemTag as SemanticTag           on  SemanticTag.Project            = EngagementProject.EngagementProject    
                                                                            and SemanticTag.IsMyProject        = EngagementProject.IsMyProject
                                                                            and SemanticTag.SalesOrder         = SalesOrderItem.SalesOrder
                                                                            and SemanticTag.SalesOrderItem     = SalesOrderItem.SalesOrderItem
                                                                            and SemanticTag.Ledger             = Ledger.Ledger                                                                          
{
  EngagementProject.EngagementProject     as EngagementProject,
  EngagementProject.EngagementProjectUUID as EngagementProjectUUID,
  EngagementProject.Currency              as Currency,
  EngagementProject.ProjectVisibility     as ProjectVisibility,
  SalesOrderItem.SalesOrder,
  SalesOrderItem.SalesOrderItem,
  SalesOrderItem.SalesOrderItemText,
  SalesOrderItem.CappedNetAmount,
  SalesOrderItem.CappedNetAmtAlertThldInPct,
  WBSElement.WBSElement,
  SalesOrderItem.TransactionCurrency,
  SemanticTag.CompanyCodeCurrency,
  EngagementProject.IsMyProject,
  SalesOrderItem.SalesOrderItemCategory,
  SemanticTag.BusinessTransactionType,

  case
  when EngagementProject.Currency = SemanticTag.CompanyCodeCurrency
  then
  SemanticTag.RevenueAmountInCompanyCodeCrcy
  else
    currency_conversion(  amount             => SemanticTag.RevenueAmountInCompanyCodeCrcy,
                             source_currency    => SemanticTag.CompanyCodeCurrency,
                             target_currency    => SalesOrderItem.TransactionCurrency,
                             exchange_rate_date => SemanticTag.PostingDate,
                             exchange_rate_type => 'M',
                             error_handling     => 'SET_TO_NULL' )
                             end          as RevenueAmountInCompanyCodeCrcy
}
where
      SalesOrderItem.SalesOrderItemCategory = 'PS02'
  and SemanticTag.BusinessTransactionType != 'RFCV'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ENGAGEMENTPROJECTITEM",
"I_ENGMNTPROJASSGMTTOSESSIONUSR",
"I_LEDGER",
"I_SALESORDERITEM",
"I_WBSELEMENT",
"P_ENGMNTPROJGLACCTLNEITMSEMTAG"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/