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]

Reply via email to