On Jun 22, 2011, at 9:47 AM, Paul McNett wrote:

> Yes, but what about putting a property in the bizobj, like ParentDeleteLogic, 
> defaulting to None, which means to go with however the Parent's 
> deleteChildLogic is set.

        Hmmm... not sure I agree with that approach. Children should not make 
the rules; parents should. :)

        Less flippantly, child bizobjs are 'dependent', and while I know that 
there are some places where we have child bizobj props overriding parents (even 
some places that I coded), I think that that was a poor choice and more of a 
band-aid than a proper solution.

> And, what about propertyizing these attributes while we are at it?
> 
> This way, I could do:
> 
> """
> self.bizShapeEffect = ShapeEffect(app.dbConnection, 
> ParentDeleteLogic=kons.REFINTEG_IGNORE)
> 
> self.addChild(self.BizShapeEffect)
> """


        If you want to set it directly, I think it is cleaner to add options to 
addChild() - remember, 99.9% of the time this will never be needed, so the 
simpler the better:

self.addChild(self.BizShapeEffect, deleteLogic=kons.REFINTEG_IGNORE)

        This would only require changing addChild to accept optional 
'deleteLogic', 'insertLogic' and 'updateLogic' parameters. If they are passed, 
the appropriate dict in the parent is updated to reflect that; otherwise, the 
defaults are used.



-- Ed Leafe




_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: 
http://leafe.com/archives/byMID/[email protected]

Reply via email to