type of filter is much better than the old one, but the coding changes are rilevant, so I post here the diff, and we can discuss about it pros and cons and decide what to do. In bookstore examples there is an application of filtering, in master and child forms.
regards, Sergio Moretti
----------------- CUT HERE ------------------------
cvs -z4 diff -u (in directory G:\Documents and Settings\sergio\Documenti\workspace\dbforms\)
? .classpath
? .project
? build
? dist
? src/org/dbforms/taglib/DbFilterTag.java
cvs server: Diffing .
cvs server: Diffing .uml
cvs server: Diffing bin
cvs server: Diffing conf
cvs server: Diffing conf/root
cvs server: Diffing conf/tomcat-4.x
cvs server: Diffing dependend
cvs server: Diffing doc
cvs server: Diffing doc/img
cvs server: Diffing doc/taglib
cvs server: Diffing etc
Index: etc/taglib_docu.xml
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/etc/taglib_docu.xml,v
retrieving revision 1.56
diff -u -r1.56 taglib_docu.xml
--- etc/taglib_docu.xml 11 Aug 2003 02:42:44 -0000 1.56
+++ etc/taglib_docu.xml 11 Aug 2003 09:11:10 -0000
@@ -458,6 +458,13 @@
</info>
</attribute>
<attribute>
+ <name>sqlFilter</name>
+ <required>false</required>
+ <rtexprvalue>true</rtexprvalue>
+ <info>
+ </info>
+ </attribute>
+ <attribute>
<name>gotoPrefix</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
cvs server: Diffing examples
cvs server: Diffing examples/bookstore
cvs server: Diffing examples/bookstore/WEB-INF
cvs server: Diffing examples/bookstore/WEB-INF/db_hsqldb
cvs server: Diffing examples/bookstore/WEB-INF/db_iso
cvs server: Diffing examples/bookstore/WEB-INF/db_xml
cvs server: Diffing examples/bookstore/WEB-INF/lib
cvs server: Diffing examples/bookstore/WEB-INF/templates
cvs server: Diffing examples/bookstore/WEB-INF/templates/lister
cvs server: Diffing examples/bookstore/WEB-INF/templates/lister/amazon
cvs server: Diffing examples/bookstore/WEB-INF/templates/tabbedselector
cvs server: Diffing examples/bookstore/WEB-INF/templates/tabbedselector/amazon
cvs server: Diffing examples/bookstore/WEB-INF/templates/tabbedselector/backoffice
cvs server: Diffing examples/bookstore/WEB-INF/templates/window
cvs server: Diffing examples/bookstore/WEB-INF/templates/window/backoffice
cvs server: Diffing examples/bookstore/WEB-INF/templates/window/pow2
cvs server: Diffing examples/bookstore/css
cvs server: Diffing examples/bookstore/howto
cvs server: Diffing examples/bookstore/pics
cvs server: Diffing examples/bookstore/pics/lister
cvs server: Diffing examples/bookstore/pics/lister/amazon
cvs server: Diffing examples/bookstore/pics/tabbedselector
cvs server: Diffing examples/bookstore/pics/tabbedselector/amazon
cvs server: Diffing examples/bookstore/pics/tabbedselector/backoffice
cvs server: Diffing examples/bookstore/pics/window
cvs server: Diffing examples/bookstore/pics/window/backoffice
cvs server: Diffing examples/bookstore/pics/window/pow2
cvs server: Diffing examples/bookstore/src
cvs server: Diffing examples/bookstore/src/interceptors
cvs server: Diffing examples/bookstore/tests
Index: examples/bookstore/tests/testAuthorBooksSubForm.jsp
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/examples/bookstore/tests/testAuthorBooksSubForm.jsp,v
retrieving revision 1.6
diff -u -r1.6 testAuthorBooksSubForm.jsp
--- examples/bookstore/tests/testAuthorBooksSubForm.jsp 1 Aug 2003 09:17:09 -0000 1.6
+++ examples/bookstore/tests/testAuthorBooksSubForm.jsp 11 Aug 2003 09:11:10 -0000
@@ -5,11 +5,30 @@
<target="_top">
</head>
<body>
+
+<%
+String authorFilter = request.getParameter("authorFilter") != null ? request.getParameter("authorFilter") : (String)session.getAttribute("authorFilter");
+if (authorFilter != null) {
+ session.setAttribute("authorFilter", authorFilter);
+} else
+ authorFilter = "";
+String bookFilter = request.getParameter("bookFilter") != null ? request.getParameter("bookFilter") : (String)session.getAttribute("bookFilter");
+if (bookFilter != null) {
+ session.setAttribute("bookFilter", bookFilter);
+} else
+ bookFilter = "";
+%>
+ <form action="../tests/testAuthorBooksSubForm.jsp">
+ Author Filter: <input type="text" name="authorFilter" value="<%=authorFilter%>"/>
+ Book Filter: <input type="text" name="bookFilter" value="<%=bookFilter%>"/>
+ <input type="submit"/>
+ </form>
+
<db:dbform autoUpdate="false"
followUp="/tests/testAuthorBooksSubForm.jsp"
maxRows="1"
tableName="AUTHOR"
-
+ sqlFilter="<%=authorFilter%>"
>
<db:header>
<h1 align="center">Edit Authors</h1>
@@ -62,6 +81,7 @@
parentField="AUTHOR_ID"
childField="AUTHOR_ID"
orderBy="ISBN"
+ sqlFilter="<%=bookFilter%>"
>
<db:header>
<table>
cvs server: Diffing examples/bugtracker
cvs server: Diffing examples/bugtracker/WEB-INF
cvs server: Diffing examples/bugtracker/WEB-INF/classes
cvs server: Diffing examples/bugtracker/WEB-INF/db_hsqldb
cvs server: Diffing examples/bugtracker/WEB-INF/lib
cvs server: Diffing examples/bugtracker/WEB-INF/tags
cvs server: Diffing examples/bugtracker/src
cvs server: Diffing examples/bugtracker/src/com
cvs server: Diffing examples/bugtracker/src/com/foo
cvs server: Diffing examples/bugtracker/src/com/foo/bar
cvs server: Diffing examples/bugtracker/templates
cvs server: Diffing examples/bugtracker/templates/center
cvs server: Diffing examples/bugtracker/templates/sourceforge
cvs server: Diffing examples/bugtracker/templates/sourceforge/images
cvs server: Diffing examples/testsuite
cvs server: Diffing examples/testsuite/WEB-INF
cvs server: Diffing examples/testsuite/WEB-INF/classes
cvs server: Diffing examples/testsuite/WEB-INF/db_hsqldb
cvs server: Diffing examples/testsuite/WEB-INF/lib
cvs server: Diffing examples/testsuite/src
cvs server: Diffing misc
cvs server: Diffing misc/dbformslib
cvs server: Diffing misc/dbformslib/icons
cvs server: Diffing misc/dbformslib/jscal
cvs server: Diffing src
cvs server: Diffing src/org
cvs server: Diffing src/org/dbforms
cvs server: Diffing src/org/dbforms/config
Index: src/org/dbforms/config/Table.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/config/Table.java,v
retrieving revision 1.8
diff -u -r1.8 Table.java
--- src/org/dbforms/config/Table.java 8 Aug 2003 16:02:31 -0000 1.8
+++ src/org/dbforms/config/Table.java 11 Aug 2003 09:11:11 -0000
@@ -898,7 +898,7 @@
* @return the query string
*/
public String getSelectQuery(Vector fieldsToSelect, FieldValue[] fvEqual,
- FieldValue[] fvOrder, int compareMode)
+ FieldValue[] fvOrder, String sqlFilter, int compareMode)
{
StringBuffer buf = new StringBuffer();
buf.append("SELECT ");
@@ -909,11 +909,22 @@
String s;s = getQueryWhere(fvEqual, fvOrder, compareMode);
+ if (s.length() > 0 || (sqlFilter != null && sqlFilter.length() > 0))
+ buf.append(" WHERE ");
if (s.length() > 0)
{
- buf.append(" WHERE ( ");
+ buf.append(" ( ");
buf.append(s);
- buf.append(")");
+ buf.append(" ) ");
+ }
+ if (sqlFilter != null && sqlFilter.length() > 0)
+ {
+ if (s.length() > 0)
+ buf.append(" AND ( ");
+ else
+ buf.append(" ( ");
+ buf.append(sqlFilter);
+ buf.append(" ) ");
}
s = getQueryOrderBy(fvOrder);
@@ -1059,11 +1070,11 @@
* @throws SQLException if any error occurs*/
public ResultSetVector doConstrainedSelect(Vector fieldsToSelect,
- FieldValue[] fvEqual, FieldValue[] fvOrder, int compareMode, int maxRows,
+ FieldValue[] fvEqual, FieldValue[] fvOrder, String sqlFilter, int compareMode, int maxRows,
Connection con) throws SQLException
{
String query = getSelectQuery(fieldsToSelect, fvEqual,
- fvOrder, compareMode);
+ fvOrder, sqlFilter, compareMode);
PreparedStatement ps = con.prepareStatement(query);
ps.setMaxRows(maxRows); // important when quering huge tables
cvs server: Diffing src/org/dbforms/config/error
cvs server: Diffing src/org/dbforms/conprovider
cvs server: Diffing src/org/dbforms/devgui
cvs server: Diffing src/org/dbforms/event
Index: src/org/dbforms/event/NavCopyEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/NavCopyEvent.java,v
retrieving revision 1.2
diff -u -r1.2 NavCopyEvent.java
--- src/org/dbforms/event/NavCopyEvent.java 31 Jul 2003 09:01:44 -0000 1.2
+++ src/org/dbforms/event/NavCopyEvent.java 11 Aug 2003 09:11:11 -0000
@@ -94,7 +94,8 @@
* @throws SQLException DOCUMENT ME!
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter, int count,
String firstPost, String lastPos,
Connection con, String dbConnectionName)
throws SQLException
Index: src/org/dbforms/event/NavNewEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/NavNewEvent.java,v
retrieving revision 1.8
diff -u -r1.8 NavNewEvent.java
--- src/org/dbforms/event/NavNewEvent.java 6 Aug 2003 19:48:27 -0000 1.8
+++ src/org/dbforms/event/NavNewEvent.java 11 Aug 2003 09:11:11 -0000
@@ -88,7 +88,9 @@
* @throws SQLException DOCUMENT ME!*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
Index: src/org/dbforms/event/NavigationEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/NavigationEvent.java,v
retrieving revision 1.8
diff -u -r1.8 NavigationEvent.java
--- src/org/dbforms/event/NavigationEvent.java 31 Jul 2003 09:01:44 -0000 1.8
+++ src/org/dbforms/event/NavigationEvent.java 11 Aug 2003 09:11:11 -0000
@@ -89,7 +89,8 @@
* @exception SQLException if any error occurs
*/
public abstract ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
int count, String firstPost,
String lastPos, Connection con,
String dbConnectionName)
cvs server: Diffing src/org/dbforms/event/classic
Index: src/org/dbforms/event/classic/GotoEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/GotoEvent.java,v
retrieving revision 1.3
diff -u -r1.3 GotoEvent.java
--- src/org/dbforms/event/classic/GotoEvent.java 31 Jul 2003 17:53:02 -0000 1.3
+++ src/org/dbforms/event/classic/GotoEvent.java 11 Aug 2003 09:11:11 -0000
@@ -187,7 +187,7 @@
* @throws SQLException DOCUMENT ME!
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count, String firstPosition,
+ FieldValue[] orderConstraint, String sqlFilter, int count, String firstPosition,
String lastPosition, Connection con, String dbConnectionName)
throws SQLException
{
@@ -218,7 +218,7 @@
logCat.info("gotopos = " + position);return table.doConstrainedSelect(table.getFields(), childFieldValues,
- orderConstraint, compMode, count, con);
+ orderConstraint, sqlFilter, compMode, count, con);
}
else
{
Index: src/org/dbforms/event/classic/InsertEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/InsertEvent.java,v
retrieving revision 1.6
diff -u -r1.6 InsertEvent.java
--- src/org/dbforms/event/classic/InsertEvent.java 5 Aug 2003 19:44:24 -0000 1.6
+++ src/org/dbforms/event/classic/InsertEvent.java 11 Aug 2003 09:11:11 -0000
@@ -326,8 +326,9 @@
fvEqual[i] = keyFieldValue;
}
+ //TODO nullify sqlFilter, check if is logically correct
ResultSetVector resultSetVector = table.doConstrainedSelect(table
- .getFields(), fvEqual, null, Constants.COMPARE_NONE, 1, con);
+ .getFields(), fvEqual, null, "", Constants.COMPARE_NONE, 1, con);
if (resultSetVector != null)
{
Index: src/org/dbforms/event/classic/NavFirstEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/NavFirstEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavFirstEvent.java
--- src/org/dbforms/event/classic/NavFirstEvent.java 31 Jul 2003 17:53:02 -0000 1.3
+++ src/org/dbforms/event/classic/NavFirstEvent.java 11 Aug 2003 09:11:11 -0000
@@ -85,12 +85,12 @@
* @throws SQLException DOCUMENT ME!
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count, String firstPosition,
+ FieldValue[] orderConstraint, String sqlFilter, int count, String firstPosition,
String lastPosition, Connection con, String dbConnectionName)
throws SQLException
{
// just select from table in given order
return table.doConstrainedSelect(table.getFields(), childFieldValues,
- orderConstraint, Constants.COMPARE_NONE, count, con);
+ orderConstraint, sqlFilter, Constants.COMPARE_NONE, count, con);
}
}
Index: src/org/dbforms/event/classic/NavLastEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/NavLastEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavLastEvent.java
--- src/org/dbforms/event/classic/NavLastEvent.java 31 Jul 2003 17:53:02 -0000 1.3
+++ src/org/dbforms/event/classic/NavLastEvent.java 11 Aug 2003 09:11:11 -0000
@@ -85,7 +85,7 @@
* @throws SQLException DOCUMENT ME!
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count, String firstPosition,
+ FieldValue[] orderConstraint, String sqlFilter, int count, String firstPosition,
String lastPosition, Connection con, String dbConnectionName)
throws SQLException
{
@@ -94,7 +94,7 @@
FieldValue.invert(orderConstraint);ResultSetVector resultSetVector = table.doConstrainedSelect(table
- .getFields(), childFieldValues, orderConstraint,
+ .getFields(), childFieldValues, orderConstraint, sqlFilter,
Constants.COMPARE_NONE, count, con);
FieldValue.invert(orderConstraint);
resultSetVector.flip();
Index: src/org/dbforms/event/classic/NavNextEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/NavNextEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavNextEvent.java
--- src/org/dbforms/event/classic/NavNextEvent.java 31 Jul 2003 17:53:02 -0000 1.3
+++ src/org/dbforms/event/classic/NavNextEvent.java 11 Aug 2003 09:11:11 -0000
@@ -99,7 +99,7 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count, String firstPosition,
+ FieldValue[] orderConstraint, String sqlFilter, int count, String firstPosition,
String lastPosition, Connection con, String dbConnectionName)
throws SQLException
{
@@ -110,7 +110,7 @@
// select in given order everyting thats greater than lastpostable.fillWithValues(orderConstraint, lastPosition);
rsv = table.doConstrainedSelect(table.getFields(), childFieldValues,
- orderConstraint, Constants.COMPARE_EXCLUSIVE, count, con);
+ orderConstraint, sqlFilter, Constants.COMPARE_EXCLUSIVE, count, con);
// change behavior to navLast if navNext finds no data
// TODO: make a option to allow original "navNew" behavior if desired
@@ -119,7 +119,7 @@
logCat.info("==>NavNextLastEvent");FieldValue.invert(orderConstraint);
rsv = table.doConstrainedSelect(table.getFields(), childFieldValues,
- orderConstraint, Constants.COMPARE_NONE, count, con);
+ orderConstraint, sqlFilter, Constants.COMPARE_NONE, count, con);
FieldValue.invert(orderConstraint);
rsv.flip();
}
Index: src/org/dbforms/event/classic/NavPrevEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/classic/NavPrevEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavPrevEvent.java
--- src/org/dbforms/event/classic/NavPrevEvent.java 31 Jul 2003 17:53:02 -0000 1.3
+++ src/org/dbforms/event/classic/NavPrevEvent.java 11 Aug 2003 09:11:11 -0000
@@ -98,7 +98,7 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count, String firstPosition,
+ FieldValue[] orderConstraint, String sqlFilter, int count, String firstPosition,
String lastPosition, Connection con, String dbConnectionName)
throws SQLException
{
@@ -109,7 +109,7 @@
FieldValue.invert(orderConstraint);ResultSetVector resultSetVector = table.doConstrainedSelect(table
- .getFields(), childFieldValues, orderConstraint,
+ .getFields(), childFieldValues, orderConstraint, sqlFilter,
Constants.COMPARE_EXCLUSIVE, count, con);
FieldValue.invert(orderConstraint);
@@ -121,8 +121,8 @@
// just select from table in given orderlogCat.info("==>NavPrevFirstEvent");
resultSetVector = table.doConstrainedSelect(table.getFields(),
- childFieldValues, orderConstraint, Constants.COMPARE_NONE,
- count, con);
+ childFieldValues, orderConstraint, sqlFilter,
+ Constants.COMPARE_NONE, count, con);
}
return resultSetVector;
cvs server: Diffing src/org/dbforms/event/datalist
Index: src/org/dbforms/event/datalist/GotoEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/GotoEvent.java,v
retrieving revision 1.7
diff -u -r1.7 GotoEvent.java
--- src/org/dbforms/event/datalist/GotoEvent.java 1 Aug 2003 20:00:48 -0000 1.7
+++ src/org/dbforms/event/datalist/GotoEvent.java 11 Aug 2003 09:11:11 -0000
@@ -223,7 +223,9 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
@@ -265,7 +267,7 @@
if (Util.isNull(whereClause)){
qry = new DataSourceFactory(config, dbConnectionName, table,
- childFieldValues, orderConstraint);
+ childFieldValues, orderConstraint, sqlFilter);
}
else
{
Index: src/org/dbforms/event/datalist/NavFirstEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/NavFirstEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavFirstEvent.java
--- src/org/dbforms/event/datalist/NavFirstEvent.java 31 Jul 2003 09:01:44 -0000 1.3
+++ src/org/dbforms/event/datalist/NavFirstEvent.java 11 Aug 2003 09:11:11 -0000
@@ -94,7 +94,9 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
Index: src/org/dbforms/event/datalist/NavLastEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/NavLastEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavLastEvent.java
--- src/org/dbforms/event/datalist/NavLastEvent.java 31 Jul 2003 09:01:44 -0000 1.3
+++ src/org/dbforms/event/datalist/NavLastEvent.java 11 Aug 2003 09:11:11 -0000
@@ -94,7 +94,9 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
Index: src/org/dbforms/event/datalist/NavNextEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/NavNextEvent.java,v
retrieving revision 1.3
diff -u -r1.3 NavNextEvent.java
--- src/org/dbforms/event/datalist/NavNextEvent.java 31 Jul 2003 08:47:47 -0000 1.3
+++ src/org/dbforms/event/datalist/NavNextEvent.java 11 Aug 2003 09:11:11 -0000
@@ -106,7 +106,9 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
Index: src/org/dbforms/event/datalist/NavPrevEvent.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/NavPrevEvent.java,v
retrieving revision 1.4
diff -u -r1.4 NavPrevEvent.java
--- src/org/dbforms/event/datalist/NavPrevEvent.java 31 Jul 2003 09:01:44 -0000 1.4
+++ src/org/dbforms/event/datalist/NavPrevEvent.java 11 Aug 2003 09:11:11 -0000
@@ -106,7 +106,9 @@
* @exception SQLException if any error occurs
*/
public ResultSetVector processEvent(FieldValue[] childFieldValues,
- FieldValue[] orderConstraint, int count,
+ FieldValue[] orderConstraint,
+ String sqlFilter,
+ int count,
String firstPosition,
String lastPosition, Connection con,
String dbConnectionName)
cvs server: Diffing src/org/dbforms/event/datalist/dao
Index: src/org/dbforms/event/datalist/dao/DataSource.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/dao/DataSource.java,v
retrieving revision 1.8
diff -u -r1.8 DataSource.java
--- src/org/dbforms/event/datalist/dao/DataSource.java 31 Jul 2003 20:16:09 -0000 1.8
+++ src/org/dbforms/event/datalist/dao/DataSource.java 11 Aug 2003 09:11:11 -0000
@@ -120,7 +120,7 @@
* rules for ordering (sorting)
*/
public abstract void setSelect(FieldValue[] filterConstraint,
- FieldValue[] orderConstraint);
+ FieldValue[] orderConstraint, String sqlFilter);
/**
Index: src/org/dbforms/event/datalist/dao/DataSourceFactory.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/dao/DataSourceFactory.java,v
retrieving revision 1.3
diff -u -r1.3 DataSourceFactory.java
--- src/org/dbforms/event/datalist/dao/DataSourceFactory.java 31 Jul 2003 09:01:44 -0000 1.3
+++ src/org/dbforms/event/datalist/dao/DataSourceFactory.java 11 Aug 2003 09:11:12 -0000
@@ -115,12 +115,13 @@
String dbConnectionName,
Table table,
FieldValue[] filterConstraint,
- FieldValue[] orderConstraint)
+ FieldValue[] orderConstraint,
+ String sqlFilter)
throws SQLException
{
this(table);
dataHandler.setConnection(config, dbConnectionName);
- dataHandler.setSelect(filterConstraint, orderConstraint);
+ dataHandler.setSelect(filterConstraint, orderConstraint, sqlFilter);
}
Index: src/org/dbforms/event/datalist/dao/DataSourceJDBC.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/dao/DataSourceJDBC.java,v
retrieving revision 1.16
diff -u -r1.16 DataSourceJDBC.java
--- src/org/dbforms/event/datalist/dao/DataSourceJDBC.java 2 Aug 2003 09:27:15 -0000 1.16
+++ src/org/dbforms/event/datalist/dao/DataSourceJDBC.java 11 Aug 2003 09:11:12 -0000
@@ -68,6 +68,7 @@
private String tableList;
private FieldValue[] filterConstraint;
private FieldValue[] orderConstraint;
+ private String sqlFilter;
private DbFormsConfig config;
private boolean fetchedAll = false;
@@ -145,10 +146,11 @@
* rules for ordering (sorting) and restricting fields.*/
public void setSelect(FieldValue[] filterConstraint,
- FieldValue[] orderConstraint)
+ FieldValue[] orderConstraint, String sqlFilter)
{
this.filterConstraint = filterConstraint;
this.orderConstraint = orderConstraint;
+ this.sqlFilter = sqlFilter;
}
@@ -237,7 +239,7 @@
{query = getTable()
.getSelectQuery(getTable().getFields(), filterConstraint,
- orderConstraint, Constants.COMPARE_NONE);
+ orderConstraint, sqlFilter, Constants.COMPARE_NONE);
stmt = con.prepareStatement(query);
rs = getTable()
Index: src/org/dbforms/event/datalist/dao/DataSourceXML.java
===================================================================
RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/event/datalist/dao/DataSourceXML.java,v
retrieving revision 1.7
diff -u -r1.7 DataSourceXML.java
--- src/org/dbforms/event/datalist/dao/DataSourceXML.java 31 Jul 2003 20:16:09 -0000 1.7
+++ src/org/dbforms/event/datalist/dao/DataSourceXML.java 11 Aug 2003 09:11:12 -0000
@@ -61,6 +61,7 @@
private static DocumentBuilder builder = null;
private FieldValue[] filterConstraint;
private FieldValue[] orderConstraint;
+ private String sqlFilter;
private XMLDataResult data;
private String[] keys;
private Object[][] dataObject;
@@ -97,10 +98,12 @@
* @param orderConstraint DOCUMENT ME!*/
public void setSelect(FieldValue[] filterConstraint,
- FieldValue[] orderConstraint)
+ FieldValue[] orderConstraint,
+ String sqlFilter)
{
this.filterConstraint = filterConstraint;
this.orderConstraint = orderConstraint;
+ this.sqlFilter = sqlFilter;
}
@@ -247,6 +250,7 @@
private String getXPath() throws Exception
{
+ // FIXME find a way to transform sqlFilter in a XPath query
StringBuffer buf = new StringBuffer();
buf.append(Util.replaceRealPath(getTable().getAlias(),
DbFormsConfigRegistry.instance().lookup()));
cvs server: Diffing src/org/dbforms/event/eventtype cvs server: Diffing src/org/dbforms/resources cvs server: Diffing src/org/dbforms/servlets cvs server: Diffing src/org/dbforms/servlets/reports cvs server: Diffing src/org/dbforms/taglib Index: src/org/dbforms/taglib/DbFormTag.java =================================================================== RCS file: /cvsroot/jdbforms/dbforms/src/org/dbforms/taglib/DbFormTag.java,v retrieving revision 1.51 diff -u -r1.51 DbFormTag.java --- src/org/dbforms/taglib/DbFormTag.java 6 Aug 2003 15:08:01 -0000 1.51 +++ src/org/dbforms/taglib/DbFormTag.java 11 Aug 2003 09:11:13 -0000 @@ -177,6 +177,9 @@
/** filter string */
private String filter;
+ /** SQL filter string */
+ private String sqlFilter;
+
private String gotoPrefix;//private String gotoPos; @@ -592,6 +595,23 @@
/**
+ * @return
+ */
+ public String getSqlFilter()
+ {
+ return sqlFilter;
+ }
+
+ /**
+ * @param string
+ */
+ public void setSqlFilter(String string)
+ {
+ sqlFilter = string;
+ }
+
+
+ /**
* Sets the gotoPrefix attribute of the DbFormTag object
*
* @param gotoPrefix The new gotoPrefix value
@@ -1397,7 +1417,7 @@
// Part III - fetching Data. This data is provided to all sub-
// elements of this form.
// *************************************************************
-
+
// overrules other default declarations eventually done in XML config;
this.initOverrulingOrder(request);
@@ -1694,7 +1714,8 @@
logCat.info("about to process nav event:" + navEvent.getClass().getName());
resultSetVector =
navEvent.processEvent(mergedFieldValues,
- orderConstraint,
+ orderConstraint,
+ sqlFilter,
count,
firstPosition,
lastPosition,
cvs server: Diffing src/org/dbforms/util
cvs server: Diffing src/org/dbforms/util/external
cvs server: Diffing src/org/dbforms/validation
cvs server: Diffing src/org/dbforms/xmldb
cvs server: Diffing temp
cvs server: Diffing tests
cvs server: Diffing tests/test
cvs server: Diffing tests/test/org
cvs server: Diffing tests/test/org/dbforms
cvs server: Diffing tests/test/org/dbforms/bookstore
cvs server: Diffing tests/test/org/dbforms/config
cvs server: Diffing tests/test/org/dbforms/config/error
cvs server: Diffing tests/test/org/dbforms/util
cvs server: Diffing tests/test/org/dbforms/xmldb
cvs server: Diffing tests/test-cactus
cvs server: Diffing tests/test-cactus/org
cvs server: Diffing tests/test-cactus/org/dbforms
cvs server: Diffing tests/test-cactus/org/dbforms/config
cvs server: Diffing tests/test-cactus/org/dbforms/servlets
cvs server: Diffing tests/test-cactus/org/dbforms/taglib
cvs server: Diffing tests/test-cactus/org/dbforms/util
cvs server: Diffing usersguide_src
cvs server: Diffing usersguide_src/docbook_tools
cvs server: Diffing usersguide_src/docbook_tools/saxon
cvs server: Diffing usersguide_src/images
cvs server: Diffing usersguide_src/images/callouts
cvs server: Diffing usersguide_src/images/figures
cvs server: Diffing usersguide_src/images/figures/uml
cvs server: Diffing usersguide_src/images/figures/uml/class
cvs server: Diffing usersguide_src/images/figures/uml/sequence
cvs server: Diffing usersguide_src/templates
cvs server: Diffing xdocs
cvs server: Diffing xdocs/images
cvs server: Diffing xdocs/images/poweredby
cvs server: Diffing xdocs/images/poweredby/j_peer
cvs server: Diffing xdocs/images/poweredby/pow2acl
cvs server: Diffing xdocs/images/poweredby/pow2cm
cvs server: Diffing xdocs/poweredby
cvs server: Diffing xdocs/stylesheets
cvs server: Diffing xsl-stylesheets
----------------------- CUT HERE ----------------------------
------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ DbForms Mailing List
http://www.wap-force.net/dbforms
