其实VFP报表运行起来也不是完全无法改变的. 如按打印纸的宽度设定每次可打印10列数据,可在页标头上放置相应的10个域控件("选择几年到几年"时应保证年度跨度<=10): Select 年度 From 表 Group By 年度 Into Array Asd Dime Asd (10,1) 第n个域控件的打印条件为Asd(n,1)=.t.,则页标头的域控件可根据有无该年度数据自动判断是否打印. 细节带也可类似自理.
给你提一个建议:将报表文件做成固定格式的,比如第00年,第02年,...,第09年(也就是说相对时间);而数据生成新表的时候,用 SELECT 编号,姓名,YEAR2000 AS 第00年,YEAR2001 AS 第01年,...,备注; FROM 表; WHERE ... ; GROUPY BY ...; INTO TABLE 新表 这样的命令(其中YEAR2000是你的表中关于2000年的字段,新表是生成的新表名,每次都取固定名);最后,用 SELECT 新表 REPORT FORM 报表 PREVIEW 这样的命令进行报表输出。 没有验证过,你可试试看。