I've got a question about doExplicitQBE(). I have a search page with several display
fields (mostly text boxes and 3 combo boxes). All the text boxes and combo boxes
have their QueryType property = explicit, i.e. doQBE() is used to define the dynamic
criteria based on the user input and combo selections. What I want to do, however,
is "override" the dynamic criteria defined by the user's combo box selection. The
label list in the combo box is:
None selected
True
False
If the user chooses False, I want the generated SQL where clause to be:
.. WHERE column_name IS NULL
because the distinct values for the data field in the data object are either 'Y' or
null.
I tried assigning the isNull() method as the value for label False, but when the SQL
is
generated, it substitutes the string 'isNull()' in the generated SQL; not what I want.
So
I searched Help and found doExplicitQBE(). It looked like it would do what I wanted.
Here's my code snippet.
import spider.visual.*;
.....
CSpPage currentPage = CSpider.getPage(new String(this.getName()));
/**
* Get a handle to the Inactive Member checkbox on nextPage
*/
CSpCheckBox ckbInactiveMembers = (CSpCheckBox)
nextPage.getDisplayField("ckbInactiveMembers");
/**
* Get a handle to the Inactive Member combo box on the current page
*/
CSpDisplayField inactiveMembers = (CSpDisplayField)
currentPage.getDisplayField("cbInactive");
/**
* Set the checkbox default value to its checked value if the user chose the
* inactive search criteria; else, set it to its unchecked value.
*/
if (getDisplayFieldValue("cbInactive").stringValue().equals("Y"))
nextPage.setDisplayFieldValue("ckbInactiveMembers",
ckbInactiveMembers.getCheckedValue());
else {
CSpValue nullString = new CSpString("");
nextPage.setDisplayFieldValue ("ckbInactiveMembers",
ckbInactiveMembers.getUncheckedValue());
inactiveMembers.doExplicitQBE(CSpCriteriaSQLObject.IS_NULL_OPERATOR,
nullString, nullString);
}
When I try to compile this, however, I get the following error:
No method matching doExplicitQBE(int, spider.session.CSpValue,
spider.session.CSpValue) found in class spider.visual.CSpDisplayField.
Can someone please tell me what this error means? And is using doExplicitQBE()
the solution for this problem?
_________________________________________________________________________
For help in using, subscribing, and unsubscribing to the discussion
forums, please go to: http://www.netdynamics.com/support/visitdevfor.html
For dire need help, email: [EMAIL PROTECTED]