details:   https://code.openbravo.com/erp/devel/pi/rev/145375d4a136
changeset: 15332:145375d4a136
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Wed Jan 25 20:32:54 2012 +0100
summary:   Fixed issue 19545: 'Alerts' email system now uses POC 'Email 
Configuration' too

details:   https://code.openbravo.com/erp/devel/pi/rev/38a9d8bc9da3
changeset: 15333:38a9d8bc9da3
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Tue Jan 31 18:08:12 2012 +0100
summary:   Fixed issue 19573: Added more fields to email sending popup

details:   https://code.openbravo.com/erp/devel/pi/rev/13da342a4a9c
changeset: 15334:13da342a4a9c
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Tue Jan 31 18:24:48 2012 +0100
summary:   Merge from pi

details:   https://code.openbravo.com/erp/devel/pi/rev/3dce4c87de78
changeset: 15335:3dce4c87de78
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Thu Feb 02 12:42:04 2012 +0100
summary:   Related to isse 19545: code-review changes

details:   https://code.openbravo.com/erp/devel/pi/rev/2e9a38f2d031
changeset: 15336:2e9a38f2d031
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Thu Feb 02 16:39:09 2012 +0100
summary:   Merge from pi

diffstat:

 CONTRIBUTORS                                                                   
                                                                                
          |    1 +
 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml  
                                                                                
          |    2 +-
 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
 |    4 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddOrderOrInvoice.java
                                                             |  160 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.srpt
                                                                |    4 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.xml
                                                                 |    6 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPayment.java
                                                                        |   32 
+-
 modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml       
                                                                                
          |    2 +-
 
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
      |    2 +-
 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
        |    2 +-
 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                             |  
  8 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/AlertActionHandler.java
                                                                    |    2 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ApplicationComponentProvider.java
                                                          |    6 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/WindowSettingsActionHandler.java
                                                           |   42 +
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/personalization/PersonalizationActionHandler.java
                                          |    1 +
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/templates/ob-view-form.js.ftl
                                                              |   11 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java
                                                    |    1 +
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/OBViewFieldHandler.java
                                                             |    4 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/images/iconPin.png
                                                                         |    0 
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/alert-management/ob-alert-grid.js
                                                       |    5 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/alert-management/ob-alert-management-view.js
                                            |    5 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/classic/ob-classic-window.js
                                                            |    5 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-datetime.js
                                                   |   90 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-section-audit.js
                                              |    8 +
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/ob-view-form.js
                                                                    |   11 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js
                                                                    |   44 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/main/ob-standard-window.js
                                                              |   75 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/process/ob-pick-and-execute-view.js
                                                     |   13 +-
 
modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/images/process/iconPin.png
 |    0 
 
modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/ob-process-styles.js
       |   26 +
 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
         |    2 +-
 
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                              | 
   2 +-
 modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml   
                                                                                
          |    2 +-
 
modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
  |    6 +-
 modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE.xml     
                                                                                
          |    2 +-
 
modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
    |    4 +-
 modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_WINDOW.xml     
                                                                                
          |    2 +-
 
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE.xml 
                                                                                
         |    2 +-
 
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                               
|    2 +-
 
modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListDataSource.java
                                                                       |   16 +-
 modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE.xml  
                                                                                
          |    2 +-
 
modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
 |    2 +-
 
modules/org.openbravo.client.widgets/src-db/database/sourcedata/OBKMO_WIDGET_CLASS.xml
                                                                                
   |    4 +-
 
modules/org.openbravo.client.widgets/src-db/database/sourcedata/OBKMO_WIDGET_URL.xml
                                                                                
     |   18 -
 
modules/org.openbravo.client.widgets/src-db/database/sourcedata/OBUIAPP_PARAMETER.xml
                                                                                
    |  118 +
 
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
   |    2 +-
 
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                        |    2 
+-
 
modules/org.openbravo.financial.paymentreport/src/org/openbravo/financial/paymentreport/erpCommon/ad_reports/PaymentReportDao.java
                                       |   14 +-
 
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE.xml
                                                                            |   
 2 +-
 
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                 |    2 +-
 
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
        |    2 +-
 
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                             |  
 10 +-
 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DataSourceProperty.java
                                                                    |   22 +-
 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DefaultDataSourceService.java
                                                              |  107 +-
 
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
|    2 +-
 
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                     |    4 +-
 
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
|    2 +-
 
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                     |    2 +-
 modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE.xml    
                                                                                
          |    2 +-
 
modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
   |    2 +-
 
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
    |    2 +-
 
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                         |   12 
+-
 
modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/SelectorComponent.java
                                                             |   44 +-
 
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE.xml
                                                                           |    
2 +-
 
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                |    2 +-
 
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE.xml
                                                                                
 |    2 +-
 
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                      |    6 +-
 
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/js/ob-smartclient.js
                                                         |   13 -
 modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE.xml     
                                                                                
          |    2 +-
 
modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
    |    6 +-
 modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE.xml    
                                                                                
          |    2 +-
 
modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
                                                                                
   |   24 +-
 modules/org.openbravo.v3/src-db/database/configScript.xml                      
                                                                                
          |    6 +-
 modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE.xml              
                                                                                
          |    2 +-
 modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml   
                                                                                
          |   18 +-
 src-db/database/lib/dbsourcemanager.jar                                        
                                                                                
          |    0 
 src-db/database/model/functions/C_GENERATESOFROMPROJECTPHASE.xml               
                                                                                
          |    8 +-
 src-db/database/model/functions/C_VALIDCOMBINATION_CLONE.xml                   
                                                                                
          |    2 +-
 src-db/database/model/tables/AD_FIELD_ACCESS.xml                               
                                                                                
          |   72 +
 src-db/database/model/tables/AD_REF_DATA_LOADED.xml                            
                                                                                
          |    5 +
 src-db/database/model/tables/AD_TAB_ACCESS.xml                                 
                                                                                
          |   67 +
 src-db/database/model/triggers/C_PROJECT_TRG.xml                               
                                                                                
          |   16 +-
 src-db/database/model/triggers/M_PRODUCT_TRG.xml                               
                                                                                
          |   10 +
 src-db/database/model/triggers/M_WAREHOUSE_TRG.xml                             
                                                                                
          |   11 +
 src-db/database/sourcedata/AD_COLUMN.xml                                       
                                                                                
          |  810 +++++++++-
 src-db/database/sourcedata/AD_ELEMENT.xml                                      
                                                                                
          |   69 +-
 src-db/database/sourcedata/AD_FIELD.xml                                        
                                                                                
          |  769 +++++++++-
 src-db/database/sourcedata/AD_MESSAGE.xml                                      
                                                                                
          |   11 +
 src-db/database/sourcedata/AD_MODULE.xml                                       
                                                                                
          |    2 +-
 src-db/database/sourcedata/AD_PROCESS.xml                                      
                                                                                
          |    3 +-
 src-db/database/sourcedata/AD_TAB.xml                                          
                                                                                
          |  120 +-
 src-db/database/sourcedata/AD_TABLE.xml                                        
                                                                                
          |   40 +
 src-db/database/sourcedata/AD_TEXTINTERFACES.xml                               
                                                                                
          |   55 +-
 src-db/database/sourcedata/AD_VAL_RULE.xml                                     
                                                                                
          |    3 +-
 src-db/database/sourcedata/AD_WINDOW.xml                                       
                                                                                
          |   10 +-
 src-db/database/sourcedata/referencedData/AD_CLIENT.xml                        
                                                                                
          |    5 -
 
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateReversalDocumentTypes.class
                                                                         |    0 
 
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateReversalDocumentTypesData.class
                                                                     |    0 
 
src-util/modulescript/build/classes/org/openbravo/modulescript/UpgradeToPocEmail.class
                                                                                
   |    0 
 
src-util/modulescript/build/classes/org/openbravo/modulescript/UpgradeToPocEmailData.class
                                                                               
|    0 
 
src-util/modulescript/src/org/openbravo/modulescript/UpdateReversalDocumentTypes.java
                                                                                
    |    1 +
 
src-util/modulescript/src/org/openbravo/modulescript/UpdateReversalDocumentTypes_Data.xsql
                                                                               
|   15 +-
 src-util/modulescript/src/org/openbravo/modulescript/UpgradeToPocEmail.java    
                                                                                
          |  127 +
 
src-util/modulescript/src/org/openbravo/modulescript/UpgradeToPocEmail_Data.xsql
                                                                                
         |   91 +
 src-wad/src/org/openbravo/wad/Wad.java                                         
                                                                                
          |   15 +-
 src-wad/src/org/openbravo/wad/Wad_data.xsql                                    
                                                                                
          |   25 +-
 src-wad/src/org/openbravo/wad/javasource.javaxml                               
                                                                                
          |    2 +-
 src/org/openbravo/authentication/basic/DefaultAuthenticationManager.java       
                                                                                
          |    4 +-
 src/org/openbravo/dal/xml/EntityResolver.java                                  
                                                                                
          |  198 +-
 src/org/openbravo/dal/xml/EntityXMLConverter.java                              
                                                                                
          |   19 +-
 src/org/openbravo/erpCommon/ad_callouts/SL_Order_Amt.java                      
                                                                                
          |   30 +-
 src/org/openbravo/erpCommon/ad_forms/DocInOut.java                             
                                                                                
          |   65 +-
 src/org/openbravo/erpCommon/ad_forms/DocInventory.java                         
                                                                                
          |   11 +-
 src/org/openbravo/erpCommon/ad_forms/DocInvoice.java                           
                                                                                
          |   12 +-
 src/org/openbravo/erpCommon/ad_process/AlertProcess.java                       
                                                                                
          |  244 ++-
 src/org/openbravo/erpCommon/ad_reports/GeneralAccountingReports_data.xsql      
                                                                                
          |    2 +-
 src/org/openbravo/erpCommon/ad_reports/ReportNotPosted_data.xsql               
                                                                                
          |    2 +-
 src/org/openbravo/erpCommon/ad_reports/ReportProductionRun.jrxml               
                                                                                
          |    2 +-
 src/org/openbravo/erpCommon/businessUtility/EMail.java                         
                                                                                
          |    4 +
 src/org/openbravo/erpCommon/businessUtility/InitialOrgSetup.java               
                                                                                
          |    6 +
 src/org/openbravo/erpCommon/utility/WindowAccess_data.xsql                     
                                                                                
          |   30 +-
 src/org/openbravo/erpCommon/utility/poc/EmailManager.java                      
                                                                                
          |  166 +-
 src/org/openbravo/erpCommon/utility/reporting/printing/EmailOptions.html       
                                                                                
          |  154 +-
 src/org/openbravo/erpCommon/utility/reporting/printing/EmailOptions.xml        
                                                                                
          |   23 +-
 src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java    
                                                                                
          |  365 ++--
 src/org/openbravo/erpReports/RptM_InOut.jrxml                                  
                                                                                
          |   99 +-
 src/org/openbravo/erpReports/Rptm_InOut_Lines.jrxml                            
                                                                                
          |    8 +-
 src/org/openbravo/service/dataset/DataSetService.java                          
                                                                                
          |   18 +-
 128 files changed, 4163 insertions(+), 739 deletions(-)

diffs (truncated from 8058 to 300 lines):

diff -r 440693e24fec -r 2e9a38f2d031 CONTRIBUTORS
--- a/CONTRIBUTORS      Wed Jan 25 18:20:11 2012 +0100
+++ b/CONTRIBUTORS      Thu Feb 02 16:39:09 2012 +0100
@@ -14,3 +14,4 @@
 Mallikarjun M TDS - provided deep linking with filter clause
 Shankar Balachandran <[email protected]> - Bug fixing
 Francois Le Roux - <[email protected]> - Bug fixing and documentation
+Shawn Laubach SAIC <[email protected]> - Development
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml 
    Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml 
    Thu Feb 02 16:39:09 2012 +0100
@@ -6,7 +6,7 @@
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <NAME><![CDATA[Advanced Payables and 
Receivables Mngmt]]></NAME>
-<!--A918E3331C404B889D69AA9BFAFB23AC-->  
<VERSION><![CDATA[3.0.15193]]></VERSION>
+<!--A918E3331C404B889D69AA9BFAFB23AC-->  
<VERSION><![CDATA[3.0.15265]]></VERSION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <DESCRIPTION><![CDATA[Managing your 
finances with an ERP does not have to be difficult. Enjoy a radically improved 
user experience that combines the power of an enterprise grade financial 
application with the simplicity and ease of a web 2.0 personal accounting 
service.]]></DESCRIPTION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <HELP><![CDATA[Advanced Payables and 
Receivables Management simplifies and automates the business processes around 
the management of financial accounts, from the receipt and issue of payment, to 
the reconciliation of those events with bank statements.
 If you would like to help shape this module you are welcome to take part in 
the forum discussions or register feature requests or issues in the 
corresponding (Forum and Bug Tracking) sections in the Advanced Payables and 
Receivable project in the OB Forge.]]></HELP>
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
  Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
  Thu Feb 02 16:39:09 2012 +0100
@@ -7,7 +7,7 @@
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_DEPENDENT_MODULE_ID>
-<!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<STARTVERSION><![CDATA[2.1.15193]]></STARTVERSION>
+<!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<STARTVERSION><![CDATA[2.1.15265]]></STARTVERSION>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <DEPENDANT_MODULE_NAME><![CDATA[User 
Interface Selector]]></DEPENDANT_MODULE_NAME>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--B97FC854C6DD41E692161585645A900F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--B97FC854C6DD41E692161585645A900F-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--B97FC854C6DD41E692161585645A900F-->  
<AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--B97FC854C6DD41E692161585645A900F-->  
<STARTVERSION><![CDATA[3.0.15193]]></STARTVERSION>
+<!--B97FC854C6DD41E692161585645A900F-->  
<STARTVERSION><![CDATA[3.0.15265]]></STARTVERSION>
 <!--B97FC854C6DD41E692161585645A900F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--B97FC854C6DD41E692161585645A900F-->  
<DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--B97FC854C6DD41E692161585645A900F-->  
<DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddOrderOrInvoice.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddOrderOrInvoice.java
      Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddOrderOrInvoice.java
      Thu Feb 02 16:39:09 2012 +0100
@@ -23,7 +23,10 @@
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.LinkedHashSet;
 import java.util.List;
+import java.util.Set;
+import java.util.StringTokenizer;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
@@ -90,7 +93,7 @@
       String strDueDateTo = vars.getStringParameter("inpDueDateTo", "");
       String strDocumentType = vars.getStringParameter("inpDocumentType", "");
       String strSelectedPaymentDetails = 
vars.getInStringParameter("inpScheduledPaymentDetailId",
-          IsIDFilter.instance);
+          "", null);
       boolean isReceipt = 
vars.getRequiredStringParameter("isReceipt").equals("Y");
       Boolean showAlternativePM = 
"Y".equals(vars.getStringParameter("inpAlternativePaymentMethod",
           filterYesNo));
@@ -107,8 +110,8 @@
         strAction = vars.getRequiredStringParameter("inpActionDocument");
       }
       String strPaymentId = vars.getRequiredStringParameter("inpfinPaymentId");
-      String strSelectedScheduledPaymentDetailIds = vars.getInParameter(
-          "inpScheduledPaymentDetailId", "", IsIDFilter.instance);
+      String strSelectedScheduledPaymentDetailIds = vars.getInStringParameter(
+          "inpScheduledPaymentDetailId", "", null);
       String strAddedGLItems = vars.getStringParameter("inpGLItems");
       JSONArray addedGLITemsArray = null;
       try {
@@ -128,7 +131,6 @@
       }
       String strTabId = vars.getRequiredStringParameter("inpTabId");
       String strPaymentAmount = 
vars.getRequiredNumericParameter("inpActualPayment");
-      String strDocumentType = vars.getStringParameter("inpDocumentType", "");
       String paymentCurrencyId = 
vars.getRequiredStringParameter("inpCurrencyId");
       BigDecimal exchangeRate = new 
BigDecimal(vars.getRequiredNumericParameter("inpExchangeRate",
           "1"));
@@ -142,8 +144,8 @@
 
         List<FIN_PaymentScheduleDetail> selectedPaymentDetails = 
FIN_Utility.getOBObjectList(
             FIN_PaymentScheduleDetail.class, 
strSelectedScheduledPaymentDetailIds);
-        HashMap<String, BigDecimal> selectedPaymentDetailAmounts = 
FIN_AddPayment
-            .getSelectedPaymentDetailsAndAmount(vars, selectedPaymentDetails);
+        HashMap<String, BigDecimal> selectedPaymentDetailAmounts = 
getSelectedPaymentDetailsAndAmount(
+            vars, strSelectedScheduledPaymentDetailIds);
 
         FIN_Payment payment = dao.getObject(FIN_Payment.class, strPaymentId);
         BigDecimal newPaymentAmount = new BigDecimal(strPaymentAmount);
@@ -412,8 +414,9 @@
             showAlternativePM ? null : payment.getPaymentMethod(), 
selectedScheduledPaymentDetails,
             isReceipt);
 
-    final FieldProvider[] data = 
FIN_AddPayment.getShownScheduledPaymentDetails(vars,
+    FieldProvider[] data = FIN_AddPayment.getShownScheduledPaymentDetails(vars,
         selectedScheduledPaymentDetails, filteredScheduledPaymentDetails, 
false, null);
+    data = groupPerDocumentType(data, strDocumentType);
     xmlDocument.setData("structure", (data == null) ? set() : data);
 
     response.setContentType("text/html; charset=UTF-8");
@@ -436,6 +439,149 @@
     return FieldProviderFactory.getFieldProviderArray(result);
   }
 
+  private FieldProvider[] groupPerDocumentType(FieldProvider[] data, String 
strDocumenType) {
+    ArrayList<FieldProvider> gridLines = new ArrayList<FieldProvider>();
+    HashMap<String, Integer> amountsPerGroupingField = new HashMap<String, 
Integer>();
+    String groupingField = "finScheduledPaymentDetailId";
+    if ("I".equals(strDocumenType)) {
+      groupingField = "invoicePaymentScheduleId";
+    } else if ("O".equals(strDocumenType)) {
+      groupingField = "orderPaymentScheduleId";
+    }
+    for (int i = 0; i < data.length; i++) {
+      if (!amountsPerGroupingField.containsKey(data[i].getField(groupingField))
+          || "".equals(data[i].getField(groupingField))) {
+        amountsPerGroupingField.put(data[i].getField(groupingField), 
gridLines.size());
+        FieldProviderFactory.setField(data[i], "rownum", 
String.valueOf(gridLines.size()));
+        gridLines.add(data[i]);
+      } else {
+        Integer listIndex = 
amountsPerGroupingField.get(data[i].getField(groupingField));
+        FieldProvider row = gridLines.get(listIndex);
+        FieldProviderFactory.setField(
+            row,
+            "finScheduledPaymentDetailId",
+            row.getField("finScheduledPaymentDetailId") + ","
+                + data[i].getField("finScheduledPaymentDetailId"));
+        FieldProviderFactory.setField(
+            row,
+            "finSelectedPaymentDetailId",
+            row.getField("finSelectedPaymentDetailId") + ","
+                + data[i].getField("finScheduledPaymentDetailId"));
+        FieldProviderFactory.setField(
+            row,
+            "outstandingAmount",
+            new BigDecimal(row.getField("outstandingAmount")).add(
+                new 
BigDecimal(data[i].getField("outstandingAmount"))).toString());
+        BigDecimal payAmount = BigDecimal.ZERO;
+        if (!"".equals(row.getField("paymentAmount"))) {
+          payAmount = new BigDecimal(row.getField("paymentAmount"));
+        }
+        FieldProviderFactory.setField(
+            row,
+            "paymentAmount",
+            !"".equals(data[i].getField("paymentAmount")) ? payAmount.add(
+                new BigDecimal(data[i].getField("paymentAmount"))).toString() 
: (payAmount
+                .compareTo(BigDecimal.ZERO) == 0 ? "" : payAmount.toString()));
+        if ("O".equals(strDocumenType)) {
+          String strGroupedInvoicesNr = row.getField("invoiceNr");
+          FieldProviderFactory.setField(row, "invoiceNr", 
(strGroupedInvoicesNr.isEmpty() ? ""
+              : strGroupedInvoicesNr + ", ") + data[i].getField("invoiceNr"));
+          String invoiceNumber = row.getField("invoiceNr");
+          String invoiceNumberTrunc = (invoiceNumber.length() > 17) ? 
invoiceNumber
+              .substring(0, 14).concat("...").toString() : invoiceNumber;
+          FieldProviderFactory.setField(row, "invoiceNrTrunc", 
invoiceNumberTrunc);
+        } else if ("I".equals(strDocumenType)) {
+          String strGroupedOrdersNr = row.getField("orderNr");
+          FieldProviderFactory.setField(row, "orderNr", 
(strGroupedOrdersNr.isEmpty() ? ""
+              : strGroupedOrdersNr + ", ") + data[i].getField("orderNr"));
+          String orderNumber = row.getField("orderNr");
+          String orderNumberTrunc = (orderNumber.length() > 17) ? 
orderNumber.substring(0, 14)
+              .concat("...").toString() : orderNumber;
+          FieldProviderFactory.setField(row, "orderNrTrunc", orderNumberTrunc);
+        }
+      }
+    }
+    FieldProvider[] result = new FieldProvider[gridLines.size()];
+    gridLines.toArray(result);
+    return result;
+  }
+
+  /**
+   * Creates a HashMap with the FIN_PaymentScheduleDetail id's and the amount 
gotten from the
+   * Session.
+   * 
+   * The amounts are stored in Session like 
"inpPaymentAmount"+paymentScheduleDetail.Id
+   * 
+   * @param vars
+   *          VariablseSecureApp with the session data.
+   * @param selectedPaymentScheduleDetails
+   *          List of FIN_PaymentScheduleDetails that need to be included in 
the HashMap.
+   * @return A HashMap mapping the FIN_PaymentScheduleDetail's Id with the 
corresponding amount.
+   */
+  private HashMap<String, BigDecimal> 
getSelectedPaymentDetailsAndAmount(VariablesSecureApp vars,
+      String _strSelectedScheduledPaymentDetailIds) throws ServletException {
+    String strSelectedScheduledPaymentDetailIds = 
_strSelectedScheduledPaymentDetailIds;
+    // Remove "(" ")"
+    strSelectedScheduledPaymentDetailIds = 
strSelectedScheduledPaymentDetailIds.replace("(", "");
+    strSelectedScheduledPaymentDetailIds = 
strSelectedScheduledPaymentDetailIds.replace(")", "");
+    HashMap<String, BigDecimal> selectedPaymentScheduleDetailsAmounts = new 
HashMap<String, BigDecimal>();
+    // As selected items may contain records with multiple IDs we as well need 
the records list as
+    // amounts are related to records
+    StringTokenizer records = new 
StringTokenizer(strSelectedScheduledPaymentDetailIds, "'");
+    Set<String> recordSet = new LinkedHashSet<String>();
+    while (records.hasMoreTokens()) {
+      recordSet.add(records.nextToken());
+    }
+    for (String record : recordSet) {
+      if (", ".equals(record)) {
+        continue;
+      }
+      Set<String> psdSet = new LinkedHashSet<String>();
+      StringTokenizer psds = new StringTokenizer(record, ",");
+      while (psds.hasMoreTokens()) {
+        psdSet.add(psds.nextToken());
+      }
+      BigDecimal recordAmount = new BigDecimal(vars.getNumericParameter(
+          "inpPaymentAmount" + record, ""));
+      HashMap<String, BigDecimal> recordsAmounts = 
calculateAmounts(recordAmount, psdSet);
+      selectedPaymentScheduleDetailsAmounts.putAll(recordsAmounts);
+    }
+    return selectedPaymentScheduleDetailsAmounts;
+  }
+
+  /**
+   * This method returns a HashMap with pairs of UUID of payment schedule 
details and amounts
+   * related to those ones.
+   * 
+   * @param recordAmount
+   *          : amount to split among the set
+   * @param psdSet
+   *          : set of payment schedule details where to allocate the amount
+   * @return
+   */
+  private HashMap<String, BigDecimal> calculateAmounts(BigDecimal 
recordAmount, Set<String> psdSet) {
+    BigDecimal remainingAmount = recordAmount;
+    HashMap<String, BigDecimal> recordsAmounts = new HashMap<String, 
BigDecimal>();
+    for (String psdId : psdSet) {
+      FIN_PaymentScheduleDetail paymentScheduleDetail = 
OBDal.getInstance().get(
+          FIN_PaymentScheduleDetail.class, psdId);
+      BigDecimal outstandingAmount = paymentScheduleDetail.getAmount();
+      // Manage negative amounts
+      if ((remainingAmount.compareTo(BigDecimal.ZERO) > 0 && remainingAmount
+          .compareTo(outstandingAmount) >= 0)
+          || ((remainingAmount.compareTo(BigDecimal.ZERO) == -1 && 
outstandingAmount
+              .compareTo(BigDecimal.ZERO) == -1) && 
(remainingAmount.compareTo(outstandingAmount) <= 0))) {
+        recordsAmounts.put(psdId, outstandingAmount);
+        remainingAmount = remainingAmount.subtract(outstandingAmount);
+      } else {
+        recordsAmounts.put(psdId, remainingAmount);
+        remainingAmount = BigDecimal.ZERO;
+      }
+
+    }
+    return recordsAmounts;
+  }
+
   public String getServletInfo() {
     return "Servlet that presents the payment proposal";
     // end of getServletInfo() method
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.srpt
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.srpt
 Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.srpt
 Thu Feb 02 16:39:09 2012 +0100
@@ -22,8 +22,8 @@
   <input type="hidden" name="inpRecordAmtxx" value="" id="fieldRecordAmt"/>
   <tr id="funcEvenOddRow" class="DataGrid_Body_Row DataGrid_Body_Row_xx" 
bgcolor="#E1E1E1">
     <td class="DataGrid_Body_LineNoCell"> <input type="checkbox" 
name="inpScheduledPaymentDetailId" value="" id="fieldScheduledPaymentDetailId" 
onclick="updateData(this.value, this.checked, true);return true;"/></td>
-    <td class="DataGrid_Body_Cell" id="fieldOrderNr">xx</td>
-    <td class="DataGrid_Body_Cell" id="fieldInvoiceNr">xxINV30004 (2/3)</td>
+    <td class="DataGrid_Body_Cell" title="zz" id="fieldOrderNr">xx</td>
+    <td class="DataGrid_Body_Cell" title="zz" id="fieldInvoiceNr">xxINV30004 
(2/3)</td>
     <td class="DataGrid_Body_Cell" id="businessPartnerName" 
title="">xxBPartner</td>
     <td class="DataGrid_Body_Cell" title="zz" 
id="fieldPaymentMethod">xxCash</td>
     <td class="DataGrid_Body_Cell" id="fieldDueDate">xx12/12/2009</td>
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.xml
  Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentGrid.xml
  Thu Feb 02 16:39:09 2012 +0100
@@ -28,8 +28,10 @@
     <FIELD id="fieldRecordId" attribute="name" replace="xx">rownum</FIELD>
     <FIELD id="fieldRecordAmt" attribute="value" 
format="euroEdition">outstandingAmount</FIELD>
     <FIELD id="fieldRecordAmt" attribute="name" 
replace="xx">finScheduledPaymentDetailId</FIELD>
-    <FIELD id="fieldOrderNr">orderNr</FIELD>
-    <FIELD id="fieldInvoiceNr">invoiceNr</FIELD>
+    <FIELD id="fieldOrderNr">orderNrTrunc</FIELD>
+    <FIELD id="fieldOrderNr" attribute="title" replace="zz">orderNr</FIELD>
+    <FIELD id="fieldInvoiceNr">invoiceNrTrunc</FIELD>
+    <FIELD id="fieldInvoiceNr" attribute="title" replace="zz">invoiceNr</FIELD>
     <FIELD id="businessPartnerName" 
attribute="title">businessPartnerName</FIELD>
     <FIELD id="businessPartnerName">businessPartnerNameTrunc</FIELD>
     <FIELD id="fieldPaymentMethod">paymentMethodNameTrunc</FIELD>
diff -r 440693e24fec -r 2e9a38f2d031 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPayment.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPayment.java
 Wed Jan 25 18:20:11 2012 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPayment.java
 Thu Feb 02 16:39:09 2012 +0100
@@ -533,9 +533,7 @@
     shownScheduledPaymentDetails.addAll(filteredScheduledPaymentDetails);
     FIN_PaymentScheduleDetail[] FIN_PaymentScheduleDetails = new 
FIN_PaymentScheduleDetail[0];
     FIN_PaymentScheduleDetails = 
shownScheduledPaymentDetails.toArray(FIN_PaymentScheduleDetails);
-    // FieldProvider[] data = 
FieldProviderFactory.getFieldProviderArray(FIN_PaymentSchedules);
 
-    // FieldProvider[] data = new 
FieldProviderFactory[selectedScheduledPayments.size()];
     FieldProvider[] data = 
FieldProviderFactory.getFieldProviderArray(shownScheduledPaymentDetails);
     String dateFormat = 
OBPropertiesProvider.getInstance().getOpenbravoProperties()
         .getProperty("dateFormat.java");
@@ -552,16 +550,30 @@
                 : "");

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to