Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0019930Openbravo ERPA. Platformpublic2012-03-01 11:322022-02-01 08:09
mtaal 
Triage Platform Base 
normalmajorhave not tried
newout of date 
5
 
 
Core
No
0019930: Various improvements to the dunning module
This issue is to collect several things which need to be improved in the dunning module.

1) Add an orange text button in "Work Flow Definitions" to be able to view the flow picture

2) the email doesn't have feedback at all:
 * If there is no email configured in "Client" -> "Email Definition" it should raise an error notifying that no existing email configuration
 * If the email sending fails (bad email configuration, or whatever) it should be notified to the user. Right now the message returned is always "Email sent successfully" even if it is not true.

3) the email sending needs to be made more configurable for an end user when he/she presses the email button in the payment plan, see the attached screenshot on how the standard email button works. The code from the POC should be re-used (ask David Baz for more info)

4) In mp9 or later the dunning module should use the EmailManager.sendEmail method should class instead of the deprecated EmailManager.newMailSession method

5) make the sending of email more a specific feature of the dunning status, by for example having a checkbox in the dunning status which controls if an email is to be send and not only depend on the existence of the email definition. The question is if this fits in the work flow approach.

6) When the user clicks the email button or the print button the system should check directly if all the information is present and not after the user presses ok on the confirmation. If an error exists then it can make sense to show it as a red message bar as this is more the standard.

7) The start dunning process button could be an orange button (to be discussed with Rob)

8) the print dunning letter button should work the same as in poc, to allow to only print or print and attach to the payment schedule

9) inside the dunning status there is a document template which has a child email definition. The email definition should be a sibling of document template and not a child
QA test plan based on 3.0MP9 (with its default sampledata)

As "System Administrator":

a) Install these two modules:
https://code.openbravo.com/erp/pmods/org.openbravo.financial.dunningletters [^]
https://code.openbravo.com/erp/mods/org.openbravo.activiti/ [^]


As "F&B International Group Admin":

b) Setup the email configuration
* Go to "Client" window
* Go to its child tab "Email Configuration"
* Create a new record with valid data

c) Create a "Dunning Configuration"
* Go to "Dunning Configuration" window
* Create a new one with:
  - "Name": Dunning Policy
  - "Activiti Workflow": "Dunning"
  - The other fields values are irrelevant
* Go to its child tab "Dunning Status"
* Create one new "Dunning Status" record with:
  - "Sequence Number": 10
  - "Name": Overdue
  - "Days Late Cumulative": 0
  - "User Maintained": unchecked
* Go to its child tab "Document Template" and create a new one with: [c.1]
  - "Name": Overdue Template
  - "Template Location": @basedesign@/org/openbravo/erpReports
  - "Report Filename": Invoice-@our_ref@
  - "Template Filename": RptC_Invoice.jrxml
* Go to its child tab "Email Definition" and create a new one with: [c.2]
  - "Subject": Late payment notification
  - "Body": Dear ${invoice.businessPartner.name},
             The invoice *${invoice.documentNo}* is late for payment.
* Create one new "Dunning Status" record with:
  - "Sequence Number": 20
  - "Name": At risk of collection
  - "Days Late Cumulative": 10
  - "User Maintained": checked
  - "Role": "F&B International Group Admin"
* Repeate steps [c.1] and [c.2] for this record
* Create one new "Dunning Status" record with:
  - "Sequence Number": 30
  - "Name": In legal proceedings
  - "Days Late Cumulative": 20
  - "User Maintained": checked
  - "Role": "F&B International Group Admin"
* Repeate steps [c.1] and [c.2] for this record
* Create one new "Dunning Status" record with:
  - "Sequence Number": 40
  - "Name": On hold
  - "Days Late Cumulative": <empty> (without any value)
  - "User Maintained": checked
  - "Role": "F&B International Group Admin"
* Repeate steps [c.1] and [c.2] for this record

d) Associate the dunning configuration to a business partner
* Go to "Business Partner" window
* Select record "Hoteles Buenas Noches, S.A."
* Go to its child tab "Customer" and:
  - Select in "Dunning Policy" the value "Dunning Policy" (this is the one we have just created in the "Dunning Configuration" window)
* Go to its child tab "Contact" and:
  - Select in "Email" a valid target email to do the tests [d.1]

e) Create a "Sales Invoice" [e.1]
* Go to "Sales Invoice" window
* Create a new one with:
  - "Business Partner": "Hoteles Buenas Noches, S.A."
  - "Payment Terms": "30 days"
  - The other fields values are irrelevant
* Go to its child tab "Lines" and create a new one (the fields values are irrelevant)
* "Complete" the "Sales Invoice"

f) Go to "Payment In Plan"
* Select record relative to invoice [e.1]
* Click the "Start dunning work flow for the selected record"
* Notice that in its child tab "Dunning Log" it appears "Payment not late, existing dunning work flow"

g) Create a "Sales Invoice" [g.1]
* Go to "Sales Invoice" window
* Create a new one with:
  - "Invoice Date": Today minus 31 days (for example, if today is 28-02-2012, we will put 27-01-2012)
  - "Business Partner": "Hoteles Buenas Noches, S.A."
  - "Payment Terms": "30 days"
* Go to its child tab "Lines" and create a new one (the fields values are irrelevant)
* "Complete" the "Sales Invoice"

h) Go to "Payment In Plan" (refresh if you have it already opened)
* Select record relative to invoice [g.1]
* Notice that the "Due Date" should be 1 or 2 days ago (for example, if today is 28-02-2012, here the value should be 27-02-2012)
* Click the "Start dunning work flow for the selected record"
* Notice that in its child tab "Dunning Log" it appears:
  - "Dunning email send to <your configured email at [d.1]>"
  - "Set dunning status to: "Overdue"
  - "Dunning work flow started"

i) Create a "Sales Invoice" [i.1]
* Go to "Sales Invoice" window
* Create a new one with:
  - "Invoice Date": Today minus 41 days (for example, if today is 28-02-2012, we will put 17-01-2012)
  - "Business Partner": "Hoteles Buenas Noches, S.A."
  - "Payment Terms": "30 days"
* Go to its child tab "Lines" and create a new one (the fields values are irrelevant)
* "Complete" the "Sales Invoice"

j) Go to "Payment In Plan" (refresh if you have it already opened)
* Select record relative to invoice [i.1]
* Notice that the "Due Date" should be 11 or 12 days ago (for example, if today is 28-02-2012, here the value should be 16-02-2012)
* Click the "Start dunning work flow for the selected record"
* Notice that in its child tab "Dunning Log" it appears:
  - "Set dunning status to: Set dunning status to: "At risk of collection"
  - "Dunning work flow started"

k) Create a "Sales Invoice" [k.1]
* Go to "Sales Invoice" window
* Create a new one with:
  - "Invoice Date": Today minus 51 days (for example, if today is 28-02-2012, we will put 07-01-2012)
  - "Business Partner": "Hoteles Buenas Noches, S.A."
  - "Payment Terms": "30 days"
* Go to its child tab "Lines" and create a new one (the fields values are irrelevant)
* "Complete" the "Sales Invoice"

l) Go to "Payment In Plan" (refresh if you have it already opened)
* Select record relative to invoice [k.1]
* Notice that the "Due Date" should be 21 or 22 days ago (for example, if today is 28-02-2012, here the value should be 06-02-2012)
* Click the "Start dunning work flow for the selected record"
* Notice that in its child tab "Dunning Log" it appears:
  - "Set dunning status to: Set dunning status to: "In legal proceedings"
  - "Dunning work flow started"

m) Go to "Payment In Plan" (refresh if you have it already opened)
* Select record relative to invoice [g.1]
* Click email toolbar button and ensure that the email is sent to the address defined at [d.1]
* Click print record toolbar button and ensure that a pdf is generated (since we are re-using a template for other purposes, the content of the pdf could not have any sense)
Do the same for [i.1] and [k.1]

n) Go to "Payment In Plan" (refresh if you have it already opened)
* Select record relative to any invoice ([g.1], [i.1] or [k.1])
* Click "Change Dunning Status" button
* Select any value in the "Change to" popup and press "OK" button
* Notice that the selected record "Dunning Status" value change
No tags attached.
png Screenshot at 2012-03-01 11:19:42.png (51,014) 2012-03-01 11:32
https://issues.openbravo.com/file_download.php?file_id=5043&type=bug
png
Issue History
2012-03-01 11:32mtaalNew Issue
2012-03-01 11:32mtaalAssigned To => mtaal
2012-03-01 11:32mtaalFile Added: Screenshot at 2012-03-01 11:19:42.png
2012-03-01 11:32mtaalModules => Core
2012-03-01 17:00dbazDescription Updatedbug_revision_view_page.php?rev_id=3221#r3221
2012-03-01 17:00dbazSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=3223#r3223
2012-03-01 17:01dbazDescription Updatedbug_revision_view_page.php?rev_id=3224#r3224
2012-03-01 17:12dbazIssue Monitored: dbaz
2012-03-01 17:12dbazSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=3225#r3225
2016-10-21 11:00mtaalStatusnew => closed
2016-10-21 11:00mtaalResolutionopen => out of date
2016-10-21 13:17mtaalTag Attached: MT_closed_out_of_date
2016-10-21 14:08mtaalAssigned Tomtaal => platform
2016-10-21 14:09mtaalStatusclosed => new
2016-10-21 14:10mtaalTag Detached: MT_closed_out_of_date
2022-02-01 08:09alostaleAssigned Toplatform => Triage Platform Base

There are no notes attached to this issue.