Re: Setting an attribute based on PK?
Ashley Aitken <[email protected]> Tue, 27 Apr 2004 21:54:16 +0800
| Newsgroups | gmane.comp.web.webobjects.eof |
|---|---|
| Message-ID | <[email protected]> |
Hi Chuck (et al), Thanks for your post. On 26/04/2004, at 1:38 AM, Chuck Hill wrote: > If all you need is an unique value, then why torture EOF? Some > possibilities: > - create a session and grab the session ID. Quick, dirty, effective. > - use one of the digest algorithms to digest information on the object > and > produce a unique value > - use EO_PK_TABLE or the database's PK generation support to generate a > number just for this purpose. > - use and EO to keep track of the last used value, use this value +1 > and > update it on an insert of the other object Yes, all good ideas. I just thought EOF was creating a unique sequenced integer, why not use it. It seemed, at the time, like the easy way (see other post for recent problems). I've also put this code into my EC class, and it calls a method that gives any EO (when inserted) an opportunity to set attribute values based on the primary key. The default code in my generic record class even looks for a key entityName() + "Code" and automatically sets that to the primary key value (I know some may not like this) . >> I want to set an attribute (not the primary key) based on the >> primaryKey value. >> > No. You want to set an attribute (not the primary key) to a unique > value. > You've just fixated on the primary key value. :-) Yes, you're right, but see above. >> The only thing is, it still saves the original value of the other >> attribute. I seem to remember it is ill-advised to change an EO >> during >> validation (although this is not validation, probably later) maybe >> this >> is similar. >> > You're changing things that EOF considers already settled. This is > way, > way too late to be mucking about changing attibute values. Yes, I've learnt that lesson ;-) Cheers, Ashley. -- Ashley Aitken Perth, Western Australia mrhatken at mac dot com