details: https://code.openbravo.com/erp/devel/pi/rev/6179129b80a3
changeset: 15178:6179129b80a3
user: David Alsasua <david.alsasua <at> openbravo.com>
date: Mon Jan 23 16:50:22 2012 +0100
summary: Fixes issue 19439.
Now, in case a business partner OR ANY DATE is entered in the filter, the grid
is painted
diffstat:
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
| 28 +++++++++-
1 files changed, 27 insertions(+), 1 deletions(-)
diffs (59 lines):
diff -r 579d4957d42c -r 6179129b80a3
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
Mon Jan 23 16:43:22 2012 +0100
+++
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/AddPaymentFromTransaction.java
Mon Jan 23 16:50:22 2012 +0100
@@ -22,6 +22,7 @@
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -44,6 +45,7 @@
import org.openbravo.base.filter.ValueListFilter;
import org.openbravo.base.secureApp.HttpSecureAppServlet;
import org.openbravo.base.secureApp.VariablesSecureApp;
+import org.openbravo.base.session.OBPropertiesProvider;
import org.openbravo.dal.core.OBContext;
import org.openbravo.dal.service.OBCriteria;
import org.openbravo.dal.service.OBDal;
@@ -545,7 +547,9 @@
// If business partner and document number are empty search for all
filtered scheduled payments
// list
- if (!"".equals(strBusinessPartnerId) || !"".equals(strDocumentNo)) {
+ if (!"".equals(strBusinessPartnerId) || !"".equals(strDocumentNo)
+ || isValidJSDate(strDueDateFrom) || isValidJSDate(strDueDateTo)
+ || isValidJSDate(strTransDateFrom) || isValidJSDate(strTransDateTo)) {
Currency paymentCurrency;
if (strCurrencyId == null || strCurrencyId.isEmpty()) {
paymentCurrency = financialAccount.getCurrency();
@@ -572,6 +576,28 @@
out.close();
}
+ /**
+ * Returns true in case the provided string is well formed JS-formated date
+ */
+ private boolean isValidJSDate(String strDate) {
+ if ("".equals(strDate)) {
+ return false;
+ }
+ try {
+ OBContext.setAdminMode(true);
+ String dateFormat =
OBPropertiesProvider.getInstance().getOpenbravoProperties()
+ .getProperty("dateFormat.java");
+
+ Date date = new SimpleDateFormat(dateFormat).parse(strDate);
+ Date year1000 = new SimpleDateFormat("yyyy-MM-dd").parse("999-12-31");
+ return date.after(year1000);
+ } catch (Exception e) {
+ return false;
+ } finally {
+ OBContext.restorePreviousMode();
+ }
+ }
+
private void refreshPaymentMethod(HttpServletResponse response, String
strBusinessPartnerId,
String strFinancialAccountId, boolean isReceipt) throws IOException,
ServletException {
log4j.debug("Callout: Business Partner has changed to" +
strBusinessPartnerId);
------------------------------------------------------------------------------
Try before you buy = See our experts in action!
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-dev2
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits