Does isOrganization get called? Once you've checked that it does, you could try 
to put "isOrganization = 0" on the first rule, to see whether that makes a 
difference. The "*Delayed*" assignments shouldn't make a difference here.

I've found changing of tabSectionsContents to be a tricky business, as they 
tend to get cached.

If the rules don't get fired as expected, then you need to trace them:

log4j.logger.er.directtoweb.rules.ERD2WTraceRuleFiringEnabled=DEBUG
log4j.logger.er.directtoweb.rules.tabSectionsContents=DEBUG
log4j.logger.er.directtoweb.rules.tabSectionsContents.candidates=DEBUG
log4j.logger.er.directtoweb.rules.tabSectionsContents.fire=DEBUG

Fabian

Am 05.05.2014 um 19:16 schrieb Ângelo Andrade Cirino <[email protected]>:

> Hi Fabian,
> 
> In terms of rules, what I intend to implement is the following:
> 
> 90 : (pageConfiguration = 'EditParty' or pageConfiguration = 'InspectParty') 
> => tabSectionsContents = ("[Status]", "status", "created", "lastModified", 
> "notes", "[PersonData]", "person.firstName", "person.lastName", 
> "person.birthDate", "[PostalAdresses]", "[Emails]", "[Phones]") 
> [com.webobjects.directtoweb.Assignment]
> 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> 'InspectParty') and object.isOrganization = 1) => tabSectionsContents = 
> ("[Status]", "status", "created", "lastModified", "notes", 
> "[OrganizationData]", "organization.name", "[PostalAdresses]", "[Emails]", 
> "[Phones]") [com.webobjects.directtoweb.Assignment]
> 
> But the rule with "object.isOrganization = 1" doesn't work. I am still 
> looking for a solution that doesn't need changing the code, a solution that 
> relies only on the viewer, respecting the MVC paradigm. Perhaps 
> "ERDDelayedSwitchAssignment" is what I am looking for.
> 
> Ângelop
> 
> 
> 2014-05-05 10:51 GMT-03:00 Fabian Peters <[email protected]>:
> Hi Ângelo,
> 
> For some reason I never use tabSectionsContents, only displayPropertyKeys in 
> the first format "(('Tab1', 'foo', …), ('Tab2', 'bar', …))". But your syntax 
> looks fine in all variants. However, the "isPerson" condition looks 
> suspicious to me. Are you sure it behaves as you expect? I assume it's a key 
> on the EO, so it should be "object.isPerson".
> 
> Fabian
> 
> Am 04.05.2014 um 20:41 schrieb Ângelo Andrade Cirino <[email protected]>:
> 
> > Hi,
> >
> > I have used tabs in subtasks for editing entities in the past without 
> > problems. Now I can't figure out why my rules below don't work:
> >
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => subTask = "tab" 
> > [com.webobjects.directtoweb.Assignment]
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => tabSectionsContents = (("Status", 
> > "status", "created", "lastModified", "notes"), ("PersonData", 
> > "person.firstName", "person.lastName", "person.birthDate")) 
> > [com.webobjects.directtoweb.Assignment]
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => tabSectionsContents = ("(Status)", 
> > "status", "created", "lastModified", "notes", "(PersonData)", 
> > "person.firstName", "person.lastName", "person.birthDate") 
> > [com.webobjects.directtoweb.Assignment]
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => tabSectionsContents = ("[Status]", 
> > "status", "created", "lastModified", "notes", "[PersonData]", 
> > "person.firstName", "person.lastName", "person.birthDate") 
> > [com.webobjects.directtoweb.Assignment]
> >
> > Only one of the three tabSectionsContents is active at once, because I 
> > wanted to try the three configurations, but none is displayed. If I turn on 
> > the following rule
> >
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => displayPropertyKeys = ("[Status]", 
> > "status", "created", "lastModified", "notes", "[PersonData]", 
> > "person.firstName", "person.lastName", "person.birthDate") 
> > [com.webobjects.directtoweb.Assignment]
> >
> > D2W will throw an exception:
> >
> > UnknownKeyException: <models.Party 0x6bda6308> valueForKey(): lookup of 
> > unknown key: '[Status]'.
> > This class does not have an instance variable of the name [Status] or 
> > _[Status], nor a method of the name [Status], _[Status], get[Status], or 
> > _get[Status]
> >
> > By the way, to show only the attributes I want I had to set up this rule:
> >
> > 100 : ((pageConfiguration = 'EditParty' or pageConfiguration = 
> > 'InspectParty') and isPerson = 1) => displayPropertyKeys = ("status", 
> > "created", "lastModified", "notes", "person.firstName", "person.lastName", 
> > "person.birthDate") [com.webobjects.directtoweb.Assignment]
> >
> > because the other rules won't work.
> >
> > Here is a screen capture showing that it is apparently well configured:
> >
> >
> >
> > Thanks for any help,
> >
> > Ângelo
> > _______________________________________________
> > Do not post admin requests to the list. They will be ignored.
> > Webobjects-dev mailing list      ([email protected])
> > Help/Unsubscribe/Update your Subscription:
> > https://lists.apple.com/mailman/options/webobjects-dev/lists.fabian%40e-lumo.com
> >
> > This email sent to [email protected]
> 
> 


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to