KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > transactions > orders > Filter


1 package transactions.orders;
2
3 import dinamica.*;
4
5 /**
6  * Initializes recordsets used by the filter form,
7  * when called the first time the recordsets are created
8  * and stored in the session. Next invocations will retrieve
9  * the last state (recordset values) from session. This is done
10  * in order to restore the last search filter without complex logic
11  * <br><br>
12  * Creation date: 26/02/2004<br>
13  * Last Update: 26/02/2004<br>
14  * (c) 2004 Martin Cordova<br>
15  * This code is released under the LGPL license<br>
16  * @author Martin Cordova (dinamica@martincordova.com)
17  * */

18 public class Filter extends GenericTransaction
19 {
20
21     /* (non-Javadoc)
22      * @see dinamica.GenericTransaction#service(dinamica.Recordset)
23      */

24     public int service(Recordset inputs) throws Throwable JavaDoc
25     {
26         
27         //create any auto-recordsets defined in config.xml
28
int rc = super.service(inputs);
29
30         //check if filter recordset exists in session
31
Recordset filter = (Recordset)getSession().getAttribute("orders.filter");
32         
33         //first time?
34
if (filter==null)
35         {
36             filter = new Recordset();
37             filter.append("customerid", java.sql.Types.VARCHAR);
38             filter.append("productid", java.sql.Types.INTEGER);
39             filter.append("dfrom", java.sql.Types.DATE);
40             filter.append("dto", java.sql.Types.DATE);
41             filter.append("operator", java.sql.Types.VARCHAR);
42             filter.append("total", java.sql.Types.INTEGER);
43             filter.append("orderby", java.sql.Types.VARCHAR);
44             filter.append("sortmode", java.sql.Types.VARCHAR);
45             filter.append("pagesize", java.sql.Types.INTEGER);
46             filter.addNew();
47             getSession().setAttribute("orders.filter", filter);
48         }
49         
50         publish("orders.filter", filter);
51         
52         return rc;
53         
54     }
55
56 }
57
Popular Tags