I_CASHPOSITIONFLOW
Cash Position Flow
I_CASHPOSITIONFLOW is a CDS View in S/4HANA. Cash Position Flow. It contains 23 fields. 3 CDS views read from this table.
CDS Views using this table (3)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_ShrtTrmCshPosActualFlow | view | from | CONSUMPTION | Overdue Actual Flows |
| P_CashLiquidityFlow | view | from | BASIC | Cash Liquidity Flow for WCI |
| P_RecnclnCashFlowBasic | view | from | COMPOSITE |
Fields (23)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | CashFlow | CashFlow | 2 |
| KEY | CashFlowID | CashFlowID | 1 |
| KEY | OriginApplication | OriginApplication | 2 |
| KEY | OriginDocument | OriginDocument | 2 |
| KEY | OriginSystem | OriginSystem | 2 |
| KEY | OriginTransaction | OriginTransaction | 2 |
| KEY | OriginTransactionQualifier | OriginTransactionQualifier | 2 |
| KEY | ValidFrom | ValidFrom | 1 |
| _BankAccount | _BankAccount | 1 | |
| _CompanyCode | _CompanyCode | 1 | |
| AccountingDocument | AccountingDocument | 1 | |
| AmountInCompanyCodeCurrency | AmountInCompanyCodeCurrency | 2 | |
| AmountInTransactionCurrency | AmountInTransactionCurrency,CshPosScaledAmountInTransCrcy | 3 | |
| BankAccountInternalID | BankAccountInternalID | 3 | |
| CertaintyLevel | CertaintyLevel | 2 | |
| CompanyCode | CompanyCode | 3 | |
| CompanyCodeCurrency | CompanyCodeCurrency | 2 | |
| DocumentItemText | DocumentItemText | 1 | |
| ExpirationDate | ExpirationDate | 1 | |
| LiquidityItem | LiquidityItem | 1 | |
| PlanningLevel | PlanningLevel | 1 | |
| TransactionCurrency | TransactionCurrency | 3 | |
| TransactionDate | TransactionDate | 3 |
@VDM.viewType: #BASIC
@Analytics: { dataCategory: #FACT, dataExtraction.enabled: false }
@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.sqlViewName: 'ICSHPOSFLW'
@AbapCatalog.preserveKey:true@AbapCatalog.compiler.compareFilter:true
@EndUserText.label: 'Cash Position Flow'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
define view I_CashPositionFlow
as select from P_FQMFLOWCASHPOS as flow
association [1..1] to I_CompanyCode as _CompanyCode on $projection.CompanyCode = _CompanyCode.CompanyCode
association [1..1] to I_CompanyCode as _SourceCompanyCode on $projection.SourceCompanyCode = _SourceCompanyCode.CompanyCode
association [0..1] to I_BankAccount as _BankAccount on $projection.BankAccountInternalID = _BankAccount.BankAccountInternalID
association [0..1] to I_Currency as _Currency on $projection.TransactionCurrency = _Currency.Currency
association [0..1] to I_CashPlanningGroup as _CashPlanningGroup on $projection.CashPlanningGroup = _CashPlanningGroup.CashPlanningGroup
association [0..1] to I_PlanningLevel as _PlanningLevel on $projection.PlanningLevel = _PlanningLevel.PlanningLevel
association [0..1] to I_LiquidityItem as _LiquidityItem on $projection.LiquidityItem = _LiquidityItem.LiquidityItem
association [0..1] to I_Glaccountwithaccountcurrency as _GLAccount on $projection.CompanyCode = _GLAccount.CompanyCode
and $projection.GLAccount = _GLAccount.GLAccount
association [0..1] to I_WBSElementByInternalKey as _WBSElement on $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
association [0..1] to I_AccountingDocument as _AccountingDocument on $projection.CompanyCode = _AccountingDocument.CompanyCode
and $projection.FiscalYear = _AccountingDocument.FiscalYear
and $projection.AccountingDocument = _AccountingDocument.AccountingDocument
{
key flow.OriginSystem,
key flow.OriginApplication,
key flow.OriginDocument,
key flow.OriginTransaction,
key flow.OriginTransQualifier as OriginTransactionQualifier,
key flow.CashFlow,
@Semantics.systemDateTime.createdAt: true
key cast( flow.ValidFrom as timestampl ) as ValidFrom,
@Semantics.systemDateTime.lastChangedAt: true
key cast( flow.ValidTo as timestampl ) as ValidTo,
key flow.flow_id as CashFlowID,
// general fields
flow.IsValid,
flow.CreatedByUser,
@Semantics.systemDateTime.createdAt: true
cast( flow.CreationDateTime as timestampl ) as CreationDateTime,
flow.LastChangedByUser,
@Semantics.systemDateTime.lastChangedAt: true
cast( flow.LastChangeDateTime as timestampl ) as LastChangeDateTime,
flow.Owner as CashTransactionOwner,
@ObjectModel.foreignKey.association: '_CompanyCode'
flow.CompanyCode,
flow.TransactionDate,
flow.CertaintyLevel,
@Semantics.currencyCode: true
flow.Currency as TransactionCurrency,
@Semantics.amount.currencyCode: 'TransactionCurrency'
@DefaultAggregation: #SUM
flow.Amount as AmountInTransactionCurrency,
@Semantics.currencyCode: true
case when CertaintyLevel = 'CSHRQ' then cast('' as fqm_currency) else flow.BaseCurrency end as CompanyCodeCurrency,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
@DefaultAggregation: #SUM
case when CertaintyLevel = 'CSHRQ' then cast(0 as fqm_amount) else flow.BaseAmount end as AmountInCompanyCodeCurrency,
flow.rel_status as CashReleaseStatus,
// accouting fields
@ObjectModel.foreignKey.association: '_AccountingDocument'
flow.AccountingDocument,
flow.AccountingDocumentItem,
flow.FiscalYear,
flow.FiscalPeriod as PostingFiscalPeriod,
flow.AccountingDocumentType,
flow.PaymentMethodCode as PaymentMethod,
@ObjectModel.foreignKey.association: '_GLAccount'
flow.GLAccount,
flow.FinancialAccountType,
flow.DocumentItemText,
flow.PostingDate,
flow.fi_due_date as NetDueDate,
@ObjectModel.foreignKey.association: '_CashPlanningGroup'
flow.PlanningGroup as CashPlanningGroup,
@ObjectModel.foreignKey.association: '_PlanningLevel'
flow.PlanningLevel,
// bank fields
flow.HouseBank,
flow.HouseBankAccount,
@ObjectModel.foreignKey.association: '_BankAccount'
flow.BankAccountId as BankAccountInternalID,
// account assignment
flow.Customer,
flow.Vendor as Supplier,
flow.Partner as BusinessPartner,
flow.Material,
flow.BusinessArea,
flow.ProfitCenter,
@ObjectModel.foreignKey.association: '_WBSElement'
cast(flow.Project as ps_s4_pspnr) as WBSElementInternalID,
flow.PartnerCompany,
flow.CostCenter,
flow.Segment,
@ObjectModel.foreignKey.association: '_LiquidityItem'
flow.LiquidityItem,
flow.AssignedCompanyCode as SourceCompanyCode,
flow.Fund,
flow.GrantID,
// trm fields
flow.ProductType as FinancialInstrumentProductType,
flow.FinancialTransactionType,
flow.SecurityClass,
flow.TrmSecurityAccount as SecurityAccount,
flow.ContractNumber as AssetContract,
flow.Portfolio,
// memo record fields
case when ( flow.CertaintyLevel = 'MEMO' or flow.CertaintyLevel = 'INTRAM' ) and flow.fi_due_date > '00000000'
then flow.fi_due_date else cast('99991231' as abap.dats) end as ExpirationDate,
cast( flow.BankStatementShortKey as kukey_eb ) as BankStatementShortID,
flow.BankStatementItem,
/* Associations */
_CompanyCode,
_BankAccount,
_Currency,
_CashPlanningGroup,
_PlanningLevel,
_LiquidityItem,
_GLAccount,
_WBSElement,
_SourceCompanyCode,
_AccountingDocument
}
where
(
flow.cmm_state = '0'
or flow.cmm_state = ''
)
and(
cashrequest_status = ''
or cashrequest_status = 'C'
or cashrequest_status = 'S'
or cashrequest_status = 'R'
or cashrequest_status = 'T'
)