To All....
I finally decided to write something in 7, since 8 is still beta and there's no guarantee that it will work the same when it's finally released.
To make everything respect the groups and reset page numbers on grouping, I resorted to printing to file. Since, most of the groups in this particular report are small, I wrote some code in the program that contains the SQL that creates the final dataset. After creating the dataset with a blank field for a group number, I update the cursor with a number of the group. I then determine how many groups that are..(with a select distinct on the group number I just populated). Then in a FOR...ENDFOR loop, create a public variable for each group. After creating the variables, I then run the report to file for each group, storing the _PAGENO variable to the variable that was created for that group previously. I then wrote a UDF and included it in the report field - "Page "+alltrim(str(_pageno))+" of "+setpage(). The UDF determines what group is being printed (from the group number put into the dataset earlier) and returns the page count for that group. If I can just figure out how to suppress the dialog that shows the print progress, it would be the final touch.
Lot to do, but in this case, it was very important for the user's department to have this.