I_CollectionsInvoice
Collections Invoices
I_CollectionsInvoice is a Composite CDS View that provides data about "Collections Invoices" in SAP S/4HANA. It reads from 2 data sources (I_CollsSgmtCompanyCodeAssgmt, I_OperationalAcctgDocItem) and exposes 76 fields with key fields CollectionSegment, CompanyCode, FiscalYear, AccountingDocument, AccountingDocumentItem. It has 9 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_CollsSgmtCompanyCodeAssgmt | I_CollsSgmtCompanyCodeAssgmt | from |
| I_OperationalAcctgDocItem | I_OperationalAcctgDocItem | inner |
Associations (9)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_CollectionSegment | _CollectionSegment | $projection.CollectionSegment = _CollectionSegment.CollectionSegment |
| [0..1] | I_Customer | _Customer | $projection.Customer = _Customer.Customer |
| [0..1] | I_Customer | _BranchAccount | $projection.BranchAccount = _BranchAccount.Customer |
| [0..1] | I_BillingDocument | _BillingDocument | $projection.BillingDocument = _BillingDocument.BillingDocument |
| [0..1] | I_DunningBlockingReasonCode | _DunningBlockingReasonCode | $projection.DunningBlockingReason = _DunningBlockingReasonCode.DunningBlockingReason |
| [0..1] | I_CollsPromiseToPayStatus | _PromiseToPayStatus | $projection.PromiseToPayStatus = _PromiseToPayStatus.PromiseToPayStatus |
| [0..1] | I_PaymentMethod | _PaymentMethod | $projection.PaymentMethod = _PaymentMethod.PaymentMethod and $projection.Country = _PaymentMethod.Country |
| [0..1] | I_OperationalAcctgDocItem | _OperationalAcctgDocItem | $projection.CompanyCode = _OperationalAcctgDocItem.CompanyCode and $projection.AccountingDocument = _OperationalAcctgDocItem.AccountingDocument and $projection.FiscalYear = _OperationalAcctgDocItem.FiscalYear and $projection.AccountingDocumentItem = _OperationalAcctgDocItem.AccountingDocumentItem |
| [0..1] | I_CollsInvcPaytDelayPrediction | _CollsInvcPaytDelayPrediction | $projection.CompanyCode = _CollsInvcPaytDelayPrediction.CompanyCode and $projection.AccountingDocument = _CollsInvcPaytDelayPrediction.AccountingDocument and $projection.FiscalYear = _CollsInvcPaytDelayPrediction.FiscalYear and $projection.AccountingDocumentItem = _CollsInvcPaytDelayPrediction.AccountingDocumentItem |
Annotations (13)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | ICOLLSINV | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| EndUserText.label | Collections Invoices | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.serviceQuality | #X | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.representativeKey | AccountingDocument | view |
Fields (76)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CollectionSegment | CollectionSegment | ||
| KEY | CompanyCode | I_OperationalAcctgDocItem | CompanyCode | |
| KEY | FiscalYear | FiscalYear | ||
| KEY | AccountingDocument | AccountingDocument | ||
| KEY | AccountingDocumentItem | AccountingDocumentItem | ||
| Customer | Customer | |||
| BranchAccount | BranchAccount | |||
| DocumentDate | _OperationalAcctgDocItem | DocumentDate | ||
| PostingDate | PostingDate | |||
| DunningLevel | DunningLevel | |||
| LastDunningDate | LastDunningDate | |||
| NetDueDate | NetDueDate | |||
| Reference1InDocumentHeader | _JournalEntry | Reference1InDocumentHeader | ||
| Reference2InDocumentHeader | _JournalEntry | Reference2InDocumentHeader | ||
| PaymentMethod | PaymentMethod | |||
| FinancialAccountType | FinancialAccountType | |||
| OverdueDays | ||||
| CashDiscount1Days | ||||
| AmountInTransactionCurrency | AmountInTransactionCurrency | |||
| PaidAmount | ||||
| DunnedAmount | ||||
| OpenAmountInDocumentCurrency | ||||
| CashDiscountAmtInTransacCrcy | ||||
| TransactionCurrency | TransactionCurrency | |||
| PaymentDate | ||||
| DunningBlockingReason | DunningBlockingReason | |||
| SpecialGLCode | SpecialGLCode | |||
| OperationalGLAccount | OperationalGLAccount | |||
| FiscalPeriod | FiscalPeriod | |||
| BillingDocument | BillingDocument | |||
| PostingKey | PostingKey | |||
| DocumentItemText | DocumentItemText | |||
| DocumentReferenceID | _JournalEntry | DocumentReferenceID | ||
| InvoiceReference | InvoiceReference | |||
| InvoiceReferenceFiscalYear | InvoiceReferenceFiscalYear | |||
| InvoiceItemReference | InvoiceItemReference | |||
| FollowOnDocumentType | FollowOnDocumentType | |||
| ClearingDate | ClearingDate | |||
| AccountingDocumentCategory | AccountingDocumentCategory | |||
| ReferenceDocumentLogicalSystem | ReferenceDocumentLogicalSystem | |||
| LastDunningDurationInDays | ||||
| CaseStatus | ||||
| CaseStatusName | ||||
| CaseReason | ||||
| ReasonCodeName | ||||
| PromiseToPayStatus | ||||
| DisputeCase | ||||
| PromiseToPay | ||||
| NumberOfResubmissions | ||||
| ResubmissionUUID | ||||
| ResubmissionDueDate | ||||
| ResubmissionReason | ||||
| NumberOfDaysSinceResubmission | ||||
| ArrangedAmount | ||||
| PromisedAmount | ||||
| PromiseToPayLevel | ||||
| PromiseToPayDueDate | ||||
| DisputedAmount | ||||
| CreditedAmount | ||||
| ObjectKey | ||||
| Country | _Customer | Country | ||
| CaseUniqueID | ||||
| LatePaymentRisk | ||||
| _CollectionSegment | _CollectionSegment | |||
| _CompanyCode | I_OperationalAcctgDocItem | _CompanyCode | ||
| _Customer | _Customer | |||
| _BranchAccount | _BranchAccount | |||
| _BillingDocument | _BillingDocument | |||
| _DunningBlockingReasonCode | _DunningBlockingReasonCode | |||
| _SpecialGLCode | I_OperationalAcctgDocItem | _SpecialGLCode | ||
| _PostingKey | _PostingKey | |||
| _JournalEntry | _JournalEntry | |||
| _PromiseToPayStatus | _PromiseToPayStatus | |||
| _PaymentMethod | _PaymentMethod | |||
| _OperationalAcctgDocItem | _OperationalAcctgDocItem | |||
| _CollsInvcPaytDelayPrediction | _CollsInvcPaytDelayPrediction |
@AbapCatalog: { sqlViewName: 'ICOLLSINV',
compiler: { compareFilter: true },
preserveKey: true }
@AccessControl: { authorizationCheck: #CHECK,
personalData: { blocking: #BLOCKED_DATA_EXCLUDED } }
@EndUserText: { label: 'Collections Invoices' }
@VDM: { viewType: #COMPOSITE,
lifecycle: { contract: { type: #PUBLIC_LOCAL_API } } }
@ClientHandling: { algorithm: #SESSION_VARIABLE }
@ObjectModel: { usageType: { serviceQuality: #X,
sizeCategory: #L,
dataClass: #TRANSACTIONAL },
semanticKey: [ 'CollectionSegment', 'CompanyCode', 'FiscalYear', 'AccountingDocument', 'AccountingDocumentItem' ],
representativeKey: 'AccountingDocument' }
define view I_CollectionsInvoice
as select from I_CollsSgmtCompanyCodeAssgmt
inner join I_OperationalAcctgDocItem on I_CollsSgmtCompanyCodeAssgmt.CompanyCode = I_OperationalAcctgDocItem.CompanyCode
// VDM Associations
// CollectionSegment
association [0..1] to I_CollectionSegment as _CollectionSegment on $projection.CollectionSegment = _CollectionSegment.CollectionSegment
// Customer
association [0..1] to I_Customer as _Customer on $projection.Customer = _Customer.Customer
// Branch Account
association [0..1] to I_Customer as _BranchAccount on $projection.BranchAccount = _BranchAccount.Customer
// Billing Document
association [0..1] to I_BillingDocument as _BillingDocument on $projection.BillingDocument = _BillingDocument.BillingDocument
// Dunning Block
association [0..1] to I_DunningBlockingReasonCode as _DunningBlockingReasonCode on $projection.DunningBlockingReason = _DunningBlockingReasonCode.DunningBlockingReason
// Promise to Pay Status
association [0..1] to I_CollsPromiseToPayStatus as _PromiseToPayStatus on $projection.PromiseToPayStatus = _PromiseToPayStatus.PromiseToPayStatus
// Payment Method
association [0..1] to I_PaymentMethod as _PaymentMethod on $projection.PaymentMethod = _PaymentMethod.PaymentMethod
and $projection.Country = _PaymentMethod.Country
// Operational Accounting Document Item
association [0..1] to I_OperationalAcctgDocItem as _OperationalAcctgDocItem on $projection.CompanyCode = _OperationalAcctgDocItem.CompanyCode
and $projection.AccountingDocument = _OperationalAcctgDocItem.AccountingDocument
and $projection.FiscalYear = _OperationalAcctgDocItem.FiscalYear
and $projection.AccountingDocumentItem = _OperationalAcctgDocItem.AccountingDocumentItem
// Payment Date Prediction
association [0..1] to I_CollsInvcPaytDelayPrediction as _CollsInvcPaytDelayPrediction on $projection.CompanyCode = _CollsInvcPaytDelayPrediction.CompanyCode
and $projection.AccountingDocument = _CollsInvcPaytDelayPrediction.AccountingDocument
and $projection.FiscalYear = _CollsInvcPaytDelayPrediction.FiscalYear
and $projection.AccountingDocumentItem = _CollsInvcPaytDelayPrediction.AccountingDocumentItem
{
// VDM Fields
@ObjectModel: { foreignKey: { association: '_CollectionSegment' } }
key CollectionSegment,
@ObjectModel: { foreignKey: { association: '_CompanyCode' } }
key I_OperationalAcctgDocItem.CompanyCode as CompanyCode,
key FiscalYear,
key AccountingDocument,
key AccountingDocumentItem,
@ObjectModel: { foreignKey: { association: '_Customer' } }
Customer,
@ObjectModel: { foreignKey: { association: '_BranchAccount' } }
BranchAccount,
_OperationalAcctgDocItem.DocumentDate,
PostingDate,
DunningLevel,
LastDunningDate,
NetDueDate,
_JournalEntry.Reference1InDocumentHeader,
_JournalEntry.Reference2InDocumentHeader,
PaymentMethod,
FinancialAccountType,
cast( 0 as verzn ) as OverdueDays,
cast( '00000000' as sk1dt ) as CashDiscount1Days,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
AmountInTransactionCurrency,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( '0' as bdm_paid_amount ) as PaidAmount,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_dunning_amount ) as DunnedAmount,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_open_amount ) as OpenAmountInDocumentCurrency,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as wskto_cs ) as CashDiscountAmtInTransacCrcy,
@Semantics: { currencyCode: true }
TransactionCurrency,
cast( '00000000' as fdm_last_payment_date ) as PaymentDate,
@ObjectModel: { foreignKey: { association: '_DunningBlockingReasonCode' } }
DunningBlockingReason,
@ObjectModel: { foreignKey: { association: '_SpecialGLCode' } }
SpecialGLCode,
OperationalGLAccount,
FiscalPeriod,
@ObjectModel: { foreignKey: { association: '_BillingDocument' } }
BillingDocument,
@ObjectModel: { foreignKey: { association: '_PostingKey' } }
PostingKey,
DocumentItemText,
_JournalEntry.DocumentReferenceID as DocumentReferenceID,
InvoiceReference,
InvoiceReferenceFiscalYear,
InvoiceItemReference,
FollowOnDocumentType,
ClearingDate,
AccountingDocumentCategory,
ReferenceDocumentLogicalSystem,
cast( 0 as coll_pr_days_since_dunning ) as LastDunningDurationInDays,
cast( '00' as scmgstatusonr ) as CaseStatus,
cast( '' as scmgstat_descr ) as CaseStatusName,
cast( '0' as scmg_reason_code ) as CaseReason,
cast( '' as text60 ) as ReasonCodeName,
cast( '' as bdm_promise_state ) as PromiseToPayStatus,
cast( 0 as fdm_ext_key ) as DisputeCase,
cast( 0 as fdm_ext_key ) as PromiseToPay,
cast( 0 as fdm_inv_no_of_rsm ) as NumberOfResubmissions,
cast( 0 as scmg_case_guid ) as ResubmissionUUID,
cast( '' as bdm_rsm_date ) as ResubmissionDueDate,
cast( '' as bdm_rsm_reason ) as ResubmissionReason,
cast( 0 as coll_rsm_days_since_rsm ) as NumberOfDaysSinceResubmission,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_payment_arranged ) as ArrangedAmount,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_current_p2p_amount ) as PromisedAmount,
cast( 0 as bdm_promise_level ) as PromiseToPayLevel,
cast( '00000000' as bdm_promise_due_date ) as PromiseToPayDueDate,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_disputed_amount ) as DisputedAmount,
@Semantics: { amount: { currencyCode: 'TransactionCurrency' } }
cast( 0 as fdm_credit_amount ) as CreditedAmount,
cast ( '' as swo_typeid ) as ObjectKey,
_Customer.Country as Country,
cast ( '' as scmg_case_guid ) as CaseUniqueID,
cast ( '' as udm_coll_late_payment_risk ) as LatePaymentRisk,
// Exposed Associations
_CollectionSegment,
I_OperationalAcctgDocItem._CompanyCode,
_Customer,
_BranchAccount,
_BillingDocument,
_DunningBlockingReasonCode,
I_OperationalAcctgDocItem._SpecialGLCode,
_PostingKey,
_JournalEntry,
_PromiseToPayStatus,
_PaymentMethod,
_OperationalAcctgDocItem,
_CollsInvcPaytDelayPrediction
}
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- 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