I_PurchaseOrderAccrual

DDL: I_PURCHASEORDERACCRUAL SQL: IPOACCR Type: view COMPOSITE

Purchase Order Accrual Object View

I_PurchaseOrderAccrual is a Composite CDS View that provides data about "Purchase Order Accrual Object View" in SAP S/4HANA. It reads from 1 data source (I_PeriodAccrual) and exposes 150 fields with key fields AccrualEngineApplication, AccrualObjectLogicalSystem, CompanyCode, AccrualObject, AccrualSubobject. It has 10 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_PeriodAccrual I_PeriodAccrual from

Associations (10)

CardinalityTargetAliasCondition
[1..1] I_PurOrdAccrualObject _purord $projection.AccrualEngineApplication = _purord.AccrualEngineApplication and $projection.AccrualObjectLogicalSystem = _purord.AccrualObjectLogicalSystem and $projection.CompanyCode = _purord.CompanyCode and $projection.AccrualObject = _purord.AccrualObject and $projection.AccrualSubobject = _purord.AccrualSubobject and $projection.AccrualItemType = _purord.AccrualItemType and $projection.Ledger = _purord.Ledger and $projection.AccrualPeriodEndDate >= _purord.AccrSubobjectItmValdtyStrtDte and $projection.AccrualPeriodEndDate <= _purord.AccrSubobjectItmValdtyEndDte
[0..*] I_MchnLrngPrpslPeriodAccrual _MLPrpslPerdAccr $projection.AccrualEngineApplication = _MLPrpslPerdAccr.AccrualEngineApplication and $projection.CompanyCode = _MLPrpslPerdAccr.CompanyCode and $projection.AccrualObject = _MLPrpslPerdAccr.AccrualObject and $projection.AccrualSubobject = _MLPrpslPerdAccr.AccrualSubobject and $projection.AccrualItemType = _MLPrpslPerdAccr.AccrualItemType and $projection.Ledger = _MLPrpslPerdAccr.Ledger and $projection.AccrualPeriodEndDate = _MLPrpslPerdAccr.AccrualPeriodEndDate
[1..1] I_AccrSubObjItemPostedAmt _posted $projection.AccrualEngineApplication = _posted.AccrualEngineApplication and $projection.AccrualObjectLogicalSystem = _posted.AccrualObjectLogicalSystem and $projection.CompanyCode = _posted.CompanyCode and $projection.AccrualObject = _posted.AccrualObject and $projection.AccrualSubobject = _posted.AccrualSubobject and $projection.AccrualItemType = _posted.AccrualItemType and $projection.Ledger = _posted.Ledger and $projection.AccrualPeriodEndDate = _posted.AccrualPeriodEndDate
[1..1] I_AccrItemTypeForLedgerGroup _itemtypel $projection.AccrualEngineApplication = _itemtypel.AccrualEngineApplication and $projection.CompanyCode = _itemtypel.CompanyCode and $projection.AccrualItemType = _itemtypel.AccrualItemType and $projection.Ledger = _itemtypel.Ledger
[1..1] I_AccrualPostingReviewType _AccrualPostingReviewType $projection.AccrualPostingReviewType = _AccrualPostingReviewType.AccrualPostingReviewType
[1..1] I_AccrAmtAdjustmentReason _AccrAmtAdjustmentReason $projection.AccrualEngineApplication = _AccrAmtAdjustmentReason.AccrualEngineApplication and $projection.ProposedAccrAmtAdjmtReason = _AccrAmtAdjustmentReason.ProposedAccrAmtAdjmtReason
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_User _ApprovedByUserName $projection.ApprovedByUser = _ApprovedByUserName.UserID
[0..1] I_User _ReviewedByUserName $projection.ReviewedByUser = _ReviewedByUserName.UserID
[0..1] I_User _AdjustedByUserName $projection.AccrualAmountAdjustedByUser = _AdjustedByUserName.UserID

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IPOACCR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Purchase Order Accrual Object View view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #COMPOSITE view
AccessControl.personalData.blocking #REQUIRED view
AbapCatalog.preserveKey true view

Fields (150)

KeyFieldSource TableSource FieldDescription
KEY AccrualEngineApplication AccrualEngineApplication
KEY AccrualObjectLogicalSystem AccrualObjectLogicalSystem Logical System
KEY CompanyCode CompanyCode Receiver Company Code
KEY AccrualObject AccrualObject External Reference of Accrual Object
KEY AccrualSubobject AccrualSubobject External Reference of Accrual Subobject
KEY AccrualItemType AccrualItemType Accrual Item Type
KEY Ledger Ledger Ledger
KEY AccrualPeriodEndDate AccrualPeriodEndDate Last Day of Period
KEY ProposedAccrAmtIsExisting ProposedAccrAmtIsExisting
ControllingArea _CompanyCode ControllingArea Controlling Area
FiscalYearVariant _CompanyCode FiscalYearVariant FY Variant
ReviewProcessIsActive ReviewProcessIsActive
ReviewedAccrualItemType ReviewedAccrualItemType
AccrualPeriodStartDate AccrualPeriodStartDate First Day of Period
AccrPeriodAmtCalculationMethod AccrPeriodAmtCalculationMethod
AccrPrpsdRlibtyClassfctn _MLPrpslPerdAccr AccrPrpsdRlibtyClassfctn
AccrPrpsdRlibtyClassfctnName
PrpsdAccrAmtMaxClProbability _MLPrpslPerdAccr PrpsdAccrAmtMaxClProbability
PrpsdAccrAmtIsConfirmed _MLPrpslPerdAccr PrpsdAccrAmtIsConfirmed
ProposedAccrAmtAdjmtReason ProposedAccrAmtAdjmtReason
ProposedAccrAmtAdjmtReasonName
ReviewComment ReviewComment
AccrualAmountAdjustedByUser AccrualAmountAdjustedByUser
AccrualAmountAdjustmentDate AccrualAmountAdjustmentDate
AccrualAmountAdjustmentTime AccrualAmountAdjustmentTime
AccrualAmountReviewStatus AccrualAmountReviewStatus
AccrualPostingReviewType AccrualPostingReviewType
AccrualPostingReviewTypeName
ReviewedByUser ReviewedByUser
AmountReviewDate AmountReviewDate
AmountReviewTime AmountReviewTime
AccrualAmountApprovalStatus AccrualAmountApprovalStatus
AccrualAmountIsApproved AccrualAmountIsApproved
AccrualPostingApprovalType AccrualPostingApprovalType
ApprovedByUser ApprovedByUser
AccrualAmountApprovalDate AccrualAmountApprovalDate
AccrualAmountApprovalTime AccrualAmountApprovalTime
ProposedAccrAmtInTransCrcy ProposedAccrAmtInTransCrcy
ProposedAccrAmtInFreeDfndCrcy1 ProposedAccrAmtInFreeDfndCrcy1
ProposedAccrAmtInFreeDfndCrcy2 ProposedAccrAmtInFreeDfndCrcy2
ProposedAccrAmtInFreeDfndCrcy3 ProposedAccrAmtInFreeDfndCrcy3
ProposedAccrAmtInFreeDfndCrcy4 ProposedAccrAmtInFreeDfndCrcy4
ProposedAccrAmtInFreeDfndCrcy5 ProposedAccrAmtInFreeDfndCrcy5
ProposedAccrAmtInFreeDfndCrcy6 ProposedAccrAmtInFreeDfndCrcy6
ProposedAccrAmtInFreeDfndCrcy7 ProposedAccrAmtInFreeDfndCrcy7
ProposedAccrAmtInFreeDfndCrcy8 ProposedAccrAmtInFreeDfndCrcy8
AccrualAmtInTransCrcy AccrualAmtInTransCrcy
AccrualAmtInFreeDfndCrcy1 AccrualAmtInFreeDfndCrcy1
AccrualAmtInFreeDfndCrcy2 AccrualAmtInFreeDfndCrcy2
AccrualAmtInFreeDfndCrcy3 AccrualAmtInFreeDfndCrcy3
AccrualAmtInFreeDfndCrcy4 AccrualAmtInFreeDfndCrcy4
AccrualAmtInFreeDfndCrcy5 AccrualAmtInFreeDfndCrcy5
AccrualAmtInFreeDfndCrcy6 AccrualAmtInFreeDfndCrcy6
AccrualAmtInFreeDfndCrcy7 AccrualAmtInFreeDfndCrcy7
AccrualAmtInFreeDfndCrcy8 AccrualAmtInFreeDfndCrcy8
PlannedAccrualItemType PlannedAccrualItemType
PlannedCostInTransCrcy PlannedCostInTransCrcy Plnd Costs Bal. (TC)
PlannedCostInFreeDfndCrcy1 PlannedCostInFreeDfndCrcy1
PlannedCostInFreeDfndCrcy2 PlannedCostInFreeDfndCrcy2
PlannedCostInFreeDfndCrcy3 PlannedCostInFreeDfndCrcy3
PlannedCostInFreeDfndCrcy4 PlannedCostInFreeDfndCrcy4
PlannedCostInFreeDfndCrcy5 PlannedCostInFreeDfndCrcy5
PlannedCostInFreeDfndCrcy6 PlannedCostInFreeDfndCrcy6
PlannedCostInFreeDfndCrcy7 PlannedCostInFreeDfndCrcy7
PlannedCostInFreeDfndCrcy8 PlannedCostInFreeDfndCrcy8
AdjustedCostInTransCrcy AdjustedCostInTransCrcy Rvsd Costs Bal. (TC)
AdjustedCostInFreeDfndCrcy1 AdjustedCostInFreeDfndCrcy1
AdjustedCostInFreeDfndCrcy2 AdjustedCostInFreeDfndCrcy2
AdjustedCostInFreeDfndCrcy3 AdjustedCostInFreeDfndCrcy3
AdjustedCostInFreeDfndCrcy4 AdjustedCostInFreeDfndCrcy4
AdjustedCostInFreeDfndCrcy5 AdjustedCostInFreeDfndCrcy5
AdjustedCostInFreeDfndCrcy6 AdjustedCostInFreeDfndCrcy6
AdjustedCostInFreeDfndCrcy7 AdjustedCostInFreeDfndCrcy7
AdjustedCostInFreeDfndCrcy8 AdjustedCostInFreeDfndCrcy8
ActualAccrualItemType ActualAccrualItemType Actl Costs Item Type
ActualCostInTransCrcy ActualCostInTransCrcy Actl Costs Bal. (TC)
ActualCostInFreeDfndCrcy1 ActualCostInFreeDfndCrcy1
ActualCostInFreeDfndCrcy2 ActualCostInFreeDfndCrcy2
ActualCostInFreeDfndCrcy3 ActualCostInFreeDfndCrcy3
ActualCostInFreeDfndCrcy4 ActualCostInFreeDfndCrcy4
ActualCostInFreeDfndCrcy5 ActualCostInFreeDfndCrcy5
ActualCostInFreeDfndCrcy6 ActualCostInFreeDfndCrcy6
ActualCostInFreeDfndCrcy7 ActualCostInFreeDfndCrcy7
ActualCostInFreeDfndCrcy8 ActualCostInFreeDfndCrcy8
DeferralItemType DeferralItemType Deferral Item Type
DeferredCostInTransCrcy DeferredCostInTransCrcy Dfrd Costs Bal. (TC)
DeferredCostInCoCodeCrcy DeferredCostInCoCodeCrcy Dfrd Costs Bal.(CC)
DeferredCostInGlobalCrcy DeferredCostInGlobalCrcy Dfrd Costs Bal. (GC)
DeferredCostInFreeDfndCrcy1 DeferredCostInFreeDfndCrcy1
DeferredCostInFreeDfndCrcy2 DeferredCostInFreeDfndCrcy2
DeferredCostInFreeDfndCrcy3 DeferredCostInFreeDfndCrcy3
DeferredCostInFreeDfndCrcy4 DeferredCostInFreeDfndCrcy4
DeferredCostInFreeDfndCrcy5 DeferredCostInFreeDfndCrcy5
DeferredCostInFreeDfndCrcy6 DeferredCostInFreeDfndCrcy6
DeferredCostInFreeDfndCrcy7 DeferredCostInFreeDfndCrcy7
DeferredCostInFreeDfndCrcy8 DeferredCostInFreeDfndCrcy8
RecognizedCostInTransCrcy RecognizedCostInTransCrcy Recgnd Costs Bal(TC)
RecognizedCostInCoCodeCrcy RecognizedCostInCoCodeCrcy Recgnd Costs Bal(CC)
RecognizedCostInGlobalCrcy RecognizedCostInGlobalCrcy Recgnd Costs Bal(GC)
RecognizedCostInFreeDfndCrcy1 RecognizedCostInFreeDfndCrcy1
RecognizedCostInFreeDfndCrcy2 RecognizedCostInFreeDfndCrcy2
RecognizedCostInFreeDfndCrcy3 RecognizedCostInFreeDfndCrcy3
RecognizedCostInFreeDfndCrcy4 RecognizedCostInFreeDfndCrcy4
RecognizedCostInFreeDfndCrcy5 RecognizedCostInFreeDfndCrcy5
RecognizedCostInFreeDfndCrcy6 RecognizedCostInFreeDfndCrcy6
RecognizedCostInFreeDfndCrcy7 RecognizedCostInFreeDfndCrcy7
RecognizedCostInFreeDfndCrcy8 RecognizedCostInFreeDfndCrcy8
AdjmtAccrAmtInTransCrcy
AdjmtAccrAmtInCoCodeCrcy
AdjmtAccrAmtInGlobalCrcy
AdjmtAccrAmtInFreeDfndCrcy1
AdjmtAccrAmtInFreeDfndCrcy2
AdjmtAccrAmtInFreeDfndCrcy3
AdjmtAccrAmtInFreeDfndCrcy4
AdjmtAccrAmtInFreeDfndCrcy5
AdjmtAccrAmtInFreeDfndCrcy6
AdjmtAccrAmtInFreeDfndCrcy7
AdjmtAccrAmtInFreeDfndCrcy8
TotalAccrAmountInTransCrcy _purord TotalAccrAmountInTransCrcy Total A/D Amt (TC)
TotalAccrAmountInFreeDfndCrcy1 _purord TotalAccrAmountInFreeDfndCrcy1 Total A/D Amt (FC1)
TotalAccrAmountInFreeDfndCrcy2 _purord TotalAccrAmountInFreeDfndCrcy2 Total A/D Amt (FC2)
TotalAccrAmountInFreeDfndCrcy3 _purord TotalAccrAmountInFreeDfndCrcy3 Total A/D Amt (FC3)
TotalAccrAmountInFreeDfndCrcy4 _purord TotalAccrAmountInFreeDfndCrcy4 Total A/D Amt (FC4)
TotalAccrAmountInFreeDfndCrcy5 _purord TotalAccrAmountInFreeDfndCrcy5 Total A/D Amt (FC5)
TotalAccrAmountInFreeDfndCrcy6 _purord TotalAccrAmountInFreeDfndCrcy6 Total A/D Amt (FC6)
TotalAccrAmountInFreeDfndCrcy7 _purord TotalAccrAmountInFreeDfndCrcy7 Total A/D Amt (FC7)
TotalAccrAmountInFreeDfndCrcy8 _purord TotalAccrAmountInFreeDfndCrcy8 Total A/D Amt (FC8)
TransactionCurrency TransactionCurrency Transaction Currency
CompanyCodeCurrency
GlobalCurrency
FreeDefinedCurrency1 FreeDefinedCurrency1 Freely Defined Currency 1
FreeDefinedCurrency2 FreeDefinedCurrency2 Freely Defined Currency 2
FreeDefinedCurrency3 FreeDefinedCurrency3 Freely Defined Currency 3
FreeDefinedCurrency4 FreeDefinedCurrency4 Freely Defined Currency 4
FreeDefinedCurrency5 FreeDefinedCurrency5 Freely Defined Currency 5
FreeDefinedCurrency6 FreeDefinedCurrency6 Freely Defined Currency 6
FreeDefinedCurrency7 FreeDefinedCurrency7 Freely Defined Currency 7
FreeDefinedCurrency8 FreeDefinedCurrency8 Freely Defined Currency 8
AccrualItemETag AccrualItemETag
PlannedAccrualItemETag PlannedAccrualItemETag
ActualAccrualItemETag ActualAccrualItemETag
_purord _purord
_posted _posted
_CompanyCode _CompanyCode
_ApprovedByUserName _ApprovedByUserName
_ReviewedByUserName _ReviewedByUserName
_AdjustedByUserName _AdjustedByUserName
_AccrualPostingReviewType _AccrualPostingReviewType
_AccrAmtAdjustmentReason _AccrAmtAdjustmentReason
_MLPrpslPerdAccr _MLPrpslPerdAccr

Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.

-- Derived SQL interpretation of CDS view I_PurchaseOrderAccrual.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: IPOACCR

CREATE VIEW I_PurchaseOrderAccrual AS
SELECT
  AccrualEngineApplication,
  AccrualObjectLogicalSystem,
  CompanyCode,
  AccrualObject,
  AccrualSubobject,
  AccrualItemType,
  Ledger,
  AccrualPeriodEndDate,
  ProposedAccrAmtIsExisting,
  _CompanyCode.ControllingArea AS ControllingArea,
  _CompanyCode.FiscalYearVariant AS FiscalYearVariant,
  ReviewProcessIsActive,
  ReviewedAccrualItemType,
  AccrualPeriodStartDate,
  AccrPeriodAmtCalculationMethod,
  _MLPrpslPerdAccr.AccrPrpsdRlibtyClassfctn AS AccrPrpsdRlibtyClassfctn,
  _MLPrpslPerdAccr._Text[1:Language = $session.system_language].AccrPrpsdRlibtyClassfctnName AS AccrPrpsdRlibtyClassfctnName,
  _MLPrpslPerdAccr.PrpsdAccrAmtMaxClProbability AS PrpsdAccrAmtMaxClProbability,
  _MLPrpslPerdAccr.PrpsdAccrAmtIsConfirmed AS PrpsdAccrAmtIsConfirmed,
  ProposedAccrAmtAdjmtReason,
  _AccrAmtAdjustmentReason._Text[1:Language = $session.system_language].ProposedAccrAmtAdjmtReasonName AS ProposedAccrAmtAdjmtReasonName,
  ReviewComment,
  AccrualAmountAdjustedByUser,
  AccrualAmountAdjustmentDate,
  AccrualAmountAdjustmentTime,
  AccrualAmountReviewStatus,
  AccrualPostingReviewType,
  _AccrualPostingReviewType._Text[1:Language = $session.system_language].AccrualPostingReviewTypeName AS AccrualPostingReviewTypeName,
  ReviewedByUser,
  AmountReviewDate,
  AmountReviewTime,
  AccrualAmountApprovalStatus,
  AccrualAmountIsApproved,
  AccrualPostingApprovalType,
  ApprovedByUser,
  AccrualAmountApprovalDate,
  AccrualAmountApprovalTime,
  ProposedAccrAmtInTransCrcy,
  ProposedAccrAmtInFreeDfndCrcy1,
  ProposedAccrAmtInFreeDfndCrcy2,
  ProposedAccrAmtInFreeDfndCrcy3,
  ProposedAccrAmtInFreeDfndCrcy4,
  ProposedAccrAmtInFreeDfndCrcy5,
  ProposedAccrAmtInFreeDfndCrcy6,
  ProposedAccrAmtInFreeDfndCrcy7,
  ProposedAccrAmtInFreeDfndCrcy8,
  AccrualAmtInTransCrcy,
  AccrualAmtInFreeDfndCrcy1,
  AccrualAmtInFreeDfndCrcy2,
  AccrualAmtInFreeDfndCrcy3,
  AccrualAmtInFreeDfndCrcy4,
  AccrualAmtInFreeDfndCrcy5,
  AccrualAmtInFreeDfndCrcy6,
  AccrualAmtInFreeDfndCrcy7,
  AccrualAmtInFreeDfndCrcy8,
  PlannedAccrualItemType,
  PlannedCostInTransCrcy,
  PlannedCostInFreeDfndCrcy1,
  PlannedCostInFreeDfndCrcy2,
  PlannedCostInFreeDfndCrcy3,
  PlannedCostInFreeDfndCrcy4,
  PlannedCostInFreeDfndCrcy5,
  PlannedCostInFreeDfndCrcy6,
  PlannedCostInFreeDfndCrcy7,
  PlannedCostInFreeDfndCrcy8,
  AdjustedCostInTransCrcy,
  AdjustedCostInFreeDfndCrcy1,
  AdjustedCostInFreeDfndCrcy2,
  AdjustedCostInFreeDfndCrcy3,
  AdjustedCostInFreeDfndCrcy4,
  AdjustedCostInFreeDfndCrcy5,
  AdjustedCostInFreeDfndCrcy6,
  AdjustedCostInFreeDfndCrcy7,
  AdjustedCostInFreeDfndCrcy8,
  ActualAccrualItemType,
  ActualCostInTransCrcy,
  ActualCostInFreeDfndCrcy1,
  ActualCostInFreeDfndCrcy2,
  ActualCostInFreeDfndCrcy3,
  ActualCostInFreeDfndCrcy4,
  ActualCostInFreeDfndCrcy5,
  ActualCostInFreeDfndCrcy6,
  ActualCostInFreeDfndCrcy7,
  ActualCostInFreeDfndCrcy8,
  DeferralItemType,
  DeferredCostInTransCrcy,
  DeferredCostInCoCodeCrcy,
  DeferredCostInGlobalCrcy,
  DeferredCostInFreeDfndCrcy1,
  DeferredCostInFreeDfndCrcy2,
  DeferredCostInFreeDfndCrcy3,
  DeferredCostInFreeDfndCrcy4,
  DeferredCostInFreeDfndCrcy5,
  DeferredCostInFreeDfndCrcy6,
  DeferredCostInFreeDfndCrcy7,
  DeferredCostInFreeDfndCrcy8,
  RecognizedCostInTransCrcy,
  RecognizedCostInCoCodeCrcy,
  RecognizedCostInGlobalCrcy,
  RecognizedCostInFreeDfndCrcy1,
  RecognizedCostInFreeDfndCrcy2,
  RecognizedCostInFreeDfndCrcy3,
  RecognizedCostInFreeDfndCrcy4,
  RecognizedCostInFreeDfndCrcy5,
  RecognizedCostInFreeDfndCrcy6,
  RecognizedCostInFreeDfndCrcy7,
  RecognizedCostInFreeDfndCrcy8,
  cast(cast(AccrualAmtInTransCrcy - ProposedAccrAmtInTransCrcy as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_wcurr preserving type ) AS AdjmtAccrAmtInTransCrcy,
  cast(cast(AccrualAmtInCCCrcy - ProposedAccrAmtInCoCodeCrcy as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_hcurr preserving type ) AS AdjmtAccrAmtInCoCodeCrcy,
  cast(cast(AccrualAmtInGlobalCrcy - ProposedAccrAmtInGlobalCrcy as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_kcurr preserving type ) AS AdjmtAccrAmtInGlobalCrcy,
  cast(cast(AccrualAmtInFreeDfndCrcy1 - ProposedAccrAmtInFreeDfndCrcy1 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_ocurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy1,
  cast(cast(AccrualAmtInFreeDfndCrcy2 - ProposedAccrAmtInFreeDfndCrcy2 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_vcurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy2,
  cast(cast(AccrualAmtInFreeDfndCrcy3 - ProposedAccrAmtInFreeDfndCrcy3 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_bcurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy3,
  cast(cast(AccrualAmtInFreeDfndCrcy4 - ProposedAccrAmtInFreeDfndCrcy4 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_ccurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy4,
  cast(cast(AccrualAmtInFreeDfndCrcy5 - ProposedAccrAmtInFreeDfndCrcy5 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_dcurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy5,
  cast(cast(AccrualAmtInFreeDfndCrcy6 - ProposedAccrAmtInFreeDfndCrcy6 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_ecurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy6,
  cast(cast(AccrualAmtInFreeDfndCrcy7 - ProposedAccrAmtInFreeDfndCrcy7 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_fcurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy7,
  cast(cast(AccrualAmtInFreeDfndCrcy8 - ProposedAccrAmtInFreeDfndCrcy8 as abap.curr( 23, 2 ) ) as ace_adjmt_per_accr_amnt_gcurr preserving type ) AS AdjmtAccrAmtInFreeDfndCrcy8,
  _purord.TotalAccrAmountInTransCrcy AS TotalAccrAmountInTransCrcy,
  _purord.TotalAccrAmountInFreeDfndCrcy1 AS TotalAccrAmountInFreeDfndCrcy1,
  _purord.TotalAccrAmountInFreeDfndCrcy2 AS TotalAccrAmountInFreeDfndCrcy2,
  _purord.TotalAccrAmountInFreeDfndCrcy3 AS TotalAccrAmountInFreeDfndCrcy3,
  _purord.TotalAccrAmountInFreeDfndCrcy4 AS TotalAccrAmountInFreeDfndCrcy4,
  _purord.TotalAccrAmountInFreeDfndCrcy5 AS TotalAccrAmountInFreeDfndCrcy5,
  _purord.TotalAccrAmountInFreeDfndCrcy6 AS TotalAccrAmountInFreeDfndCrcy6,
  _purord.TotalAccrAmountInFreeDfndCrcy7 AS TotalAccrAmountInFreeDfndCrcy7,
  _purord.TotalAccrAmountInFreeDfndCrcy8 AS TotalAccrAmountInFreeDfndCrcy8,
  TransactionCurrency,
  _purord._CompanyCode.Currency AS CompanyCodeCurrency,
  _purord._ControllingArea.ControllingAreaCurrency AS GlobalCurrency,
  FreeDefinedCurrency1,
  FreeDefinedCurrency2,
  FreeDefinedCurrency3,
  FreeDefinedCurrency4,
  FreeDefinedCurrency5,
  FreeDefinedCurrency6,
  FreeDefinedCurrency7,
  FreeDefinedCurrency8,
  AccrualItemETag,
  PlannedAccrualItemETag,
  ActualAccrualItemETag
FROM I_PeriodAccrual
LEFT OUTER JOIN I_PurOrdAccrualObject AS _purord ON AccrualEngineApplication = _purord.AccrualEngineApplication AND AccrualObjectLogicalSystem = _purord.AccrualObjectLogicalSystem AND CompanyCode = _purord.CompanyCode AND AccrualObject = _purord.AccrualObject AND AccrualSubobject = _purord.AccrualSubobject AND AccrualItemType = _purord.AccrualItemType AND Ledger = _purord.Ledger AND AccrualPeriodEndDate >= _purord.AccrSubobjectItmValdtyStrtDte AND AccrualPeriodEndDate <= _purord.AccrSubobjectItmValdtyEndDte  -- association [1..1]
LEFT OUTER JOIN I_MchnLrngPrpslPeriodAccrual AS _MLPrpslPerdAccr ON AccrualEngineApplication = _MLPrpslPerdAccr.AccrualEngineApplication AND CompanyCode = _MLPrpslPerdAccr.CompanyCode AND AccrualObject = _MLPrpslPerdAccr.AccrualObject AND AccrualSubobject = _MLPrpslPerdAccr.AccrualSubobject AND AccrualItemType = _MLPrpslPerdAccr.AccrualItemType AND Ledger = _MLPrpslPerdAccr.Ledger AND AccrualPeriodEndDate = _MLPrpslPerdAccr.AccrualPeriodEndDate  -- association [0..*]
LEFT OUTER JOIN I_AccrSubObjItemPostedAmt AS _posted ON AccrualEngineApplication = _posted.AccrualEngineApplication AND AccrualObjectLogicalSystem = _posted.AccrualObjectLogicalSystem AND CompanyCode = _posted.CompanyCode AND AccrualObject = _posted.AccrualObject AND AccrualSubobject = _posted.AccrualSubobject AND AccrualItemType = _posted.AccrualItemType AND Ledger = _posted.Ledger AND AccrualPeriodEndDate = _posted.AccrualPeriodEndDate  -- association [1..1]
LEFT OUTER JOIN I_AccrItemTypeForLedgerGroup AS _itemtypel ON AccrualEngineApplication = _itemtypel.AccrualEngineApplication AND CompanyCode = _itemtypel.CompanyCode AND AccrualItemType = _itemtypel.AccrualItemType AND Ledger = _itemtypel.Ledger  -- association [1..1]
LEFT OUTER JOIN I_AccrualPostingReviewType AS _AccrualPostingReviewType ON AccrualPostingReviewType = _AccrualPostingReviewType.AccrualPostingReviewType  -- association [1..1]
LEFT OUTER JOIN I_AccrAmtAdjustmentReason AS _AccrAmtAdjustmentReason ON AccrualEngineApplication = _AccrAmtAdjustmentReason.AccrualEngineApplication AND ProposedAccrAmtAdjmtReason = _AccrAmtAdjustmentReason.ProposedAccrAmtAdjmtReason  -- association [1..1]
LEFT OUTER JOIN I_CompanyCode AS _CompanyCode ON CompanyCode = _CompanyCode.CompanyCode  -- association [0..1]
LEFT OUTER JOIN I_User AS _ApprovedByUserName ON ApprovedByUser = _ApprovedByUserName.UserID  -- association [0..1]
LEFT OUTER JOIN I_User AS _ReviewedByUserName ON ReviewedByUser = _ReviewedByUserName.UserID  -- association [0..1]
LEFT OUTER JOIN I_User AS _AdjustedByUserName ON AccrualAmountAdjustedByUser = _AdjustedByUserName.UserID  -- association [0..1]
;