wabacus学习记录01--查询条件(20120810)
学习使用wabacus一段时间了,在这里把遇到的问题做一些整理
1.查询条件
a.开始结束日期--结束日期默认是当前时间,开始日期默认回推一周
首先在拦截器里把开始结束时间放到request里
<interceptor> <imports> <import>com.wabacus.util</import> <import>java.util</import> <import>java.text</import> </imports> <preaction> <![CDATA[ Date d=new Date(); String beginTime=rrequest.getStringAttribute("txtBeginTime","");//txtBeginTime为此<condition/>的name属性 if(beginTime.equals("")) {//没有条件值 rrequest.setAttribute("txtBeginTime",DateFormat.getDateInstance().format(new Date(d.getTime() - 7 * 24 * 60 * 60 * 1000)));//将条件值设置进去。 } String endTime=rrequest.getStringAttribute("txtEndTime","");//txtcheckDate为此<condition/>的name属性 if(endTime.equals("")) {//没有条件值 rrequest.setAttribute("txtEndTime",DateFormat.getDateInstance().format(d));//将条件值设置进去。 } //System.out.println("txtEndTime is :"+rrequest.getAttribute("txtBeginTime")+"===="+rrequest.getAttribute("txtEndTime")); ]]> </preaction> </interceptor>
column_date between cast('#txtBeginTime#' as datetime) and cast('#txtEndTime#' as datetime)
<condition name="txtBeginTime" label="开始日期"> <inputbox type="datepicker" jsvalidate="isDate({0}格式不对,必须为yyyy-MM-dd格式)"/></condition><condition name="txtEndTime" label="结束日期"> <inputbox type="datepicker" jsvalidate="isDate({0}格式不对,必须为yyyy-MM-dd格式)"/></condition>
<interceptor> <preaction> rrequest.getRequest().getSession().setAttribute("txtage","30");//在session中存入txtage的值为30,以便后面的查询条件能从中取到数据。 </preaction></interceptor>
<condition name="txtage" label="年龄" hidden="true" source="session"> <value> <![CDATA[(age > #data#)]]> </value></condition>
<condition name="txt_CustCode" hidden="true" label="顾客编号"> <value> <![CDATA[(CustCode = '#data#' )]]> </value></condition>