楼主,一般出现这种情况就是4楼所说的两种,你可以用排除法甄别。第一步:如8楼所言,把你的SELECT-SQL命令去掉INTO CURSOR子句后,在命令窗口单独运行一下,看看弹出的查询结果列表中是否有记录出现。如果没有记录,你就要把修改重心放在这条命令上,排除错误,使命令运行后出现正确的结果。第二步:在第一步能出正确结果的情况下,看看设置得对不对。据我的经验,你可以先对表格本身的外观进行一些设置,再设置表格列,最后设置表格的数据源,即:RecordSourceType=1,RecordSource=表文件名(用双引号括起)。
以下是我一个系统中的代码,供你参考:
PROCEDURE 院系修改单最多
**************
* 先创建查询 *
**************
SELECT 送交院系,COUNT(DISTINCT 编号) 修改单张数 ;
FROM 成绩修改单登记;
GROUP BY 送交院系;
INTO CURSOR T7
SELECT DISTINCT COUNT(T7B.送交院系)+1 排名,T7A.* ;
FROM T7 T7A ;
LEFT JOIN T7 T7B ON T7A.修改单张数<T7B.修改单张数;
GROUP BY T7A.送交院系,T7A.修改单张数;
ORDER BY 排名;
INTO CURSOR T_Papers
SELECT T_Papers
********************
* 再构建表格并显示 *
********************
WITH Main.全部功能.统计.排名表
.AllowHeaderSizing=.F. &&不允许调整表格标题行大小
.DeleteMark=.F. &&不显示删除标志列
.AllowCellSelection=.F. &&不能选择单个单元格,只能整行选择
.HeaderHeight=22 &&表格标题行高度设为22
.ColumnCount=3
WITH .Columns(1)
.Alignment=2 &&字段内容居中
.Width=30
.Header1.Caption="排名"
.Header1.Alignment=2
ENDWITH
WITH .Columns(2)
.Alignment=0 &&字段内容左对齐
.Width=150
.Header1.Caption="送交院系名称"
.Header1.Alignment=2
ENDWITH
WITH .Columns(3)
.Alignment=2
.Width=65
.Header1.Caption="修改单张数"
.Header1.Alignment=2
ENDWITH
.RecordSourceType=1
.RecordSource="T_Papers"
ENDWITH
RETURN
ENDPROC
以上代码正是按我刚刚所述的顺序写的,希望对你有用。