http://usevb.yeah.net
 报表数据源:
  记录集
  各种Grid(如选中多行,打印选中行,否则打印全部)
  记录集save方法的到的xml,mssql2000  for  xml查询得到的xml
  xmlDomdocument
  网页中的数据岛

解决方案 »

  1.   

    我不是要打印GRID,我要的是自由格式的报表,数据是参数传入的,没有后台数据库。比如有一个窗口填写完个人简历后,按打印就打出当前填写的数据,不作存储。如何解决?
      

  2.   

    你可以试试只用rptLabel控件,然后给它赋值!
    如:
      datareport1.Sections("rptHeader").Controls("lblPerson").Caption=...
      

  3.   

    同意楼上的!也可以:把窗口的数据赋值给adoRS
          set report.datasource=adors
          report.show
    好像麻烦点。呵呵
      

  4.   

    对呀,楼上的方法可以的,
    datareport的传递变量的方法比较麻烦。
    应该是先吧报表的格式设计好,就是排版呀,
    然后你在另一个窗体上填完数据后把相应的数据传到报表,传的方法就是
    datareport1.Sections("Section名称").Controls("控件名称").Caption=...
    如果你不跟数据库打交道这里就不能用RptTextBox控件了,而且 ".Caption"
    是自己写上去的,vb不会提示。其中"控件名称"是你所放置的RptLabel控件的名字
    Section名称是你放置" 控件 "的Section模块的名字默认情况是:Section1,Section2....等。。
      

  5.   

    还有,如果你只是打印的话,在一个窗体里排版好,然后直接打印就行了,何必要
    设计个报表。你在窗体里填完数据后,调用Form的 .PrintForm 直接打印窗体。。
    那不更直接,
      

  6.   

    用excle试试,做表,然后联入vb中使用字符串变量为用户输入附值