I am getting org.Hibernate.Exception.DateException: could not execute query. I don't know how exactly I should format the fromDate and toDate -
public arraylist<ivinvoicepojo> findbyfromdateandtodate(int maxresult,date fromdate, date todate) { simpledateformat formatter = new simpledateformat("dd-mm-yyyy"); formatter.format(fromdate); formatter.format(todate); ivmasterdao dao = new ivmasterdao(); arraylist<ivmaster> invoicelist = null; arraylist<ivinvoicepojo> invoicelistpojo = null; try { stringbuilder sqlquery=new stringbuilder(); sqlquery.append("select ms.lc_netamt, ms.lc_total,ms.lc_vatamt,ms.usd_netamt,ms.usd_total,ms.usd_vatamt,ms.protocolnum,ms.docnum,cu.custname,cu.custvatid,cu.custlocid,com.countrycode,sr.spotdate,sr.currencycode,ms.employeeid,tc.doctaxcode,tcd.taxcddesc,ms.cdflag "); sqlquery.append("from iv_master ms, iv_customer cu, iv_companycode com, iv_users ur,iv_spot_rate sr, iv_tax_codes tc, iv_taxcode_desc tcd "); sqlquery.append("where ms.custaddrkey=cu.custaddrkey , com.companycode=ms.companycode , ms.employeeid= ur.employeeid , sr.spotdate=ms.spotdate "); sqlquery.append("and tc.doctaxcode=ms.doctaxcode , tc.taxcd=tcd.taxcd sr.spotdate >= ' "); sqlquery.append(fromdate).append("' , sr.spotdate <= '"); sqlquery.append(todate); sqlquery.append("' order ms.protocolnum"); org.hibernate.query query=dao.getsession().createsqlquery(sqlquery.tostring()); query.setmaxresults(35000); list data=query.list(); if (data != null) { invoicelistpojo = formattopojo(data); return invoicelistpojo; } } catch (hibernateexception e) { log.error("entity retrieval failed." + e.getmessage()); e.printstacktrace(); } { try { dao.getsession().close(); } catch (exception e) { log.error("connection failed close"); } } return null; }
this not how add args query. have this:
... sqlquery.append("and tc.doctaxcode=ms.doctaxcode , tc.taxcd=tcd.taxcd sr.spotdate >= :datefrom "); sqlquery.append("and sr.spotdate <= :dateto"); ... query.setparameter("datefrom", datefrom); query.setparameter("dateto", dateto);