From: Max M. <max...@ma...> - 2004-04-27 05:57:10
|
Hi Ashley, > On 23/04/2004, at 1:39 PM, Anjo Krank wrote: >> ((session.actor.entityName = 'Client') and (entity.name = 'Job')) => >> isEntityEditable = { >> qualifierFormat = "(object.isNewJob = 1)"; >> trueValue = 1; >> falseValue = 0; >> } >> [ERDDelayedConditionalAssignment] > > Thanks, I am trying this now, but would have never guessed to do it > this way. (Note: actor is a session attribute that has a string equal > to the user's type e.g. "Client" or "Employee"). > > I keep getting an exception for this rule - RHS = null. > > { author = 100; class = "com.webobjects.directtoweb.Rule"; > lhs = { class = com.webobjects.eocontrol.EOAndQualifier; > qualifiers = ( { class = > com.webobjects.eocontrol.EOKeyValueQualifier; key = > "entity.name"; selectorName = "isEqualTo"; > value = Job; }, { class = > com.webobjects.eocontrol.EOKeyValueQualifier; key = > "session.actor"; selectorName = "isEqualTo"; > value = Client; } ); }; rhs = { > class = "er.directtoweb.ERDelayedConditionalAssignment"; > keyPath = isEntityEditable; value = {falseValue = 0; > qualifierFormat = "object.newJob = 1"; trueValue = 1; }; }; } > > It looks fine to me. Is object correct? Will that be the object in > the inspect page, or the object in the list repetition? Looks fine to me as well. Check your version of ERD2W and see if it has ERDelayedConditionalAssignment. The object will be the object that is currently displaying it's attributes. > If I remove this rule, all jobs are not editable. If I include this > rule, all jobs become editable (no matter what the value of the job's > newJob attribute. Not sure why it would do this, as well, if the rule > has a problem. The error you are getting above is for sure interfering. Delayed assignments are evaluated each time they fire instead of being cached. If the rule is not loading correctly then you will be getting a cached result. Regards, Max |