C_CAPaymentLotAnalysis
Analyze Incoming Payments
C_CAPaymentLotAnalysis is a Consumption CDS View that provides data about "Analyze Incoming Payments" in SAP S/4HANA. It reads from 1 data source (P_CAPaymentLotAnalysis) and exposes 36 fields with key field CAPaymentLot. It has 10 associations to related views. It is exposed through 2 OData services (ASQL_F5588, UI_CAPAYMENTLOT_ANALYSIS). It is used in 1 Fiori application: Analyze Incoming Payments. Part of development package ODATA_O2C_FICA_PAYMENTLOT_ANA.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| P_CAPaymentLotAnalysis | _CAPaymentLotAnalysis | from |
Associations (10)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | P_CAPaymentLotManualClr | _CAPaymentLotManualClr | $projection.CAPaymentLot = _CAPaymentLotManualClr.CAPaymentLot |
| [1..1] | P_CAPaymentLotClearedWithML | _CAPaymentLotClearedWithML | $projection.CAPaymentLot = _CAPaymentLotClearedWithML.CAPaymentLot |
| [1..1] | P_CAPaymentLotItemsWithML | _CAPaymentLotItemsWithML | $projection.CAPaymentLot = _CAPaymentLotItemsWithML.CAPaymentLot |
| [1..1] | P_CAPaytLotItmHighCnfAutoML | _CAPaytLotItmHighCnfAutoML | $projection.CAPaymentLot = _CAPaytLotItmHighCnfAutoML.CAPaymentLot |
| [1..1] | P_CAPaytLotItmHighCnfPrpslML | _CAPaytLotItmHighCnfPrpslML | $projection.CAPaymentLot = _CAPaytLotItmHighCnfPrpslML.CAPaymentLot |
| [1..1] | P_CAPaytLotItmGoodCnfPrpslML | _CAPaytLotItmGoodCnfPrpslML | $projection.CAPaymentLot = _CAPaytLotItmGoodCnfPrpslML.CAPaymentLot |
| [1..1] | P_CAPaytLotItmLowCnfPrpslML | _CAPaytLotItmLowCnfPrpslML | $projection.CAPaymentLot = _CAPaytLotItmLowCnfPrpslML.CAPaymentLot |
| [1..1] | P_CAPaytLotItmNoPrpslML | _CAPaytLotItmNoPrpslML | $projection.CAPaymentLot = _CAPaytLotItmNoPrpslML.CAPaymentLot |
| [0..*] | C_CAPaytLotAnlysPaytUsge | _CAPaytLotAnlysPaytUsge | $projection.CAPaymentLot = _CAPaytLotAnlysPaytUsge.CAPaymentLot |
| [0..*] | C_CAPaytLotAnlysClrfctnDurn | _CAPaytLotAnlysClrfctnDurn | $projection.CAPaymentLot = _CAPaytLotAnlysClrfctnDurn.CAPaymentLot |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CCAPAYLOTANLYS | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| EndUserText.label | Analyze Incoming Payments | view | |
| Search.searchable | true | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| UI.headerInfo.typeName | Payment Lot | view | |
| UI.headerInfo.typeNamePlural | Payment Lots | view | |
| UI.headerInfo.title.value | CAPaymentLot | view |
OData Services (2)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| ASQL_F5588 | ASQL_F5588 | C2 | NOT_RELEASED | |
| UI_CAPAYMENTLOT_ANALYSIS | UI_CAPAYMENTLOT_ANALYSIS | V2 | C1 | NOT_RELEASED |
Fiori Apps (1)
| App ID | App Name | Type | Description |
|---|---|---|---|
| F5588 | Analyze Incoming Payments | Transactional | The FIORI application analyzes payment lots, credit lots and check lots from a manager’s point of view. The manager gets an overview of the amount and number of payments within a payment lot that have been cleared automatically, manually or, if active, with machine learning (cash app). |
Analyze Incoming Payments
Business Role: Accounts Payable and Receivable Manager (FI-CA)
With the Analyze Incoming Paynments app, you can monitor and analyze incoming payments to optimize clarification processes and team workload. You can use this app to regularly do the following: Analyze how many payments have been clarified manually within a given period. Analyze the effectiveness of the automated clarification process provided by the standard. If you have licensed and are using SAP Cash Application, add-on for contract accounting, validate the effectiveness of the applied machine learning to the clarification process.
Fields (36)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CAPaymentLot | CAPaymentLot | ||
| CompanyCode | CompanyCode | Receiver Company Code | ||
| CompanyCodeName | Company Name | |||
| CADocumentOriginCode | CADocumentOriginCode | Document Origin | ||
| CADocumentOriginCodeName | CADocumentOriginCodeName | |||
| CAPaymentLotStatus | CAPaymentLotStatus | |||
| CAPaymentLotStatusCriticality | CAPaymentLotStatusCriticality | Payment Lot Status Criticality | ||
| CAPaymentLotStatusName | CAPaymentLotStatusName | |||
| HouseBank | HouseBank | House Bank | ||
| HouseBankName | ||||
| HouseBankAccount | HouseBankAccount | House Bank Account | ||
| HouseBankAccountDescription | HouseBankAccountDescription | House Bank Account Text | ||
| BankStatementShortID | Statement Short Key | |||
| CANumberOfPaymentLotOpenItems | P_CAPaymentLotAnalysis | CANumberOfPaymentLotOpenItems | Payments in Clarification | |
| numc1endasCANrOfPaytLotOpenItemsCritlty | Open Items Criticality | |||
| CANumberOfPaymentLotItems | Number of Items in Lot | |||
| CreationDate | CreationDate | Time Stamp | ||
| TotalDebitAmount | Total Payment Amount | |||
| TotalAmountCurrency | TotalAmountCurrency | |||
| CAOpenItemsAmountInTC | CAOpenItemsAmountInTC | Amount of Open Items | ||
| CANrOfPaytLotAutomlyClrdItems | CANrOfPaytLotAutomlyClrdItems | Payments Posted Automatically | ||
| CANrOfPaytLotMnllyClearedItems | _CAPaymentLotManualClr | CANrOfPaytLotMnllyClearedItems | Payments Posted Manually | |
| CANrOfPaytLotMaLrnClearedItems | _CAPaymentLotClearedWithML | CANrOfPaytLotMaLrnClearedItems | Payments Posted using Cash App | |
| CAPercentageUnit | ||||
| OpenItemRateInPercent | OpenItemRateInPercent | Payments in Clarification in % | ||
| int4endasAutomlyClrdItemRateInPercent | Payments Posted Automatically in % | |||
| int4endasMnllyClearedItemRateInPercent | Payments Posted Manually in % | |||
| int4endasMaLrnClearedItemRateInPercent | Payments Posted using Cash App in % | |||
| fltpendasMaLrnHighCnfdncAutomRateInPct | High Confidence with Automatic Posting in % | |||
| fltpendasMaLrnHighCnfdncPrpslRateInPct | High Confidence Proposal in % | |||
| fltpendasMaLrnGoodCnfdncPrpslRateInPct | Good Confidence Proposal in % | |||
| fltpendasMaLrnLowCnfdncPrpslRateInPct | Low Confidence Proposal in % | |||
| fltpendasMchnLrngWithoutPrpslRateInPct | No Proposal Available in % | |||
| _CAPaytLotAnlysPaytUsge | _CAPaytLotAnlysPaytUsge | |||
| _CAPaytLotAnlysClrfctnDurn | _CAPaytLotAnlysClrfctnDurn | |||
| MchnLrngIsActvForPaytAssgmt | MchnLrngIsActvForPaytAssgmt |
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_CAPaymentLotAnalysis.
-- 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: CCAPAYLOTANLYS
CREATE VIEW C_CAPaymentLotAnalysis AS
SELECT
CAPaymentLot,
CompanyCode,
cast(CompanyCodeName as bukrs_text_gfn_kk preserving type) AS CompanyCodeName,
CADocumentOriginCode,
CADocumentOriginCodeName,
CAPaymentLotStatus,
CAPaymentLotStatusCriticality,
CAPaymentLotStatusName,
HouseBank,
cast(HouseBankName as hbkid_text_gfn_kk preserving type ) AS HouseBankName,
HouseBankAccount,
HouseBankAccountDescription,
cast (BankStatementShortID as kukey_kk preserving type) AS BankStatementShortID,
_CAPaymentLotAnalysis.CANumberOfPaymentLotOpenItems AS CANumberOfPaymentLotOpenItems,
case when _CAPaymentLotAnalysis.CANumberOfPaymentLotOpenItems is null then cast('3' as abap.numc(1)) when _CAPaymentLotAnalysis.CANumberOfPaymentLotOpenItems >= 1 then cast('1' as abap.numc(1)) else cast('0' as abap.numc(1)) end as CANrOfPaytLotOpenItemsCritlty AS numc1endasCANrOfPaytLotOpenItemsCritlty,
cast(CANumberOfPaymentLotItems as abap.int4 ) AS CANumberOfPaymentLotItems,
CreationDate,
cast (TotalDebitAmount as summs_gfn preserving type) AS TotalDebitAmount,
TotalAmountCurrency,
CAOpenItemsAmountInTC,
CANrOfPaytLotAutomlyClrdItems,
_CAPaymentLotManualClr.CANrOfPaytLotMnllyClearedItems AS CANrOfPaytLotMnllyClearedItems,
_CAPaymentLotClearedWithML.CANrOfPaytLotMaLrnClearedItems AS CANrOfPaytLotMaLrnClearedItems,
cast('%' as unit) AS CAPercentageUnit,
OpenItemRateInPercent,
case when CANrOfPaytLotAutomlyClrdItems > 0 then division( CANrOfPaytLotAutomlyClrdItems, cast(CANumberOfPaymentLotItems as abap.int4), 4) *100 else cast(0 as abap.int4) end as AutomlyClrdItemRateInPercent AS int4endasAutomlyClrdItemRateInPercent,
case when _CAPaymentLotManualClr.CANrOfPaytLotMnllyClearedItems > 0 then division( _CAPaymentLotManualClr.CANrOfPaytLotMnllyClearedItems, cast(CANumberOfPaymentLotItems as abap.int4), 4) *100 else cast(0 as abap.int4) end as MnllyClearedItemRateInPercent AS int4endasMnllyClearedItemRateInPercent,
case when _CAPaymentLotClearedWithML.CANrOfPaytLotMaLrnClearedItems > 0 then division(_CAPaymentLotClearedWithML.CANrOfPaytLotMaLrnClearedItems, cast(CANumberOfPaymentLotItems as abap.int4), 4) *100 else cast(0 as abap.int4) end as MaLrnClearedItemRateInPercent AS int4endasMaLrnClearedItemRateInPercent,
case when _CAPaytLotItmHighCnfAutoML.CANrOfItemsWithHighCnfAutoML > 0 then division(_CAPaytLotItmHighCnfAutoML.CANrOfItemsWithHighCnfAutoML,_CAPaymentLotItemsWithML.NumberOfAllItemsWithML, 4) *100 else cast(0 as abap.fltp) end as MaLrnHighCnfdncAutomRateInPct AS fltpendasMaLrnHighCnfdncAutomRateInPct,
case when _CAPaytLotItmHighCnfPrpslML.CANrOfItemsWithHighCnfPrpslML > 0 then division(_CAPaytLotItmHighCnfPrpslML.CANrOfItemsWithHighCnfPrpslML,_CAPaymentLotItemsWithML.NumberOfAllItemsWithML, 4) *100 else cast(0 as abap.fltp) end as MaLrnHighCnfdncPrpslRateInPct AS fltpendasMaLrnHighCnfdncPrpslRateInPct,
case when _CAPaytLotItmGoodCnfPrpslML.CANrOfItemsWithGoodCnfPrpslML > 0 then division(_CAPaytLotItmGoodCnfPrpslML.CANrOfItemsWithGoodCnfPrpslML,_CAPaymentLotItemsWithML.NumberOfAllItemsWithML, 4) *100 else cast(0 as abap.fltp) end as MaLrnGoodCnfdncPrpslRateInPct AS fltpendasMaLrnGoodCnfdncPrpslRateInPct,
case when _CAPaytLotItmLowCnfPrpslML.CANrOfItemsWithLowCnfPrpslML > 0 then division(_CAPaytLotItmLowCnfPrpslML.CANrOfItemsWithLowCnfPrpslML,_CAPaymentLotItemsWithML.NumberOfAllItemsWithML, 4) *100 else cast(0 as abap.fltp) end as MaLrnLowCnfdncPrpslRateInPct AS fltpendasMaLrnLowCnfdncPrpslRateInPct,
case when _CAPaytLotItmNoPrpslML.CANrOfItemsWithNoPrpslML > 0 then division(_CAPaytLotItmNoPrpslML.CANrOfItemsWithNoPrpslML,_CAPaymentLotItemsWithML.NumberOfAllItemsWithML, 4) *100 else cast(0 as abap.fltp) end as MchnLrngWithoutPrpslRateInPct AS fltpendasMchnLrngWithoutPrpslRateInPct,
MchnLrngIsActvForPaytAssgmt
FROM P_CAPaymentLotAnalysis AS _CAPaymentLotAnalysis
LEFT OUTER JOIN P_CAPaymentLotManualClr AS _CAPaymentLotManualClr ON CAPaymentLot = _CAPaymentLotManualClr.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaymentLotClearedWithML AS _CAPaymentLotClearedWithML ON CAPaymentLot = _CAPaymentLotClearedWithML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaymentLotItemsWithML AS _CAPaymentLotItemsWithML ON CAPaymentLot = _CAPaymentLotItemsWithML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaytLotItmHighCnfAutoML AS _CAPaytLotItmHighCnfAutoML ON CAPaymentLot = _CAPaytLotItmHighCnfAutoML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaytLotItmHighCnfPrpslML AS _CAPaytLotItmHighCnfPrpslML ON CAPaymentLot = _CAPaytLotItmHighCnfPrpslML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaytLotItmGoodCnfPrpslML AS _CAPaytLotItmGoodCnfPrpslML ON CAPaymentLot = _CAPaytLotItmGoodCnfPrpslML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaytLotItmLowCnfPrpslML AS _CAPaytLotItmLowCnfPrpslML ON CAPaymentLot = _CAPaytLotItmLowCnfPrpslML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN P_CAPaytLotItmNoPrpslML AS _CAPaytLotItmNoPrpslML ON CAPaymentLot = _CAPaytLotItmNoPrpslML.CAPaymentLot -- association [1..1]
LEFT OUTER JOIN C_CAPaytLotAnlysPaytUsge AS _CAPaytLotAnlysPaytUsge ON CAPaymentLot = _CAPaytLotAnlysPaytUsge.CAPaymentLot -- association [0..*]
LEFT OUTER JOIN C_CAPaytLotAnlysClrfctnDurn AS _CAPaytLotAnlysClrfctnDurn ON CAPaymentLot = _CAPaytLotAnlysClrfctnDurn.CAPaymentLot -- 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