Microsoft KB Archive/102463
2.5x 2.60 WINDOWS kbtool kbprint kbfixlist kbbuglist
The information in this article applies to:
The sum in a report group footer displays incorrectly when you choose Page Preview from the Report menu and use the Previous button to return to a page of the report that contains only one record in the group. However, the report does display correctly when the Next button is used, and it also prints correctly.
To work around this problem, use a user-defined function (UDF) instead. Below is an example of a simple UDF that returns a group sum to the group footer of a report. The expression in the group footer is "grpsum(company)" (without the quotation marks), where COMPANY is the field that the report is being grouped on. YTDPURCH is the numeric field that is being summed.
PARAMETER grpvar * Store the current record number to a variable because the SUM * command moves the record pointer to the end of the file. m.rec=RECNO() SUM ytdpurch FOR company=grpvar TO sumvar * Set the record pointer back to the correct record. GOTO m.rec RETURN sumvar
To use this code, place it in a file called GRPSUM.PRG and save it in the same directory as the report.
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem was corrected in FoxPro version 2.6a for Windows.
Steps to Reproduce Problem
1. Create a report in FoxPro for Windows using CUSTOMER.DBF in the
TUTORIAL subdirectory, and place the numeric field YTDPURCH on the detail line.
2. From the Report menu, choose Data Grouping, group on the COMPANY
field, and have each group start on a new page.
3. Copy the YTDPURCH field on the detail line, and paste it into the
group footer band. Double-click the field. In the Report Expression dialog box, select the Calculate option, then select Sum. In the Reset box, select Customer.Company.
4. From the Report menu, choose Page Preview, and use the Next button
to move through the report one page at a time. Note that each group has only one record, so the ytdpurch and its subtotal on the group footer are the same. After choosing Next at least two times, choose Previous, and note that the subtotal is now incorrect for each group that contains only one record (except the first group). The subtotal displayed is actually the subtotal for the group on the preceding page.
Additional reference words: FoxWin 2.50 2.50a 2.50b 2.60 fixlist2.60a buglist2.50 buglist2.50a buglist2.50b buglist2.60 RWriter KBCategory: kbtool kbprint kbfixlist kbbuglist KBSubcategory: FxtoolRwriter
Keywords : FxtoolRwriter kbbuglist kbfixlist Version : 2.5x 2.60 Platform : WINDOWS Solution Type : kbfix
Last Reviewed: September 24, 1997