You could do a scan loop. Assuming both tables already exist and the field names are as you described with Month and Day being integer (or number) fields.
Code:
var
ResTC, BookTC tCursor
NxtDate date
endvar
if not ResTC.open(":myAlias:Reservations.db") ; open Reservations
then errorShow()
return
endif
if not BookTC.open(":myAlias:Booking.db") ; Open Bookings
then errorShow()
return
endif
BookTC.edit() ; put Booking.db in edit mode
scan ResTC:
NxtDate = ResTC."From Date" ;assign start date
while NxtDate <= ResTC."To Date" ; loop for bookings
BookTC.insertAfterRecord() ; new record
BookTC."Room" = ResTC."Room" ; transfer room number
BookTC."Date" = NxtDate ; add date for this iteration
BookTC."Month" = month(NxtDate) ; get the month
BookTC."Day" = day(NxtDate) ; get the day
NxtDate = NxtDate+1 ; increment the date
endWhile
endscan
;close all tCursors
BookTC.endEdit()
BookTC.close()
ResTC.close()
I did this without a test and without my morning coffee. You may want to add some error trapping to catch records with blank To and/or From dates.
Mac