details:   https://code.openbravo.com/erp/devel/pi/rev/da047e7388a8
changeset: 20709:da047e7388a8
user:      Eduardo Argal Guibert <eduardo.argal <at> openbravo.com>
date:      Fri Jul 05 18:29:54 2013 +0200
summary:   [Matching screen fixes]

diffstat:

 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml 
                                      |   12 +
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.html
 |   44 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
 |   77 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.html
            |    6 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.java
            |   51 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.xml
             |    6 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/MatchTransaction.html
          |   22 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/MatchTransaction.java
          |  518 +++++----
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/MatchTransactionGrid.srpt
      |    6 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/MatchTransactionGrid.xml
       |    1 +
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
            |    5 +-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_BankStatementImport.java
           |    3 +
 src-db/database/sourcedata/AD_COLUMN.xml                                       
                                      |    8 +-
 src-db/database/sourcedata/AD_REFERENCE.xml                                    
                                      |   12 +
 src-db/database/sourcedata/AD_REF_LIST.xml                                     
                                      |   22 +
 src/org/openbravo/erpCommon/businessUtility/MessageJS.java                     
                                      |   28 +-
 web/js/messages.js                                                             
                                      |    8 +-
 17 files changed, 511 insertions(+), 318 deletions(-)

diffs (truncated from 1428 to 300 lines):

diff -r 8ffe44c21d8d -r da047e7388a8 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
    Thu Jul 04 17:38:00 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
    Fri Jul 05 18:29:54 2013 +0200
@@ -1,5 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <data>
+<!--00D0839059994323B4596EDA7D0BCF56--><AD_MESSAGE>
+<!--00D0839059994323B4596EDA7D0BCF56-->  
<AD_MESSAGE_ID><![CDATA[00D0839059994323B4596EDA7D0BCF56]]></AD_MESSAGE_ID>
+<!--00D0839059994323B4596EDA7D0BCF56-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--00D0839059994323B4596EDA7D0BCF56-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--00D0839059994323B4596EDA7D0BCF56-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--00D0839059994323B4596EDA7D0BCF56-->  
<VALUE><![CDATA[APRM_PaidInvoice]]></VALUE>
+<!--00D0839059994323B4596EDA7D0BCF56-->  <MSGTEXT><![CDATA[Invoice %s is 
already fully paid.]]></MSGTEXT>
+<!--00D0839059994323B4596EDA7D0BCF56-->  <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--00D0839059994323B4596EDA7D0BCF56-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
+<!--00D0839059994323B4596EDA7D0BCF56-->  
<ISINCLUDEINI18N><![CDATA[N]]></ISINCLUDEINI18N>
+<!--00D0839059994323B4596EDA7D0BCF56--></AD_MESSAGE>
+
 <!--0267A646C8BD4042AE2422BCB83B4610--><AD_MESSAGE>
 <!--0267A646C8BD4042AE2422BCB83B4610-->  
<AD_MESSAGE_ID><![CDATA[0267A646C8BD4042AE2422BCB83B4610]]></AD_MESSAGE_ID>
 <!--0267A646C8BD4042AE2422BCB83B4610-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 8ffe44c21d8d -r da047e7388a8 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.html
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.html
      Thu Jul 04 17:38:00 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.html
      Fri Jul 05 18:29:54 2013 +0200
@@ -12,7 +12,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2012 Openbravo SLU
+ * All portions are Copyright (C) 2010-2013 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  Enterprise Intelligence Systems (http://www.eintel.com.au).
  *************************************************************************
@@ -62,7 +62,14 @@
     try {
       if (XMLHttpRequestObj.responseText) {
         strText = XMLHttpRequestObj.responseText;
-        var aux = strText.substring(29, strText.length-8);
+        var objson = eval(strText);
+        if(objson.message!==''){
+          showJSMessage(objson.message, null, true, objson.params);
+          return true;
+        }else{
+          showJSMessage(null, null, true);
+        }
+        var aux = objson.grid;
         var tableBody = document.getElementById('sectionGrid');
         var browserName = getBrowserInfo('name');
         if (browserName.toUpperCase().indexOf('INTERNET EXPLORER') !== -1) {
@@ -78,7 +85,6 @@
         } else {
           tableBody.innerHTML = aux;
         }
-        
         updateAll();
         updateTotal();
 
@@ -435,17 +441,17 @@
 function validate(action) {
   var frm = document.frmMain;
   if (action === 'openprocess') {
-       if (isMulticurrencyTxn()) {
-         if (frm.inpActualConverted.value==null || 
frm.inpActualConverted.value=="") {
-           setWindowElementFocus(frm.inpActualConverted);
-           showJSMessage(7);
-           return false;
-         } else if (frm.inpExchangeRate.value==null || 
frm.inpExchangeRate.value=="") {
-           setWindowElementFocus(frm.inpExchangeRate);
-           showJSMessage(7);
-            return false;
-         }
-       }
+    if (isMulticurrencyTxn()) {
+      if (frm.inpActualConverted.value==null || 
frm.inpActualConverted.value=="") {
+        setWindowElementFocus(frm.inpActualConverted);
+        showJSMessage(7);
+        return false;
+      } else if (frm.inpExchangeRate.value==null || 
frm.inpExchangeRate.value=="") {
+        setWindowElementFocus(frm.inpExchangeRate);
+        showJSMessage(7);
+         return false;
+      }
+    }
     if (frm.inpActualPayment.value === null || frm.inpActualPayment.value === 
'') {
       setWindowElementFocus(frm.inpActualPayment);
       showJSMessage(7);
@@ -706,12 +712,12 @@
   displayLogicElement('paramActualConvertedCell', display );
   displayLogicElement('lblActualConverted', display );
   if (document.frmMain.strNotAllowExchange.value === 'Y' && display) {  
-         readOnlyLogicElement('paramExchangeRate', true);
+      readOnlyLogicElement('paramExchangeRate', true);
       readOnlyLogicElement('paramActualConverted', true);
       displayLogicElement('actualConvertedCal', false );
    }
   else {
-         readOnlyLogicElement('paramExchangeRate', false);
+      readOnlyLogicElement('paramExchangeRate', false);
       readOnlyLogicElement('paramActualConvertedCell', false);
       displayLogicElement('actualConvertedCal', true );
   }
@@ -801,9 +807,6 @@
 }
 </script>
 <script language="JavaScript" type="text/javascript">
-function onloadFunctions() {
-  keyArray[keyArray.length] = new keyArrayItem("ENTER", "openSearch(null, 
null, '../info/BusinessPartner.html', 'BPARTNER_SELECTOR', false, 'frmMain', 
'inpcBpartnerId', 'inpBpartnerId_DES', 
document.frmMain.inpBpartnerId_DES.value, 'Command', 'KEY');", 
"inpBpartnerId_DES", "null");
-}
 function displayLogicForCredit() {
   var hasCredit = compare(document.getElementById('paramCredit').value, '>', 
'0');
   displayLogicElement('paramCredit', hasCredit );
@@ -836,9 +839,6 @@
   setBrowserAutoComplete(false);
 
   initializeTemplate();
-  try {
-    onloadFunctions();
-  } catch (e) {}
   setGLItemMode(isTrue('isInGLItemMode'));
   displayLogicElement('sectionDifference', false);
   displayLogicElement('sectionDifferenceBox', false);
diff -r 8ffe44c21d8d -r da047e7388a8 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
      Thu Jul 04 17:38:00 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
      Fri Jul 05 18:29:54 2013 +0200
@@ -27,6 +27,7 @@
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
+import java.util.Set;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
@@ -47,6 +48,7 @@
 import org.openbravo.base.secureApp.VariablesSecureApp;
 import org.openbravo.base.session.OBPropertiesProvider;
 import org.openbravo.dal.core.OBContext;
+import org.openbravo.dal.security.OrganizationStructureProvider;
 import org.openbravo.dal.service.OBCriteria;
 import org.openbravo.dal.service.OBDal;
 import org.openbravo.data.FieldProvider;
@@ -63,6 +65,7 @@
 import org.openbravo.model.common.currency.Currency;
 import org.openbravo.model.common.enterprise.DocumentType;
 import org.openbravo.model.common.enterprise.Organization;
+import org.openbravo.model.common.invoice.Invoice;
 import org.openbravo.model.common.plm.Product;
 import org.openbravo.model.financialmgmt.accounting.Costcenter;
 import org.openbravo.model.financialmgmt.accounting.UserDimension1;
@@ -122,9 +125,10 @@
       final String strAmountFrom = vars.getNumericParameter("inpAmountFrom", 
"");
       final String strAmountTo = vars.getNumericParameter("inpAmountTo", "");
 
-      printGrid(response, vars, strFinancialAccountId, strBusinessPartnerId, 
strExpectedDateFrom,
-          strExpectedDateTo, strTransDateFrom, strTransDateTo, 
strDocumentType, strDocumentNo,
-          strSelectedPaymentDetails, isReceipt, strCurrencyId, strAmountFrom, 
strAmountTo);
+      printGrid(response, request, vars, strFinancialAccountId, 
strBusinessPartnerId,
+          strExpectedDateFrom, strExpectedDateTo, strTransDateFrom, 
strTransDateTo,
+          strDocumentType, strDocumentNo, strSelectedPaymentDetails, 
isReceipt, strCurrencyId,
+          strAmountFrom, strAmountTo);
 
     } else if (vars.commandIn("PAYMENTMETHODCOMBO")) {
       final String strBusinessPartnerId = 
vars.getRequestGlobalVariable("inpcBpartnerId", "");
@@ -398,8 +402,6 @@
       final PrintWriter out = response.getWriter();
       out.println(xmlDocument.print());
       out.close();
-
-      // 
"../org.openbravo.advpaymentmngt.ad_actionbutton/AddTransaction.html");
     }
 
   }
@@ -630,15 +632,15 @@
     out.close();
   }
 
-  private void printGrid(HttpServletResponse response, VariablesSecureApp vars,
-      String strFinancialAccountId, String strBusinessPartnerId, String 
strExpectedDateFrom,
-      String strExpectedDateTo, String strTransDateFrom, String strTransDateTo,
-      String strDocumentType, String strDocumentNo, String 
strSelectedPaymentDetails,
-      boolean isReceipt, String strCurrencyId, String strAmountFrom, String 
strAmountTo)
-      throws IOException, ServletException {
+  private void printGrid(HttpServletResponse response, HttpServletRequest 
request,
+      VariablesSecureApp vars, String strFinancialAccountId, String 
strBusinessPartnerId,
+      String strExpectedDateFrom, String strExpectedDateTo, String 
strTransDateFrom,
+      String strTransDateTo, String strDocumentType, String strDocumentNo,
+      String strSelectedPaymentDetails, boolean isReceipt, String 
strCurrencyId,
+      String strAmountFrom, String strAmountTo) throws IOException, 
ServletException {
 
     log4j.debug("Output: Grid with pending payments");
-
+    String message = "";
     dao = new AdvPaymentMngtDao();
     FIN_FinancialAccount financialAccount = 
dao.getObject(FIN_FinancialAccount.class,
         strFinancialAccountId);
@@ -681,12 +683,45 @@
     final FieldProvider[] data = 
FIN_AddPayment.getShownScheduledPaymentDetails(vars,
         selectedScheduledPaymentDetails, filteredScheduledPaymentDetails, 
false, null, null,
         displayDoubtfulDebtAmount(isReceipt));
+    String invoiceIdentifier = "";
+    if ((data == null || data.length == 0) && !"".equals(strDocumentNo) && 
strDocumentNo != null) {
+      final OBCriteria<Invoice> obc = 
OBDal.getInstance().createCriteria(Invoice.class);
+      if (isReceipt) {
+        obc.add(Restrictions.eq(Invoice.PROPERTY_DOCUMENTNO, strDocumentNo));
+      } else {
+        obc.add(Restrictions.eq(Invoice.PROPERTY_ORDERREFERENCE, 
strDocumentNo));
+      }
+      obc.add(Restrictions.eq(Invoice.PROPERTY_PROCESSED, true));
+      obc.add(Restrictions.eq(Invoice.PROPERTY_SALESTRANSACTION, isReceipt));
+      if (strBusinessPartnerId != null && !"".equals(strBusinessPartnerId)) {
+        obc.add(Restrictions.eq(Invoice.PROPERTY_BUSINESSPARTNER, 
strBusinessPartnerId));
+      }
+      obc.add(Restrictions.eq(Invoice.PROPERTY_PAYMENTCOMPLETE, true));
+      obc.add(Restrictions.in(Invoice.PROPERTY_ORGANIZATION,
+          getOrganizationList(new 
OrganizationStructureProvider().getChildTree(financialAccount
+              .getOrganization().getId(), true))));
+      obc.addOrderBy(Invoice.PROPERTY_INVOICEDATE, false);
+      Invoice invoice = (Invoice) obc.uniqueResult();
+      if (invoice != null) {
+        invoiceIdentifier = invoice.getIdentifier();
+        message = "APRM_PaidInvoice";
+      }
+    }
     xmlDocument.setData("structure", (data == null) ? set() : data);
-
-    response.setContentType("text/html; charset=UTF-8");
-    PrintWriter out = response.getWriter();
-    out.println(xmlDocument.print());
-    out.close();
+    try {
+      JSONObject json = new JSONObject();
+      ArrayList<String> params = new ArrayList<String>();
+      params.add(invoiceIdentifier);
+      json.put("message", message);
+      json.put("params", params);
+      json.put("grid", xmlDocument.print());
+      response.setContentType("text/html; charset=UTF-8");
+      PrintWriter out = response.getWriter();
+      out.println("objson = " + json);
+      out.close();
+    } catch (JSONException e) {
+      log4j.error("AddPaymentFromTransaction - CallbackGrid", e);
+    }
   }
 
   /**
@@ -854,6 +889,14 @@
     // end of getServletInfo() method
   }
 
+  private List<Organization> getOrganizationList(Set<String> orgIds) {
+    List<Organization> result = new ArrayList<Organization>();
+    for (String orgId : orgIds) {
+      result.add(OBDal.getInstance().get(Organization.class, orgId));
+    }
+    return result;
+  }
+
   boolean displayDoubtfulDebtAmount(boolean isReceipt) {
     if (!isReceipt) {
       return false;
diff -r 8ffe44c21d8d -r da047e7388a8 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.html
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.html
 Thu Jul 04 17:38:00 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.html
 Fri Jul 05 18:29:54 2013 +0200
@@ -12,7 +12,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2012 Openbravo SLU
+ * All portions are Copyright (C) 2013 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -1060,9 +1060,7 @@
               <td class="TitleCell"><span 
class="LabelText">Document</span></td>
               <td class="Combo_ContentCell">
                 <select  name="inpDocumentType" id="paramDocumentType" 
class="Combo Combo_OneCell_width" onchange="showPaymentSection2();return true;">
-                  <!-- <option value=""><div 
id="reportDocument"></div></option> -->
-                  <option value="RCIN" selected="selected">Received In</option>
-                  <option value="PDOUT">Paid Out</option>
+                  <option value=""><div id="reportDocumentType"></div></option>
                 </select>
               </td> 
               <td class="TitleCell"><span class="LabelText">From 
Date</span></td>
diff -r 8ffe44c21d8d -r da047e7388a8 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.java
 Thu Jul 04 17:38:00 2013 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddTransaction.java
 Fri Jul 05 18:29:54 2013 +0200
@@ -363,21 +363,45 @@
     xmlDocument.setParameter("finFinancialAccountId", strFinancialAccountId);
     xmlDocument.setParameter("finBankStatementLineId", strBankStatementLineId);
     String transactionType = "P";
+    try {
+      String Document_Type_AddTransaction_Reference_ID = 
"40B84CF78FC9435790887846CCDAE875";
+      ComboTableData comboTableData = new ComboTableData(vars, this, "LIST", 
"",
+          Document_Type_AddTransaction_Reference_ID, "", 
Utility.getContext(this, vars,
+              "#AccessibleOrgTree", "AddTransaction"), 
Utility.getContext(this, vars,
+              "#User_Client", "AddTransaction"), 0);
+      Utility.fillSQLParameters(this, vars, null, comboTableData, 
"AddTransaction", "");
+      xmlDocument.setData("reportDocumentType", "liststructure", 
comboTableData.select(false));
+      comboTableData = null;
+    } catch (Exception ex) {

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to