C_ShrtTrmCshPosLatestBalance
Latest Balance of Bank Account
C_ShrtTrmCshPosLatestBalance is a Consumption CDS View that provides data about "Latest Balance of Bank Account" in SAP S/4HANA. It reads from 3 data sources (I_ShrtTrmCshPosLatestBalance, I_Currency, I_CashPositionProfile) and exposes 28 fields with key fields CashPositionProfile, DisplayCurrency, BankAccountInternalID. It has 4 associations to related views. It is exposed through 1 OData service (UI_SHORTTERMCASHPOS_DISPLAY). It is used in 1 Fiori application: Short-Term Cash Positioning.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| I_ShrtTrmCshPosLatestBalance | balance | from |
| I_Currency | Currency | cross |
| I_CashPositionProfile | profile | cross |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_UserContactCard | _CreatedBy | $projection.CreatedByUser = _CreatedBy.ContactCardID |
| [0..*] | C_ShrtTrmCshPosActualFlow | _OverdueActualFlow | $projection.KeyDate > _OverdueActualFlow.TransactionDate and $projection.CashBalanceDate < _OverdueActualFlow.TransactionDate and $projection.BankAccountInternalID = _OverdueActualFlow.BankAccountInternalID and $projection.CashPositionProfile = _OverdueActualFlow.CashPositionProfile and $projection.DisplayCurrency = _OverdueActualFlow.CashPositionDisplayCurrency |
| [1..1] | C_CashPositionProfileWithCycle | _CashPositionProfileWithCycle | $projection.CashPositionProfile = _CashPositionProfileWithCycle.CashPositionProfile |
| [0..*] | I_CshPosCurrencySourceText | _CshPosCurSoucText | $projection.CashPositionCurrencySource = _CshPosCurSoucText.CashPositionCurrencySource |
Annotations (17)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CSTCPBALANCE | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Latest Balance of Bank Account | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.usageType.serviceQuality | #X | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| VDM.viewType | #CONSUMPTION | view | |
| UI.headerInfo.typeName | Bank Account Opening Balance Details | view | |
| UI.headerInfo.typeNamePlural | Bank Accounts Opening Balance Details | view | |
| UI.headerInfo.title.type | #STANDARD | view | |
| UI.headerInfo.title.value | BankAccountNumber | view | |
| UI.headerInfo.description.type | #STANDARD | view | |
| UI.headerInfo.description.value | BankAccountDescription | view |
OData Services (1)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| UI_SHORTTERMCASHPOS_DISPLAY | UI_SHORTTERMCASHPOS_DISP | V2 | C1 | NOT_RELEASED |
Fiori Apps (1)
| App ID | App Name | Type | Description |
|---|---|---|---|
| F5380 | Short-Term Cash Positioning | Transactional, Analytical | This app facilitates cash managers and cash specialists to see short-term cash position based on direct bank balances. How cash position will be displayed depends on the selected profiles that are defined in app Define Cash Position Profiles. |
Short-Term Cash Positioning
Business Role: Cash Manager
With this new app, you can view the forecasted cash positions for the current data by location, company, and currency. Cash position data is caculated based on the cash position profiles that are defined in the Define Cash Position Profiles app.
Fields (28)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CashPositionProfile | I_CashPositionProfile | CashPositionProfile | Setup Mat. Prof. |
| KEY | DisplayCurrency | I_Currency | Currency | Valuation Crcy |
| KEY | BankAccountInternalID | I_ShrtTrmCshPosLatestBalance | BankAccountInternalID | Technical ID |
| KeyDate | ||||
| CashBalanceType | I_ShrtTrmCshPosLatestBalance | CashBalanceType | Balance Type | |
| BankAccountNumber | ||||
| BankAccountDescription | ||||
| CompanyCode | I_ShrtTrmCshPosLatestBalance | CompanyCode | Receiver Company Code | |
| CashBalanceFormattedAmount | I_ShrtTrmCshPosLatestBalance | CashBalanceAmount | ||
| CashBalanceAmount | I_ShrtTrmCshPosLatestBalance | CashBalanceAmount | ||
| CashBalanceCurrency | I_ShrtTrmCshPosLatestBalance | CashBalanceCurrency | ||
| CashBalanceAmountInDspCurrency | ||||
| CashPositionCurrencySource | I_CashPositionProfile | CashPositionCurrencySource | ||
| CashPositionCurrencySourceText | ||||
| CashBalanceChannel | I_ShrtTrmCshPosLatestBalance | CashBalanceChannel | ||
| CashBalanceDate | I_ShrtTrmCshPosLatestBalance | CashBalanceDate | ||
| CreatedByUser | I_ShrtTrmCshPosLatestBalance | CreatedByUser | User Name | |
| CashBalanceCreatedAtDateTime | I_ShrtTrmCshPosLatestBalance | CashBalanceCreatedAtDateTime | ||
| BankStatementShortID | I_ShrtTrmCshPosLatestBalance | BankStatementShortID | Statement Short Key | |
| BankStatement | I_ShrtTrmCshPosLatestBalance | BankStatement | Bank Statement No. | |
| _User | I_ShrtTrmCshPosLatestBalance | _User | ||
| _CreatedBy | _CreatedBy | |||
| _BalanceChannelText | I_ShrtTrmCshPosLatestBalance | _BalanceChannelText | ||
| _BalanceTypeText | I_ShrtTrmCshPosLatestBalance | _BalanceTypeText | ||
| _BankAccount | I_ShrtTrmCshPosLatestBalance | _BankAccount | ||
| _BankAccountText | I_ShrtTrmCshPosLatestBalance | _BankAccountText | ||
| _OverdueActualFlow | _OverdueActualFlow | |||
| _CashPositionProfileWithCycle | _CashPositionProfileWithCycle |
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 C_ShrtTrmCshPosLatestBalance.
-- 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: CSTCPBALANCE
CREATE VIEW C_ShrtTrmCshPosLatestBalance AS
SELECT
profile.CashPositionProfile AS CashPositionProfile,
Currency.Currency AS DisplayCurrency,
balance.BankAccountInternalID AS BankAccountInternalID,
$session.user_date AS KeyDate,
balance.CashBalanceType AS CashBalanceType,
balance._BankAccount.BankAccountNumber AS BankAccountNumber,
balance._BankAccountText[1:Language=$session.system_language].BankAccountDescription AS BankAccountDescription,
balance.CompanyCode AS CompanyCode,
balance.CashBalanceAmount AS CashBalanceFormattedAmount,
balance.CashBalanceAmount AS CashBalanceAmount,
balance.CashBalanceCurrency AS CashBalanceCurrency,
cast(0 as fqm_amount) AS CashBalanceAmountInDspCurrency,
profile.CashPositionCurrencySource AS CashPositionCurrencySource,
_CshPosCurSoucText[1:Language = $session.system_language].CashPositionCurrencySourceText AS CashPositionCurrencySourceText,
balance.CashBalanceChannel AS CashBalanceChannel,
balance.CashBalanceDate AS CashBalanceDate,
balance.CreatedByUser AS CreatedByUser,
balance.CashBalanceCreatedAtDateTime AS CashBalanceCreatedAtDateTime,
balance.BankStatementShortID AS BankStatementShortID,
balance.BankStatement AS BankStatement,
balance._User AS _User,
balance._BalanceChannelText AS _BalanceChannelText,
balance._BalanceTypeText AS _BalanceTypeText,
balance._BankAccount AS _BankAccount,
balance._BankAccountText AS _BankAccountText
FROM I_ShrtTrmCshPosLatestBalance AS balance
CROSS JOIN I_CashPositionProfile AS profile
CROSS JOIN I_Currency AS Currency
LEFT OUTER JOIN I_UserContactCard AS _CreatedBy ON CreatedByUser = _CreatedBy.ContactCardID -- association [0..1]
LEFT OUTER JOIN C_ShrtTrmCshPosActualFlow AS _OverdueActualFlow ON KeyDate > _OverdueActualFlow.TransactionDate AND CashBalanceDate < _OverdueActualFlow.TransactionDate AND BankAccountInternalID = _OverdueActualFlow.BankAccountInternalID AND CashPositionProfile = _OverdueActualFlow.CashPositionProfile AND DisplayCurrency = _OverdueActualFlow.CashPositionDisplayCurrency -- association [0..*]
LEFT OUTER JOIN C_CashPositionProfileWithCycle AS _CashPositionProfileWithCycle ON CashPositionProfile = _CashPositionProfileWithCycle.CashPositionProfile -- association [1..1]
LEFT OUTER JOIN I_CshPosCurrencySourceText AS _CshPosCurSoucText ON CashPositionCurrencySource = _CshPosCurSoucText.CashPositionCurrencySource -- association [0..*]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- OData Services in SAP S/4HANA Explained
- Service Bindings and Service Definitions in SAP S/4HANA
- SAP Fiori Apps Architecture — How Fiori Apps Connect to Data
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA