Customer Aging Report Using Saved Search

var invoiceSearchObj = search.create({
   type: "invoice",
   filters:
   [
      ["type","anyof","CustInvc"], 
      "AND", 
      ["mainline","is","T"], 
      "AND", 
      ["amountremaining","greaterthan","0.00"]
   ],
   columns:
   [
      search.createColumn({
         name: "entity",
         summary: "GROUP",
         label: "Customer"
      }),
      search.createColumn({
         name: "formulacurrency",
         summary: "SUM",
         formula: "CASE WHEN {trandate} BETWEEN ADD_MONTHS(SYSDATE, -1) AND SYSDATE THEN {amountremaining} ELSE 0 END",
         label: "1-30 Days"
      }),
      search.createColumn({
         name: "formulacurrency",
         summary: "SUM",
         formula: "CASE WHEN {trandate} BETWEEN ADD_MONTHS(SYSDATE, -2) AND ADD_MONTHS(SYSDATE, -1) THEN {amountremaining} ELSE 0 END",
         label: "31-60 Days"
      }),
      search.createColumn({
         name: "formulacurrency",
         summary: "SUM",
         formula: "CASE WHEN {trandate} BETWEEN ADD_MONTHS(SYSDATE, -3) AND ADD_MONTHS(SYSDATE, -2) THEN {amountremaining} ELSE 0 END",
         label: "61-90 Days"
      }),
      search.createColumn({
         name: "formulacurrency",
         summary: "SUM",
         formula: "CASE WHEN {trandate} <= ADD_MONTHS(SYSDATE, -3) THEN {amountremaining} ELSE 0 END",
         label: "Aging Over 90"
      })
   ]
});

Leave a comment

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