Re: Binding query variables (EOF Fetch Spec Qualifier) under IB

Ryu <[email protected]> Tue, 01 Mar 2005 10:23:35 +0100
Newsgroups gmane.comp.web.webobjects.eof
Message-ID <BE49F327.76E5%[email protected]>

I'm using OSX, and up to now Cocoa/EOF, but it's ok me for me
to use Java and make a Java Client Application. (Anyway, up to
Now I don't have a line of code, so I think it doesn't change anything
if using ObjC or Java)

Hence, I use EOBuilder to build my database, and Interface builder
To build my interface.

It is quite frustrating because I'm sure we can do the bindings graphically
under IB, exactly like it is shown under WebObjectBuilder (there are even
Screenshots in the docs! And they say it's the same under IB).

PS: in my last mail, I said:

>> code. I already successfully wrote a front end that can browse all
>> elements,
>> and add/remove/modify an entry with writing code.

I wanted to say that I could do this WITHOUT writing anycode, and that
I expected to do so for such a simple think as binding Query Variables
Of my Qualifier to interface elements (NSTextFied)



New point:

As I couldn't find "how to" bind my query variables to my interface
Objects (TextFields...) using InterfaceBuilder, I tried to make it
Programmatically using Objc, but it seems there are some pbs :-(

my fetch spec looks like
    
     (name = $name)

And the code:

    fetch = [[displayGroup dataSource] fetchSpecification];
    qual = [fetch qualifier];
    bindings = [NSMutableDictionary new];
    [bindings takeStoredValue: @"Baka" forKey: @"name"];

And 
    
    q2 = [qual qualifierWithBindings: bindings : NO];

Makes:

2005-02-25 11:52:26.206 Baka[808]
com/webobjects/foundation/NSKeyValueCoding$UnknownKeyException:
<com.apple.cocoa.foundation.NSMutableDictionary 0xbf47df> valueForKey():
lookup of unknown key: 'name'.
This class does not have an instance variable of the name name or _name, nor
a method of the name name, _name, getName, or _getName

The same way,

     fetch = [fetch fetchSpecificationWithQualifierBindings: bindings];

Or

    [[displayGroup dataSource] setQualifierBindings: bindings];

Make exactly the same error!

I was said the was a Javabridge problem, but I just don't know ...
I think I'm gonna try to make excatly the same code in Java using
a Java Client Application to compare ...


Any help is greatly appreciated!!!

Regards,

    Ryu



On 28/02/05 18:13, "Ricardo Strausz" <[email protected]> wrote:

> Hola Ryu!
> can you be more specific... which platform are you using?
> You mentioned Interface Builder; are you trying Java Client? or
> Cocoa/EOF?
> 
> Dino
> 
> On Feb 21, 2005, at 10:28 AM, Ryu wrote:
> 
>> 
>> 
>> 
>> Hi there,
>> 
>> I want to write a front end to a DB, that has a search form, WITHOUT
>> writing
>> code. I already successfully wrote a front end that can browse all
>> elements,
>> and add/remove/modify an entry with writing code.
>> 
>> To avoid loading all the table that has 2 millions entries (hence not
>> "in
>> memory" filtering with EOPickTextAssociation), I have to make a
>> specific SQL
>> query.
>> 
>> Under EOBuilder, I have added a Fetch Spec to my table Entity
>> In this Fetch Spec, I have added the Qualifier "(name = $myName)"
>> 
>> But once under Interface Builder, I just can't find how to bind user
>> interface (NSField, NSForm) to my Query Variable (nyName).
>> There is no @queryBindings->myName (or @bindings->myName) in the
>> inspector
>> (Inspector/Connections/EOTextAssociation) when binding to the
>> EODisplayGroup
>> that has my FetchSpec (like they talk about in the docs)
>> 
>> Though, I have @query= (which seems to be the WOBuilder's
>> @queryMatch). I
>> was able to make a "simple search form", by binding my NSField to
>> @QueryMatch->name. But the request which is made is case insensitive,
>> and
>> not exact match, and I want to be able to execute complex sql request
>> as
>> made in EOBuilder Fetch Spec.
>> 
>> Does anyone know where are the "Query Variables"/@queryBidings in the
>> Interface Builder, how to bind them to interface elements, so that I
>> can
>> execute a request without writing code ?
>> 
>> Regards,
>>     Ryu
>> 
>> 
>> _______________________________________________
>> EOF mailing list
>> [email protected]
>> http://www.omnigroup.com/mailman/listinfo/eof
>