Projects:Refactor Cashup Report/Functional Specifications
Refactor Cashup Report - Functional Specifications
To improve execution perfomance of CashUp Report and to allow include other payment methods like Gift Cards, the process has been completely redesigned.
No need for any configuration. Just you need to perform a full compilation system to execute the script modules that perform the necessary changes and updates in the database to run.
- Add a new column (totalCounted) to table OBPOS_PAYMENTMETHODCASHUP to store cash count for the payment method
- Create a new table OBPOS_PAYMENTCASHUP_EVENTS to store the cashup events, with following columns:
- PaymentMethodCashupId: Parent Payment Method Cashup
- Name: Description of event
- Rate: Currency convertion rate
- IsoCode: Currency iso code
- Amount: Amount
- Type: Event type
- FinaccTransactionId: Financial Transaction
- In POS Terminal window in the tab panel Cash Up History in the tab Payment Method Status Cashup add a column Total Counted.
- Add a new tab Payment Method CashUp Events, it depend on previous tab (POS Terminal / Cash Up History / Payment Method Status Cashup)
- ProcessCashClose (org.openbravo.retail.posterminal.ProcessCashClose.java): Update the new field TotalCounted
- ProcessCashMgmt (org.openbravo.retail.posterminal.ProcessCashMgmt):Save the CashUp Events
- CashUpReport (org.openbravo.retail.posterminal.CashUpReport): Refactor CashUp Report to get data from cashup tables and not read it from financial transactions
- ProcessCashMgmtHook (org.openbravo.retail.posterminal.ProcessCashMgmtHook): Add to interface a record with payment cashup events
Create a module script to run one time, to update the new field (totalCounted) and the new table (OBPOS_PAYMENTCASHUP_EVENTS) on existing records.