Re: SV: Nested db-objects
Sigurd Nes <[email protected]>
| Newsgroups | gmane.comp.web.phpgroupware.devel |
|---|---|
| Message-ID | <[email protected]> |
Dave Hall wrote: > On Thu, 2008-05-22 at 15:06 +0200, Sigurd Nes wrote: >>> From: Olivier Berger [[email protected]] >>> Sent: 2008-05-22 13:35:48 CEST >>> To: [email protected] >>> Subject: Re: [phpGroupWare-developers] Nested db-objects >>> >>> Le mercredi 21 mai 2008 à 20:02 +0200, Sigurd Nes a écrit : >>>> Hi all, >>>> >>>> I find it very useful to have the ability to have the choice of using nested >>>> db-objects. >>>> >>>> Example: >>>> When integrating with external systems - it is very convenient to start a >>>> transaction on system 1 - do some work (like sync) on system 2 - and if things >>>> went well do a commit on the result in system 1. >>>> >>> Sure. >>> >>> Are there any test cases to verify that such frameworks are working as >>> expected in phpgw ? >> Her is one example on how I have used nested db-objects: >> I have a configurable hierarchy of locations (read: estate/building/floor/room etc) >> Within each level (which is represented by a set of tables) one can have custom fields of any type. >> This function allows you to delete the bottom level and cleaning out the custom fields from the meta database in the process. >> >> <code> >> function delete($id) >> { >> $this->init_process(); >> $this->oProc->m_odb->transaction_begin(); >> $this->db->transaction_begin(); > > Wouldn't it be cleaner to have $this->oProc->m_odb as a reference > to $this->db which is a reference to $GLOBALS['phpgw']->db then you > only need to call transaction_begin() once and have only one transaction > running? > The point is that this approach has been valid for years - and this approach is used numerous places - and it will be a major setback if it is suddenly banned. Why can't we do as Maât suggest - and we should all be happy: <snip> write down quality rules or phpgroupware best practices to help app developers create elegant code that will have a better effect on design beauty and global performance and phpgw image than locking things and managing developers grunting. </snip> Regards Sigurd