Presentation of not overdue invoices in customer ledger age analysis report


Userlevel 3
Badge +8

For the operational report customer ledger age analysis standard behaviour of the application is that If an invoice due date is set to 5/6/2021, it will be due on 5/6/2021 (not overdue), therefore the invoice in report will presented as overdue in second column “0-30”. This is the intended functionality of the application which has been implemented back in 2006.

My client espect that invoice should be presented in the first column named “Not Due” and te standard behaviour of the application is not acceptable, what do you think about it?

  1. Invoice should be presented in first column named “Not Due”
  2. Invoice should be presented in second column named “0-30”

Below screens are presenting standard behaviour of the application:

 


16 replies

Userlevel 5
Badge +11

Hi,

as you wrote, the report is designed to show the invoices based on their due date. The outcome is more likely “due since n-days”. As a consequence the report shows somehow overdue invoices but as the column description says it shows the invoices with due dates 0(today)..30 days 

When ordering the report you are able to change the intervals to be used. If you dont want to have the invoices due by today in the column 0..30 then you can start just with the interval 0 (just the todays due invoices)

The invoices due by today should be shown in the first column then.

Regards

Ralph

Badge +1

Hi all, 

I have the same case in my customer (they are after GO LIVE) and we fixed that using modification. 
I also heard opinion that people from audit team who checked financial statement and compare that with reports have problem with that reports.

 

I belive that the best option will be improve that report. 

 

BR, 

Aleksandra

Userlevel 7
Badge +15

Hello, Aleksandra and Bartłomiej, 

As per my understanding, current behavior is correct and as expected. Invoice due to be paid today is due already and should not be presented under “Not due” column header. It might not be overdue yet…

I was using this report since long time and so far neither any of my customers nor auditors was raising such point. You must have met very specific person…. Nothing new, in fact, since concept of zero value as part of natural numbers set was introduced there are disputes around it.

Normally, payment terms agreed consider grace period and few days delay in payment has no consequences, the first set of due invoices (eg.0-30 days) should cover this grace period, and only remaining items should be treated as overdue and be subject of some debt collection actions. I would be reluctant to ask for report improvement.

Badge +1

Hi Adam, 

Customer example was something like:

  1. I generate that report in the morning (today) so the invoice is in ‘due part’ even if I have still chance to pay that.
  2. I prepare file to bank and pay for that (still is morning the same day)
  3. Bank send money for customer (the same day) - afternoon the same day
  4. In report it’s overdue but we already pay that in them :)

I understand your argument and customer arguments - believe me:)

Unfortunately, some customers are very serious about charging interest and sending reminders when payment is not made. 
And I agree that here it is accuracy to the point of exaggeration. 

 

Regards,

Aleksandra

Userlevel 7
Badge +15

Cześć,

In such a case (report created in the morning) analysis date parameter should be set to yesterday, not to today :)

I think report run in this way includes all payments reported yesterday - in the day of analysis, and invoice due today is presented as not yet due… 

Pozdrawiam

Adam Bereda
 

Userlevel 3
Badge +8

Hello,

Thank all of you for your answers, specially Ralph for workaround. For me report simply shows false data in described use case, because if something is not overdue it should be presented it not overdue column. There is also 

best reards

Bartłomiej Pobocha

Userlevel 7
Badge +15

Hi, Bartek,

Report does not have “Not OVERdue” column, but “Not due” column :).

Depending on the need, report run with analysis date today or yesterday will show you desired result.

Of course, as Ralph suggested, you can   present “due, but not overdue” items in separate column.

It is just a matter of explanation to the customer, report itself is fine - as designed.

Userlevel 3
Badge +8

Adam, in polish version of the report we have columns:

“Nie do zapłaty” (in english version of the report “Not due”) - which I understand as not overdue and due today

“Należne X-Y Dni”(in english version of the report “Due X-Y Days”) - which I understand as overdue from X to Y days. 0 isn’t overdue so in my opinion it shouldn’t belong to that column.

I will try to explain it to customer.

Thanks for all and best regards

Bartłomiej Pobocha

Userlevel 7
Badge +15

Cześć. 

I will argue still :)

It is just a matter of understanding, which side zero belongs to.

“Nie do zapłaty” means same as not due. If something is due today - it is due (“do zapłaty” or “Należne 0 dni”). 

One sentence in Polish: jak coś jest należne do zapłaty dziś, to jest należne do zapłaty, więc powinno być prezentowane jako należne 0 dni; dlatego jeśli klient uważa, że powinno być inaczej, niech robi raport z datą analizy na wczoraj - wtedy faktury z dzisiejszym terminem będą widniały jako “nie do zapłaty”, a pozostałe zakresy dni należnych może sobie ustawić jak zechce; jedyny mały minus jaki widzę, to że w raporcie nie będzie dzisiejszych wpłat - ale kto w Polsce księguje wyciągi na bieżąco?

Userlevel 1
Badge +5

I would like to know where these fields come from in IFS that exist on the operational report customer ledger age analysis. Is there a way to check and validate these fields?

Userlevel 7
Badge +15

Hello, Michele,
Which fields are you referring to? Talking about Not Due/Due XX -YY days column, it is result of internal calculation in the report - for each installment on the customer item it is calculating number of days between installment due date and report analysis date and assign installment open amount into relevant basket. 

Userlevel 1
Badge +5

I am also wondering where the other fields come from because I need to turn this into a quick report with added fields from different views. Seems like I am not getting all of the data so I was thinking maybe I cannot get the fields from the report itself.

Userlevel 7
Badge +15

Hi, 
I am using following query to get raw report result into Excel (adding account, original currency and invoice notes) - from report archive and using result key as a parameter:

SELECT 
IFSAPP.LEDGER_ITEM_API.GET_CODE_PART('A', T.COMPANY, T.IDENTITY, DECODE (T.IDENTITY, T.COMPANY, 'COMPANY','CUSTOMER'), 
                                     SERIES_ID, INVOICE_NO, NVL(IFSAPP.INVOICE_API.GET_INVOICE_VERSION(T.COMPANY, T.IDENTITY, 'CUSTOMER', SERIES_ID, INVOICE_NO),1)) ACCOUNT,
T.*, 
IFSAPP.LEDGER_ITEM_API.get_currency (T.COMPANY, T.IDENTITY, DECODE (T.IDENTITY, T.COMPANY, 'COMPANY','CUSTOMER'), SERIES_ID, INVOICE_NO, 
                                     NVL(IFSAPP.INVOICE_API.GET_INVOICE_VERSION(T.COMPANY, T.IDENTITY, 'CUSTOMER', SERIES_ID, INVOICE_NO),1)) inv_currency, 
ifsapp.fin_note_text_api.Get_Note_Text(IFSAPP.INVOICE_NOTE_API.Get_Note_Id ('COMPANY' || CHR(31) || t.company|| CHR(30) || 'INVOICE_ID' || CHR(31) || 
                                                                            IFSAPP.INVOICE_LEDGER_ITEM_API.get_invoice_id(T.COMPANY, T.IDENTITY, DECODE (T.IDENTITY, T.COMPANY, 'COMPANY','CUSTOMER'), 
                                                                                                                          SERIES_ID, INVOICE_NO, 
                                                                                                                          NVL(IFSAPP.INVOICE_API.GET_INVOICE_VERSION(T.COMPANY, T.IDENTITY, 'CUSTOMER', SERIES_ID, INVOICE_NO),1))
                                                                             || CHR(30) || '')) inv_notes
FROM IFSAPP.CUST_AGE_ANALYSIS_REP T 
WHERE RESULT_KEY = '&RESULTKEY'

Userlevel 5
Badge +11

@Adam - you have been quicker ;)

 

I use this quick report to get the report data from the archive:

 

Userlevel 1
Badge +5

So if I want to get additional fields from different tables like Currency or Due Date how would I join tables to this report view? It seems like im not getting any data back because the report view has no table associated with it

Userlevel 7
Badge +15

Hello,

Please analyze my query carefully. 
I am fetching currency from ledger_item object using api method:

IFSAPP.LEDGER_ITEM_API.get_currency (T.COMPANY, T.IDENTITY, DECODE (T.IDENTITY, T.COMPANY, 'COMPANY','CUSTOMER'), SERIES_ID, INVOICE_NO, 
                                     NVL(IFSAPP.INVOICE_API.GET_INVOICE_VERSION(T.COMPANY, T.IDENTITY, 'CUSTOMER', SERIES_ID, INVOICE_NO),1))

T here is report view 

FROM IFSAPP.CUST_AGE_ANALYSIS_REP T 

In the report result (run in Detailed mode, Summary report does not contain individual invoices) we have customer id, invoice series and number, we miss version, so I am using another method to fetch it (and 1 as default value for non-invoice items, like CUPOA or CUPIA).

You can fetch other required data in similar way.

Reply