PROPOSAL FOR INVOICE UNCOLLECTED

Proposal summary

JCurve Solutions would like to create a new report to retrieve data for data from Invoices, Credit Note documents, Debit Note documents. The report can recall backdate and need to show the amount based on as at date selected. And print reports in Excel format.

Requirement

New report ‘Invoice Uncollected’ to retrieve data for data from Invoices, Credit Note documents, and Debit Note documents.

Assumptions:

  • This report will retrieve data for data from the Invoice, Credit Note document, Debit Note document
  • The report can recall backdate and need to show the amount based on as at date selected
  • Print report as Excel format

Report Details – Criteria:

Criteria:
#FieldDescriptionDetails
1SubsidiarySelect Subsidiary for reportname of Subsidiary
2As of DateSelect as of Date to filter transactionInput as at Date to recall report compare with date in invoice and CN, DN
Report Details:
#FieldDescriptionDetails
1Company NameShow Subsidiary name that select for reportname of Subsidiary from custrecord_rapid_tht_company_legalname
2Invoice UncollectedReport NameFixed
3As atShow as at date to recall reportBased on as of date select in the criteria
Report Column:
#FieldDescriptionDetails
1Seq#Running NoRunning No
2Contract#Project No.Project Order
3Sale TypeSale TypeSale Type from invoice, credit note
4Customer POReference to customer POOther references No in Invoice screen and credit Note screen
5Customer NameCustomer NameCustomer in Invoice screen and credit Note screen
6Sector TypeSector typeSector Type from Customer Master
7Project NameProject Full NameProject Full Name
8Sales NameSales ManSale Reps
9InvoiceInvoice document NoInvoice #
10Inv. DateDateDate
11AmountTotalTotal => Include VAT
12Credit TermTermTerm payment from customer master
13AgingNo. of invoice outstanding compare with as at a date in the reportShow no. of the day by comparing invoice due date with as at date in the report selection criteria
14Not yet dueAmount of invoice which is not due yetAmount from invoice which Date Diff (as at date in report selection criteria – Invoice Due Date) < = 0
15Up to 30Amount from invoice which is no. of outstanding day between 1-30Amount from invoice which 1<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 30
1631 – 60Amount from invoice which is no. of outstanding day between 31-60Amount from invoice which 31<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 60
1761 – 90Amount from invoice which is no. of outstanding day between 61-90Amount from invoice which 61<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 90
1891 – 120Amount from invoice which is no. of outstanding day between 91-120Amount from invoice which 91<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 120
19121 – 150Amount from invoice which is no. of outstanding day between 121-150Amount from invoice which 121<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 150  
20151 – 180Amount from invoice which is no. of outstanding day between 151-180Amount from invoice which 151<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 180
21181 – 210Amount from invoice which is no. of outstanding day between 181-210Amount from invoice which 181<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 210  
22211 – 240Amount from invoice which is no. of outstanding day between 211-240Amount from invoice which 211<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 240  
23241 – 270Amount from invoice which is no. of outstanding day between 241-270Amount from invoice which 241<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 270  
24271 – 300Amount from invoice which is no. of outstanding day between 271-300Amount from invoice which 271<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 300  
25301 – 330Amount from invoice which is no. of outstanding day between 301-330Amount from invoice which 301<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 330  
26331 – 360Amount from invoice which is no. of outstanding day between 331-360Amount from invoice which 331<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 36  
27361 – 390Amount from invoice which is no. of outstanding day between 361-390Amount from invoice which 361<= Date Diff (as at date in report selection criteria – Invoice Due Date) <= 390  
28>>> 390Amount from invoice which is no. of outstanding day greater than 390Amount from invoice which Date Diff (as at date in report selection criteria – Invoice Due Date) > 390  
29Appointment DateAppointment dateLink from Customer Billing note
30Remark Blank Column
Report Summary:
#FieldDescriptionNS field
1Summary AmountSummary AmountSum Amount
2Not yet dueSummary Not yet dueSum Amount in Column
3Up to 30Summary up to 30Sum Amount in Column
431 – 60Summary 31 – 60Sum Amount in Column
561 – 90Summary 61 – 90Sum Amount in Column
691 – 120Summary 91 – 120Sum Amount in Column
7121 – 150Summary 121 – 150Sum Amount in Column
8151 – 180Summary 151 – 180Sum Amount in Column
9181 – 210Summary 181 – 210Sum Amount in Column
10211 – 240Summary 211 – 240Sum Amount in Column
11241 – 270Summary 241 – 270Sum Amount in Column
12271 – 300Summary 271 – 300Sum Amount in Column
13301 – 330Summary 301 – 330Sum Amount in Column
14331 – 360Summary 331 – 360Sum Amount in Column
15361 – 390Summary 361 – 390Sum Amount in Column
16>>>390Summary >>>390Sum Amount in Column

Our Solution

This requirement can be achieved by creating a new report using a script by fetching the data using transaction search. And this report will retrieve data for details from the Invoice transactions.

The navigation to the custom report can be added from the classic center. The user can navigate to Reports -> Custom Reports -> Invoice Uncollected. Then upon clicking the “Invoice Uncollected”, the user will be redirected to a report page.

The report will first display a detailed report based on the default filters, such as the subsidiary as G-ABLE CO., LTD and the As of Date as today, and then show a summary of the total amount in the report’s last row.

The fields given below will be indicated on the header part of the report.

Filters/ Criteria tabs Shown in Report Page:
#FieldField Name from NS records
1SubsidiarySubsidiary(subsidiary) list
2As of DateDate(trandate). The transactions will be displayed on or before the date selected in this filter.
Backend Criteria for Report:
1Transaction TypeInvoice records
2StatusOpen
Report Details:
#FieldField Name from NS records
1Company NameSubsidiary(subsidiary) name selected in filter
2Invoice UncollectedFixed
3As atBased on as of date select in the criteria

Please see the table below for the report column details for the detailed ‘Invoice Uncollected’ report.

Report Columns:
#FieldField Name from NS records
1Seq#Running no(Not from NS)
2Contract#Project Order(cseg_project_order) from project record
3Sale TypeSale Type(class) from Invoice record
4Customer POPO#(otherrefnum) from Invoice Record
5Customer NameCustomer(entity) from invoice
6Sector TypeSector Type(custentity_sector_type) from customer record
7Project NameProject Full Name(custbody_prj_name) from invoice record
8Sales NameSale1 from Invoice (salerep)
9InvoiceInvoice #(tranid) from invoice record
10Inv. DateDate(trandate) from invoice record
11AmountTotal(total) from the summary box on invoice record
12Credit TermTerms(terms) under financial subtab from the customer record
13AgingNumber of Days between invoice due date and selected date in the filter
14Not yet dueAmount(total) from invoice which Date diff. b/w selected date in filter and due date(duedate) of inv. <= 0 or Aging <=0
15Up to 30Amount(total) from invoice which 1 <= Date diff. b/w selected date and due date(duedate) of inv. <=30 or 1<= Aging <=30
1631 – 60Amount(total) from invoice which 31 <= Date diff. b/w selected date and due date(duedate) of inv. <=60
1761 – 90Amount(total) from invoice which 61 <= Date diff. b/w selected date and due date(duedate) of inv. <=90
1891 – 120Amount(total) from invoice which 91 <= Date diff. b/w selected date and due date(duedate) of inv. <=120
19121 – 150Amount(total) from invoice which 121 <= Date diff. b/w selected date and due date(duedate) of inv. <=150
20151 – 180Amount(total) from invoice which 151 <= Date diff. b/w selected date and due date(duedate) of inv. <=180
21181 – 210Amount(total) from invoice which 181 <= Date diff. b/w selected date and due date(duedate) of inv. <=210
22211 – 240Amount(total) from invoice which 211 <= Date diff. b/w selected date and due date(duedate) of inv. <=240
23241 – 270Amount(total) from invoice which 241 <= Date diff. b/w selected date and due date(duedate) of inv. <=270
24271 – 300Amount(total) from invoice which 271 <= Date diff. b/w selected date and due date(duedate) of inv. <=300
25301 – 330Amount(total) from invoice which 301 <= Date diff. b/w selected date and due date(duedate) of inv. <=330
26331 – 360Amount(total) from invoice which 331 <= Date diff. b/w selected date and due date(duedate) of inv. <=360
27361 – 390Amount(total) from invoice which 361 <= Date diff. b/w selected date and due date(duedate) of inv. <=390
28>>> 390Amount(total) from invoice which Date diff. b/w selected date and due date(duedate) of inv. >390
29Appointment DateAppointment Date(CBN Customer Billing Note) from CBN Customer Billing List subtab under custom subtab on invoice record.
30RemarkBlank column

Finally, on the report page, an Export button will be added to download the detailed report in Excel format.

When you click the export button, the report will be downloaded in Excel format based on the report’s size in the following cases:

  1. If the file size is less than 10Mb (based on predefined line count), the excel file will be downloaded directly from Netsuite.
  2. Otherwise, the Report Download will take place through a scheduled process where there is a delay in the process based on the availability of the Netsuite Queue. For that will make use if a custom record to track the requests
    1. If the file size is greater than 10Mb & the total email size is less than 19Mb,  the download process will take a long time. So that we will split the file into multiple files with predefined line counts in a single file due to the size of each individual attachment cannot exceed 10Mb. And the generated multiple files will be emailed to the initiator’s email. According to the limitations of Netsuite, the total message size (including attachments) in the email must be 20MB or less.
    2. If the file size is greater than 19Mb, the download will take a long time, and all of the results will not load in a single file and email.

      To overcome this, we will generate multiple files with predefined line counts in a single file. And all generated files will be saved in Netsuite’s file cabinet and attached to the corresponding custom record entry which tracks that Report generation process.

Once all export functions have been completed in NetSuite, a single email with the custom record link will be sent to the download initiator. The initiator can export files by login to the NetSuite and by navigating to the custom record entry with the link from the email.

The summary line on the Excel file will be calculated based on the result lines included in the corresponding file in the case of splitted file download 

Assumptions

  • Each report page can include 1000 lines, with the 1001st line will display the summary of the Total Amount of all results in the report.
  • The report will cover all open invoices without considering custom forms.

Risks

  • The line counts in the single file to progress with the scheduled process can be confirmed during the development phase.
  • If the file is more than 19Mb, the user should go to NetSuite and manually download the file from the account.
  • The file cabinet will be stored with many files in the future. This will have an impact on the Netsuite account’s file cabinet. So, users have to remove these files from a file cabinet in the future to free up the storage.

Leave a comment

Your email address will not be published. Required fields are marked *