On 9/9/10 10:13 AM, Nate Lowrie wrote: > On Thu, Sep 9, 2010 at 13:07, Ed Leafe<[email protected]> wrote: >> Is there only one Cursor available in a report? Is there no way to >> establish parent-child relationships? > > I can't find a way to do it and it seems the way of doing it is to > denormalize the parent/child tables into a single DataSet. Seems > backwards to me coming from Crystal Reports.
It's been on my mind to allow Cursor to be set to a dBizobj instance instead of a raw tuple of dicts. That way, the bizobj gets iterated during the report run, and therefore any children of that bizobj get requeried and iterated too. But it adds huge layers of complications: + what if we want to iterate some children but not others, the reportwriter would have to look ahead and see if any of the fields are referenced, etc. + the expressions would have to be more explicit, so we know what bizobj to get the field value from, like: - <expr>self.Record.bizChild.bizChild.Record.cust_name</expr> instead of: - <expr>self.Record["cust_name"]</expr> or the shortcut: - <expr>self.cust_name</expr> I think the implementation of reportwriter is much simpler the way it is, and it is complex enough as it is, too. But also I think that denormalizing data to feed to a report ultimately gives greater and simpler control to the appdev, too. Keeping that report form file as simple as possible is good for everyone. Flat is better than nested. Paul _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users Searchable Archives: http://leafe.com/archives/search/dabo-users This message: http://leafe.com/archives/byMID/[email protected]
