Welcome to the auxiliary site for the Daylite Reporting Fundamentals book. The site is intended to fill in the gaps that the book may have missed; the book was kept intentionally short so as not to be to wordy or intimidating, but it is certainly not a full treatment of every aspect of report design.

The book contains purely my own experiences and understandings of the report engine, and is not official Marketcircle documentation; any errors or omissions are purely my own. Also, the book was pretty much a one-man production, so please go easy on me ;-) That said, if you find an error, please alert me at info@mozaicsands.com so I can review and add to the Errata page. Thanks!

As of Daylite 3.9, one gotcha that involves qualifier queries from f-script is that the qualifier ‘isLike’ no longer works if you pass it a numerical value. OpenBase handled this behind the scense, but Postgres will error out on it. So, for example, I used to do something like

aContactID := 1200.
myQualifier := BDQualifier qualifierWhereValueOfKey:’contactID’ isLike:aContactID.

And this would work. This will not work from 3.9 forward however. To match numerical values, the following would be used:

myQualifier := BDQualifier qualifierWhereValueOfKey:’contactID’ isEqualTo:aContactID.

This also means that the ‘qual2′ example on page 135 needs to be corrected in order to work. Off to put this on the errata page!

You say tomato…

I have been meaning to point out one discrepancy between my terminology and Marketcircle’s as pertains to layouts. What are called Print Layouts (basically everything that isn’t a report) by Marketcircle, I refer to as Page Layouts. I haven’t gotten any comments that this has tripped anyone up yet, so it is probably fairly evident, but thought I would mention it. I can see from MC’s point of view that these ‘layouts’ are all generated (with the exception of estimates) by selecting File:Print. On the other hand, I would argue, that ‘page’ reflects the fact (with the exception of lists) that each selected object is given its own page (or template instance). Just so long it is clear that Print Layouts and Page Layouts are the same thing, no harm, no foul.

Master Pages and Toggles

In the book, I didn’t mention the Master options available from the Master icon at the top of the document template toolbar. Doh! Well, here’s a quick overview.

Selecting ‘Add Master Page’ allows for adding additional page templates to your report;add_master_page1 Each templates owns its own elements. An example might be a report that has a title page (of Master Page 1) and then one or more pages that the report itself is on (Master Page 2). If a page whose template is Master Page 2 has a tablethat when run, requires multiple pages to display, each additional page will also be based on Master Page 2. As you might suspect, the ‘Remove Master Page’ will delete the current page template you have selected. One oddity about both of these commands is that they don’t become available where one might think – you must be within a page’s body element or higher to activate them. (It would make more sense to reverse this imho – to have the ability to add or remove a page template only when the ‘report’ or ‘page’ elements are selected).

The ‘Toggle Layout Rectangles’ command lets you make the bounding boxes of every element visible, and can be handy for aligning different elements visually. If the command isn’t immediately available, select a different element from the element path at the bottom of the document template- this command seems a little touchy about allowing itself to be selected and deselected. And the ‘Toggle Foreground’ command will show and hide the body element (and every element it contains). Showing and hiding the layout rectangles applies to every page template, while the foreground toggle is per page. If you find yourself hiding the foreground and then getting stuck on how to show it again (the command being disabled), select a page element that wasn’t in the body element (like the page number element) and the command should reappear.

© 2003 - 2009 Mozaic Services & Solutions