Implement new screen and Java event to create an account reconciliation
-----------------------------------------------------------------------

                 Key: OFBIZ-1494
                 URL: https://issues.apache.org/jira/browse/OFBIZ-1494
             Project: OFBiz
          Issue Type: Sub-task
          Components: accounting
    Affects Versions: SVN trunk
            Reporter: Jacopo Cappellato


Implement new screen and Java event to create an account reconciliation (for 
example a bank reconciliation).
For a general description about the process: 
http://en.wikipedia.org/wiki/Bank_reconciliation

Task details:
1) add a new menu item "Account Reconciliation" to the Accounting>General 
Ledger>Accounting menu; the menu item will open the screen described at point #2
2) implement a new screen composed by a search form at the top and a multi form 
at the bottom
2.1) the (single) search form is composed by:
2.1.1) a drop down (allow-empty= false) with all the GL accounts associated to 
the organization
2.1.2) a search button
2.2) the multi form will only be visible when the first form has been 
submitted; the list will show all the AcctgTransEntry records associated to the 
selected account  (sorted by ascending  date) with reconcileStatusId field set 
to "not reconciled"; each row will have a checkbox; at the end of the list a 
submit button "Create Account Reconciliation"
2.3) (OPTIONAL) it would be cool to add some Javascript (or Ajax?) magic to 
display, at the bottom of the page the total of all the selected records (use 
the amount field where D counts as + and C as -)
3) create a Java event (not necessarily a service, a controller event is 
probably easier) and that will receive data from the multi form at point 2.2 
and:
3.1) for each row selected it will retrieve the corresponding AcctgTransEntry 
and add it to a List (NOTE/HINTS: there are some utils methods to easily 
retrieve/parse fields submitted by a multi form... let me know if you don't 
find them)
3.2) compute the total of all the AcctgTransEntry.amount of the entries in the 
list (where D counts as + and C as -)
3.3) call the service "createGlReconciliation" with the following input fields: 
glReconciliationName="the 'now' timestamp", glAccountId, organizationPartyId, 
reconciledDate=now, reconciledBalance=the number computed in #3.2; save the 
output parameter glReconciliationId
3.4) iterate the list of entries created in #3.1 and for each one call the 
service "createGlReconciliationEntry" with the following input fields: 
glReconciliationId= the value returned at #3.3, acctgTransId, 
acctgTransEntrySeqId, reconciledAmount=AcctgTransEntry.amount
3.5) put in the context/parameters the glReconciliationId
4) set the controller entries so that, after the event described at #3 is 
successfully executed, redirect to a new screen "Edit GL Reconciliation" 
(described in #5); on error return at the screen described in #2
5) implement a new screen "Edit GL Reconciliation" that takes as input a 
glReconciliationId and is composed by:
5.1) an editable form that display the content of the GlReconciliation entry; 
the only editable fields will be: glReconciliationName, description, 
reconciledDate; all the other fields will be visible only; once submitted, the 
three fields will be updated ("updateGlReconciliation")
5.2) a list (non editable) of all the GlReconciliationEntry records associated 
with the glReconciliationId

6) add a new menu item "Account Reconciliations" to the Accounting>General 
Ledger>Accounting menu; the menu item will open the screen described at point #7
7) implement a new screen composed by a search form at the top and a multi form 
at the bottom
7.1) the (single) search form is composed by:
7.1.1) a drop down (allow-empty= false) with all the GL accounts associated to 
the organization
7.1.2) from/thru dates
7.1.3) a search button
7.2) a list form (visible when the first form has been submitted) that lists 
all the GlReconciliation records that match the search parameters; the 
glReconciliationId field will be an hyperlink to open the "Edit Gl 
Reconciliation" screen (implemented in #5; the highlighted menu should not 
change)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to