C_CollectionsInvoiceTP

DDL: C_COLLECTIONSINVOICETP Type: view_entity CONSUMPTION Package: ODATA_PROCESS_RECEIVABLES

Collections Invoice

C_CollectionsInvoiceTP is a Consumption CDS View that provides data about "Collections Invoice" in SAP S/4HANA. It reads from 1 data source (R_CollectionsInvoiceTP) and exposes 75 fields with key fields CollectionSegment, CompanyCode, FiscalYear, AccountingDocument, AccountingDocumentItem. It is exposed through 4 OData services (UI_DISPUTECASE_MANAGE, UI_HOBRECEIVABLES_DISPLAY, UI_INVOICEPRIOZNRULE_MAN, ...). It is used in 3 Fiori applications: Manage Dispute Cases (Version 2), Display Head Office Receivables, Manage Invoice Prioritization Rules. Part of development package ODATA_PROCESS_RECEIVABLES.

Data Sources (1)

SourceAliasJoin Type
R_CollectionsInvoiceTP R_CollectionsInvoiceTP projection

Annotations (10)

NameValueLevelField
Metadata.allowExtensions true view
VDM.viewType #CONSUMPTION view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.representativeKey AccountingDocumentItem view
ObjectModel.query.implementedBy ABAP:CL_COLL_PR_INV_QUERY view
EndUserText.label Collections Invoice view

OData Services (4)

ServiceBindingVersionContractRelease
UI_DISPUTECASE_MANAGE UI_DISPUTECASE_MANAGE V2 C1 NOT_TO_BE_RELEASED_STABLE
UI_HOBRECEIVABLES_DISPLAY UI_HOBRECEIVABLES_DISPLAY V2 C1 NOT_TO_BE_RELEASED_STABLE
UI_INVOICEPRIOZNRULE_MAN UI_INVOICEPRIOZNRULE_MAN V2 C1 NOT_TO_BE_RELEASED_STABLE
UI_PROCESSRECEIVABLES_MANAGE UI_PROCESSRECEIVABLES_MAN V2 C1 NOT_TO_BE_RELEASED_STABLE

Fiori Apps (3)

App IDApp NameTypeDescription
F0702A Manage Dispute Cases (Version 2) Transactional Use this app to analyze and further process existing dispute cases. This involves dispute cases that are related to open receivables for your customers.
F5401 Display Head Office Receivables Transactional If head office / branch relationships are used in SAP FI-AR, the work list entries in SAP Collections Management can be created on the branch level. Accordingly, only the branch related FI line items are shown on the Invoices list in the Process Receivables app. The app Head Office Receivables can be called via the button Display Head Office Receivables in the Process Receivables app. The button is only available, if such a relationship is maintained for the customer. The app provides the information on customer recevievables and related objects (dispute cases, promises to pay, resubmissions, company relationships, notes) from the perspective of the head office. Unlike the Process Receivables, the creation of new objects is not possible in this app.
F5470 Manage Invoice Prioritization Rules Transactional You use this app in order to define rules based on which the invoices that are displayed in the Fiori app Process Receivables are prioritized. This helps the collection specialist to focus on the most important invoices during his collection call with the customer, in particular if there are many of them.

Manage Dispute Cases (Version 2)

Business Role: Accounts Receivable Accountant

Use this app to analyze and further process existing dispute cases. This involves dispute cases that are related to open receivables for your customers.

Display Head Office Receivables

Business Role: Accounts Receivable Accountant

If head office / branch relationships are used in SAP FI-AR, the work list entries in SAP Collections Management can be created on the branch level. Accordingly, only the branch related FI line items are shown on the Invoices list in the Process Receivables app. The app Head Office Receivables can be called via the button Display Head Office Receivables in the Process Receivables app. The button is only available, if such a relationship is maintained for the customer.The app provides the information on customer recevievables and related objects (dispute cases, promises to pay, resubmissions, company relationships, notes) from the perspective of the head office. Unlike the Process Receivables, the creation of new objects is not possible in this app.

Manage Invoice Prioritization Rules

Business Role: Accounts Receivable Manager

Use this app to define rules to proritize invoices displayed in the Invoices section of the Process Receivables Fiori app.You can add rule and define criteria for the invoice priritization evaluation, and define Priority tresholds to group invoices in the Process Receivables.

Fields (75)

KeyFieldSource TableSource FieldDescription
KEY CollectionSegment CollectionSegment
KEY CompanyCode CompanyCode
KEY FiscalYear FiscalYear
KEY AccountingDocument AccountingDocument
KEY AccountingDocumentItem AccountingDocumentItem
Customer Customer
BranchAccount BranchAccount
DocumentDate DocumentDate
PostingDate PostingDate
DunningLevel DunningLevel
LastDunningDate LastDunningDate
NetDueDate NetDueDate
Reference1InDocumentHeader Reference1InDocumentHeader
Reference2InDocumentHeader Reference2InDocumentHeader
PaymentMethod PaymentMethod
FinancialAccountType FinancialAccountType
OverdueDays OverdueDays
CashDiscount1Days CashDiscount1Days
AmountInTransactionCurrency AmountInTransactionCurrency
PaidAmount PaidAmount
DunnedAmount DunnedAmount
OpenAmountInDocumentCurrency OpenAmountInDocumentCurrency
CashDiscountAmtInTransacCrcy CashDiscountAmtInTransacCrcy
TransactionCurrency TransactionCurrency
PaymentDate PaymentDate
DunningBlockingReason DunningBlockingReason
SpecialGLCode SpecialGLCode
OperationalGLAccount OperationalGLAccount
FiscalPeriod FiscalPeriod
BillingDocument BillingDocument
PostingKey PostingKey
DocumentItemText DocumentItemText
ReferenceDocumentLogicalSystem ReferenceDocumentLogicalSystem
CaseStatus CaseStatus
CaseStatusName CaseStatusName
CaseReason CaseReason
ReasonCodeName ReasonCodeName
PromiseToPayStatus PromiseToPayStatus
DisputeCase DisputeCase
PromiseToPay PromiseToPay
NumberOfResubmissions NumberOfResubmissions
ArrangedAmount ArrangedAmount
PromisedAmount PromisedAmount
PromiseToPayLevel PromiseToPayLevel
PromiseToPayDueDate PromiseToPayDueDate
DisputedAmount DisputedAmount
CreditedAmount CreditedAmount
DocumentReferenceID DocumentReferenceID
LastDunningDurationInDays LastDunningDurationInDays
ObjectKey ObjectKey
Country Country
ResubmissionUUID ResubmissionUUID
ResubmissionDueDate ResubmissionDueDate
ResubmissionReason ResubmissionReason
NumberOfDaysSinceResubmission NumberOfDaysSinceResubmission
CaseUniqueID CaseUniqueID
LatePaymentRisk LatePaymentRisk
PostingKeyNameasPostingKeyNamelocalized
CompanyCodeName _CompanyCode CompanyCodeName
CustomerName _Customer CustomerName
BranchAccountName _BranchAccount CustomerName
virtualUICT_OverdueDayschar1
virtualCriticalitychar1
virtualUICT_CollectionSegmentboolean
virtualUICT_BillingDocumentIconboolean
_CollectionSegment _CollectionSegment
_CompanyCode _CompanyCode
_Customer _Customer
_BranchAccount _BranchAccount
_BillingDocument _BillingDocument
_DunningBlockingReasonCode _DunningBlockingReasonCode
_SpecialGLCode _SpecialGLCode
_PostingKey _PostingKey
_PromiseToPayStatus _PromiseToPayStatus
_OperationalAcctgDocItem _OperationalAcctgDocItem
@Metadata: { allowExtensions: true }
@VDM: { usage: { type:     [ #TRANSACTIONAL_PROCESSING_SERVICE ] },
                 viewType: #CONSUMPTION }
@AccessControl: { personalData:           { blocking: #BLOCKED_DATA_EXCLUDED },
                  authorizationCheck:     #CHECK }
@ObjectModel: { usageType: { serviceQuality: #C,
                             sizeCategory:   #L,
                             dataClass:      #TRANSACTIONAL },
                representativeKey: 'AccountingDocumentItem',
                semanticKey: [ 'CollectionSegment',
                               'Customer',
                               'BranchAccount',
                               'PostingKey',
                               'CompanyCode',
                               'FiscalYear',
                               'AccountingDocument',
                               'AccountingDocumentItem',
                               'DisputeCase',
                               'PromiseToPay' ],
                query: { implementedBy: 'ABAP:CL_COLL_PR_INV_QUERY' },
                supportedCapabilities: [ #SITUATION_ANCHOR ] }
@EndUserText: { label: 'Collections Invoice' }

define root view entity C_CollectionsInvoiceTP
  provider contract transactional_query
  as projection on R_CollectionsInvoiceTP as CollectionsInvoice
{

          @ObjectModel: { text: { element: [ 'CollectionSegmentName' ] } } 
  key     CollectionSegment,

          @ObjectModel: { text: { element: [ 'CompanyCodeName' ] } }
  key     CompanyCode,

  key     FiscalYear,
  key     AccountingDocument,
  key     AccountingDocumentItem,

          @ObjectModel: { text: { element: [ 'CustomerName' ] } }
          Customer,

          @ObjectModel: { text: { element: [ 'BranchAccountName' ] } }
          BranchAccount,

          DocumentDate,
          PostingDate,
          DunningLevel,
          LastDunningDate,

          @ObjectModel: { text: { element: [ 'OverdueDays' ] } }
          NetDueDate,

          Reference1InDocumentHeader,
          Reference2InDocumentHeader,

          @ObjectModel: { text: { element: [ 'PaymentMethodDescription' ] } }
          PaymentMethod,

          FinancialAccountType,

          OverdueDays,
          CashDiscount1Days,
          AmountInTransactionCurrency,
          PaidAmount,
          DunnedAmount,
          OpenAmountInDocumentCurrency,

          CashDiscountAmtInTransacCrcy,
          TransactionCurrency,
          PaymentDate,

          @ObjectModel: { text: { element: [ 'DunningBlockingReasonDesc' ] } }
          DunningBlockingReason,

          @ObjectModel: { text: { element: [ 'SpecialGLCodeLongName' ] } }
          SpecialGLCode,

          OperationalGLAccount,
          FiscalPeriod,
          BillingDocument,

          @ObjectModel: { text: { element: [ 'PostingKeyName' ] } }
          PostingKey,

          DocumentItemText,
          ReferenceDocumentLogicalSystem,

          @ObjectModel: { text: { element: [ 'CaseStatusName' ] } }
          CaseStatus,

          CaseStatusName,

          @ObjectModel: { text: { element: [ 'ReasonCodeName' ] } }
          CaseReason,
          ReasonCodeName,

          @ObjectModel: { text: { element: [ 'PromiseToPayStatusName' ] } }
          PromiseToPayStatus,

          DisputeCase,
          PromiseToPay,
          NumberOfResubmissions,
          ArrangedAmount,
          PromisedAmount,
          PromiseToPayLevel,
          PromiseToPayDueDate,
          DisputedAmount,
          CreditedAmount,
          DocumentReferenceID,
          LastDunningDurationInDays,
          ObjectKey,
          Country,
          ResubmissionUUID,
          ResubmissionDueDate,
          ResubmissionReason,
          NumberOfDaysSinceResubmission,
          CaseUniqueID,
          
          @ObjectModel: { text: { element: [ 'LatePaymentRiskName' ] } }
          LatePaymentRisk,

          // Text elements

          _PromiseToPayStatus._Text.PromiseToPayStatusName                                    as PromiseToPayStatusName    : localized,
          _PostingKey._PostingKeyText.PostingKeyName                                          as PostingKeyName            : localized,
          _SpecialGLCode._Text.SpecialGLCodeLongName                                          as SpecialGLCodeLongName     : localized,
          _DunningBlockingReasonCode._Text.DunningBlockingReasonDesc                          as DunningBlockingReasonDesc : localized,
          _CollectionSegment._Text.CollectionSegmentName                                      as CollectionSegmentName     : localized,
          _CompanyCode.CompanyCodeName                                                        as CompanyCodeName,
          _Customer.CustomerName                                                              as CustomerName,
          _BranchAccount.CustomerName                                                         as BranchAccountName,
          _PaymentMethod._Text.PaymentMethodDescription                                       as PaymentMethodDescription  : localized,
          _CollsInvcPaytDelayPrediction._CollectionsLatePaymentRisk._Text.LatePaymentRiskName as LatePaymentRiskName       : localized,

          // Virtual Elements

  virtual UICT_OverdueDays             : char1,
  virtual Criticality                  : char1,
  virtual UICT_CollectionSegment       : boolean,
  virtual UICT_DebtCollectionsIsActive : boolean,
  virtual UICT_BillingDocumentIcon     : boolean,
  virtual SitnNumberOfInstances        : sit_de_inst_count,
  virtual CollectionsInvoiceUniqueID   : sit_de_def_ancobj,

          // Exposed Associations

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _CollectionSegment,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _CompanyCode,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _Customer,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _BranchAccount,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _BillingDocument,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _DunningBlockingReasonCode,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _SpecialGLCode,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _PostingKey,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _PromiseToPayStatus,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _OperationalAcctgDocItem,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _CollectionsInvoiceNote       : redirected to C_CollectionsInvoiceNote,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _LinkedDisputeCase            : redirected to C_CollsInvoiceRelatedDsputCase,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _LinkedPromiseToPay           : redirected to C_CollsInvoiceRelatedPrms2P,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _LinkedResubmission           : redirected to C_CollsInvoiceRelatedResubmsn,

          @ObjectModel: { sort: { enabled: false },
                          filter: { enabled: false } }
          _CollsInvcPaytDelayPrediction : redirected to C_CollsInvcPaytDelayPrediction

}