details: https://code.openbravo.com/erp/devel/pi/rev/0435d6d78784 changeset: 35700:0435d6d78784 user: Sandra Huguet <sandra.huguet <at> openbravo.com> date: Wed Apr 24 13:20:11 2019 +0200 summary: Fixed issue 40670 Fix query to compare organization with corresponding id.
Fix query to compare organization with corresponding id instead of the business object. Fix wrong filter date, period.getEndingDate() is used and the correct one is period.getStartingDate(). details: https://code.openbravo.com/erp/devel/pi/rev/1fbbfb4e42f7 changeset: 35701:1fbbfb4e42f7 user: Nono Carballo <nonofce <at> gmail.com> date: Wed Apr 24 13:21:07 2019 +0200 summary: Fixes issue 40623: Considers date in filter When retrieving the date for aggregate report, date set in filter is also considered. diffstat: src/org/openbravo/erpCommon/ad_reports/ReportValuationStock.java | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportValuationStock_data.xsql | 2 + src/org/openbravo/materialmgmt/ResetValuedStockAggregated.java | 14 +++++----- 3 files changed, 10 insertions(+), 8 deletions(-) diffs (85 lines): diff -r 0bd36b5d697b -r 1fbbfb4e42f7 src/org/openbravo/erpCommon/ad_reports/ReportValuationStock.java --- a/src/org/openbravo/erpCommon/ad_reports/ReportValuationStock.java Wed Apr 24 10:21:28 2019 +0200 +++ b/src/org/openbravo/erpCommon/ad_reports/ReportValuationStock.java Wed Apr 24 13:21:07 2019 +0200 @@ -196,7 +196,7 @@ String strDateNext = DateTimeData.nDaysAfter(readOnlyCP, strDate, "1"); String strMaxAggDate = ReportValuationStockData.selectMaxAggregatedDate(readOnlyCP, OBDal.getReadOnlyInstance().get(Organization.class, strLegalEntity).getClient().getId(), - orgIds); + strDate, orgIds); if (StringUtils.isEmpty(strMaxAggDate)) { DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy"); Date maxAggDate = formatter.parse("01-01-0000"); diff -r 0bd36b5d697b -r 1fbbfb4e42f7 src/org/openbravo/erpCommon/ad_reports/ReportValuationStock_data.xsql --- a/src/org/openbravo/erpCommon/ad_reports/ReportValuationStock_data.xsql Wed Apr 24 10:21:28 2019 +0200 +++ b/src/org/openbravo/erpCommon/ad_reports/ReportValuationStock_data.xsql Wed Apr 24 13:21:07 2019 +0200 @@ -506,10 +506,12 @@ SELECT MAX(dateto) FROM m_valued_stock_agg agg WHERE ad_client_id = ? + AND dateto < to_date(?) AND ad_org_id IN ('1') ]]> </Sql> <Parameter name="adClient"/> + <Parameter name="dateFilter"/> <Parameter name="organization" type="replace" optional="true" after="AND ad_org_id IN (" text="'1'"/> </SqlMethod> diff -r 0bd36b5d697b -r 1fbbfb4e42f7 src/org/openbravo/materialmgmt/ResetValuedStockAggregated.java --- a/src/org/openbravo/materialmgmt/ResetValuedStockAggregated.java Wed Apr 24 10:21:28 2019 +0200 +++ b/src/org/openbravo/materialmgmt/ResetValuedStockAggregated.java Wed Apr 24 13:21:07 2019 +0200 @@ -220,7 +220,7 @@ OBQuery<CostingRule> query = OBDal.getInstance() .createQuery(CostingRule.class, where.toString()); - query.setNamedParameter("org", legalEntity); + query.setNamedParameter("org", legalEntity.getId()); query.setNamedParameter("startingDate", startingDate); query.setNamedParameter("endingDate", endingDate); @@ -238,9 +238,9 @@ OBQuery<CostingRule> query = OBDal.getInstance() .createQuery(CostingRule.class, where.toString()); - query.setNamedParameter("org", legalEntity); + query.setNamedParameter("org", legalEntity.getId()); query.setNamedParameter("endingDate", period.getEndingDate()); - query.setNamedParameter("startingDate", period.getEndingDate()); + query.setNamedParameter("startingDate", period.getStartingDate()); return !query.list().isEmpty(); } @@ -261,7 +261,7 @@ StringBuffer where = new StringBuffer(); where.append(" as p"); - where.append(" where p.organization in (:org)"); + where.append(" where p.organization.id in (:org)"); where.append(" and p.periodType = 'S'"); where.append(" and p.endingDate <= :endDate"); where.append(" and p.endingDate <= :firstNotClosedPeriodStartingDate"); @@ -269,7 +269,7 @@ where.append(" order by p.endingDate asc"); OBQuery<Period> query = OBDal.getInstance().createQuery(Period.class, where.toString()); - query.setNamedParameter("org", legalEntity); + query.setNamedParameter("org", legalEntity.getId()); query.setNamedParameter("endDate", endDate); query.setNamedParameter("firstNotClosedPeriodStartingDate", firstNotClosedPeriodStartingDate); query.setNamedParameter("lastAggregatedPeriodDateTo", lastAggregatedPeriodDateTo); @@ -336,12 +336,12 @@ select.append(" from FinancialMgmtPeriodControl pc"); select.append(" where pc.period = p)"); select.append(" )"); - select.append(" and p.organization in (:org)"); + select.append(" and p.organization.id in (:org)"); Query<Date> trxQry = OBDal.getInstance() .getSession() .createQuery(select.toString(), Date.class); - trxQry.setParameter("org", legalEntity); + trxQry.setParameter("org", legalEntity.getId()); trxQry.setMaxResults(1); try { _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits