"
  crpt1.Connect = "provider=sqloledb;" _
      & "server=" & gServer _
      & ";initial catalog=" & gDatabase _
      & ";user id=" & gUsername _
      & ";password=" & gpassword
 这些代码最好在程序连接时使用,不要每次打印时连接数据库!
这样应该没问题了。

解决方案 »

  1.   

    报表连接..肯定要没次都要连接了..
     不然怎么办..我的意思是: 我的报表换了数据库就打不开了.为什么.
    (用odbc方式,没有问题.用ms sql serve方式建表.就不中了.为什么?)
      

  2.   

    你试一试"Dsn=你的服务器;;Uis=用户;Pwd=密码;Dsq=数据库"
      

  3.   

    我曾经出现过这样的问题,主要原因是,在 crytal 的菜单showSql中,去掉你所使用的数据库的名称就行了。
      

  4.   

    用我的打印类吧:http://progame.longcity.net/
      

  5.   

    ysb() : 我不想用dsn.它要配odbc. 比较烦
    csdncb(CSDNCAI) : 我动弃掉后.还是不行.报表可以打开.但数据不flash
      

  6.   

    你用的是6.0吧,这种方式的确很麻烦的,一旦换了数据库或服务器都会不行的,一定要解决的话就在本地建立与你SQL SERVER数据库关联的ACCESS数据库,然后你的报表就始终指向你本地的ACCESS数据库就可以了,其实用8.0的话就更好办了.