Hi Isomorphic,
please see this minimal testcase on how ListGrid.setCriteria() is broken for SC_SNAPSHOT-2011-12-05/EVAL Deployment 2011-12-05 and
v8.2p_2012-04-18/EVAL Deployment 2012-04-18:
SQL (Oracle):
Client Java:
.ds.xml
fetchData() does not use the object set in either setCriteria(criteria) or setCriteria(criterion). I have to do fetchData(criteria).
Best regards,
Blama
please see this minimal testcase on how ListGrid.setCriteria() is broken for SC_SNAPSHOT-2011-12-05/EVAL Deployment 2011-12-05 and
v8.2p_2012-04-18/EVAL Deployment 2012-04-18:
SQL (Oracle):
Code:
DROP TABLE t_test CASCADE CONSTRAINTS ;
DROP SEQUENCE T_TEST_ID ;
CREATE TABLE t_test
( id INTEGER NOT NULL, num INTEGER, datum DATE
) ;
CREATE SEQUENCE T_TEST_ID NOCACHE ORDER ;
CREATE OR REPLACE TRIGGER t_test_BI BEFORE
INSERT ON t_test FOR EACH ROW WHEN(NEW.id IS NULL) BEGIN
SELECT T_TEST_ID.NEXTVAL INTO :NEW.id FROM DUAL;
END;
/
INSERT INTO t_test
(datum, num)
SELECT sysdate - rownum, rownum FROM dual CONNECT BY level < 10;
COMMIT ;
Code:
package com.smartgwt.sample.client;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.Criterion;
import com.smartgwt.client.data.DataSource;
import com.smartgwt.client.types.OperatorId;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.layout.VLayout;
import com.google.gwt.core.client.EntryPoint;
public class Testcase implements EntryPoint {
@Override
public void onModuleLoad() {
VLayout vL = new VLayout() {
{
setWidth100();
setHeight100();
final DataSource testDS = DataSource.get("T_TEST3");
final ListGrid testLG = new ListGrid() {
{
setDataSource(testDS);
Criterion criterion = new Criterion("NUM", OperatorId.EQUALS, 3);
Criteria criteria = new Criteria("NUM", "3");
setCriteria(criteria);
// setCriteria(criterion);
fetchData();
// fetchData(criteria);
}
};
addMember(testLG);
}
};
vL.draw();
}
}
Code:
<DataSource schema="testcase" dbName="Oracle" tableName="T_TEST" ID="T_TEST3" dataSourceVersion="1" serverType="sql" > <fields> <field primaryKey="true" hidden="true" name="ID" type="sequence"></field> <field name="DATUM" type="date"></field> <field name="NUM" type="int"></field> <field name="NUM2" nativeName="num" type="int"></field> </fields> </DataSource>
Best regards,
Blama
Comment