Are you still interested in a solution for this? I'm not sure how this would translate when using ttx files (since I don't have experience working with them), but this might give you some ideas.
I used an Excel table which contained a field with all dates for an entire year (1997) to create the main report, and the Extreme database to create the subreports for the content of each calendar day. This required 5 subreports for Monday through Friday (or 7 if you are doing this for the entire week).
To create the empty calendar in the main report, do the following:
1-Insert a group on {xl.date}, and choose monthly. Check "use customized group name based on a formula" and enter:
monthname(month({xl.date}))
Drag the groupname to the page header and go to format->section->group #1 (monthdate) footer and check new page after and in the formula area enter: Not OnLastRecord
2-Create a formula {@weeknumber}:
DatePart("ww",{xl.date},1,crFirstJan1)
3-Insert a group #2 on {@weeknumber}.
4-Create a formula for each day of the week, e.g., {@Sun}:
if weekdayname(dayofweek({xl.date},1)) = "Sunday" then day({xl.date})
{@Mon} would look like:
if weekdayname(dayofweek({xl.date},1)) = "Monday" then day({xl.date}) //etc.
5-Add each of the 7 formulas to the details section, insert a maximum on each formula, and drag the group #2 summaries to the group #2 header, positioning them equidistant across the page and then in design mode dragging the lower boundary of the header down to allow the desired space per day or "square". Then suppress the details. To eliminate "0" results, right click on each formula->format field->common->suppress and enter:
sum({@Mon}, {@weeknumber}) = 0 //changing the day formula name for each of the remaining field suppressions
6-Next, to create the grid, add a box which includes the page headers (daynames) and extends down to the bottom of the group #2 header. Then add vertical lines extending from the top of the box to the bottom to divide the days. For both the box and each line, format them to "Extend to bottom of section when printing" by right clicking on the box or line and choosing "format." Next left justify and reposition the maximums so they are in the upper left corner of each day box, as you would normally see in a calendar.
Now you should see an empty calendar with one month per page.
7-To create the subreport "Mon", insert a subreport and select tables (I used the Extreme database tables Orders, Order Details, Product). I added the {Product.Product Name} field to the subreport (this is where you would add your meetings and times data) and suppressed all other sections but the details section.
8-Next you would also insert a formula in the subreport called {@weeknumber}:
datepart("ww",{Orders.Order Date},1,crFirstJan1)
9-In the record selection formula for the subreport, add:
year({Orders.Order Date}) = 1997 and
dayofweek({Orders.Order Date}) = 2 //for Monday
10-Then link the subreport to the main report using the {@weeknumber} fields from each, and then place the subreport in the Monday square of the group #2 header, resizing it to fit.
11-Next, right click on the subreport->format subreport->common->suppress and enter:
maximum({@Mon}, {@weeknumber}) = 0 //again, change to correspond to the correct weekday
Because weeknumbers are repeated for the end of one month and the beginning of the next, since month ends/starts are typically mid-week, this last suppression prevents duplicate entries in "blank" days.
12-Repeat steps 7 to 11 for the remaining subreports.
The subreports now fill the dates throughout the year with your data.
-LB