利用VFP快速打印统计报表

IT商界

  在日常统计工作中,经常需要打印每页有小计而且表尾有总计的统计报表。如果报表有多页,并且需要对表内数据进行排序等操作,Excel操作起来会非常复杂,笔者经过多次摸索,发现利用VFP报表设计器打印这类报表的方法。

  假设一数据库表(SR.DBF)内容如下:

  XM  字符型  8  姓名

  SR  数值型  8   2   收入金额

  打印步骤如下

  1.表内插入一辅助字段FY,字符型,长度为2,用于报表分组。

  2.打开报表设计器。

  3.菜单【报表】【数据分组】分组表达式选择字段“FY”,组属性选中“每组从新的一页上开始”。

  4.如图设计报表(SR.FRX)

  (1)注:每条竖线由四段组成,图中尺寸句柄显示了每段的长度。

  (2)本页小计【JE域控件】“计算”总和,FY重置,即只合计本页。

  (3)总计【JE域控件】“计算”总和,报表尾重置。

  (4)【总计标签】,总计行【JE域控件】及围线设置“打印条件”为_pageno=FYBOTTOM。

  5.运行程序:(SR.PRG)

  SET TALK OFF

  CLEA ALL

  USE SR

  GO TOP

  II=1

  III=1

  DO WHIL .NOT.EOF()

  DO WHIL II<=30 &&每页打印个数

  REPL FY WITH ALLT(STR(III,2))

  IF .NOT.EOF()

  SKIP

  ENDI

  II=II+1

  ENDD

  II=1

  III=III+1 &&页码

  ENDD

  GO BOTTOM

  FYBOTTOM=VAL(FY) &&最后一页

  MI=0 &&序号初始值

  REPORT FORM FR NOEJECT NO CONSOLE PREVIEW

  (本方法在VFP各版本下均能运行,也适用于其他报表设计器。)