1、我的解决方法是在记录集中添加空记录(不进数据库),以下代码保证每页十行
    RDSCount = rst.RecordCount
    RDSWillAddCount = 9 - RDSCount Mod 10
    
                For i = 1 To RDSWillAddCount
                    rst.AddNew
                    If i = 1 Then
                        rst!商品名称 = "以下空白"
                    Else
                        rst!商品名称 = ""
                    End If
                next
2、可以在记录集中添加一个字段,用代码加入序号,连到报表;或者可以做一个视图

解决方案 »

  1.   

    谢谢gzqg(星野风流) ,
    1、我没搞懂报表细节里是如何循环出记录的,不知道你给的代码应该加在哪里?我加在datareport.show前,可好象还没运行到代码的地方,报表就显示了。
    2、记录集里不想加字段了,做个视图是什么意思?
      

  2.   

    第一个问题我也翘首以待,第二个问题可以在菜单insert->special field->record number field中解决.(用crystal report)
      

  3.   

    这两个问题都是某些中国式表格的特点,外国的报表工具一般不予考虑
    众合打表(原傻瓜打表)对这两个问题只需要设置两个属性即可(一个是添加空行到底,一个是添加页内行序号或所有纪录的序号)
    下载地址:
    http://www.csdn.net/cnshare/soft/13/13564.shtm
    http://www.uepoch.com/
    http://sgreport.yeah.net
      

  4.   

    gzqg(星野风流)的方法是要使用代码控制你的报表的记录。
    你先用他的那段代码判断你查出的数据生成的记录集。
    然后再把用这段代码整理过的记录集绑定到你的报表上。(记住一定要绑定整理后的那个记录集。)
      

  5.   

    我现在用的是VB的DATAREPORT工具,暂时不准备换别的工具,各位有没有针对它的方法。
      

  6.   

    太简单了,我用Printer对象就完全做到了,我的程序还可以实现套打功能。
    1。用一个文件记录总打印行数和序号
    2.循环读取记录
    3.如果从文件中得到的当前行数与每页行数的模为1即为第一行时打印空表和第一行。
    4.如果不为第一行则定位到相应位置打印数据和序号。
    5。向文件中记录打印完成后的总行数与序号。以上方案应该可解决你的问题咯