| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 407 人关注过本帖
标题:循环打印问题
只看楼主 加入收藏
cspy520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-6-22
结帖率:0
  已结贴   问题点数:20  回复次数:6   
循环打印问题
每更新一次表的记录,就打印一次表的记录。
问题来了:预览报表再打印,没问题。如直接打印,只能打印循环打印第一次更新记录的报表,后面更新的表都无法打印出来。我用for 循环打印。
是不是没有清除打印环境?谢谢!!
2018-02-14 02:58
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:151
帖 子:6033
专家分:26356
注 册:2014-5-20
  得分:10 
给相关文件看看
2018-02-14 05:27
wengjl
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:57
帖 子:1338
专家分:2511
注 册:2007-4-27
  得分:10 
是不是依据A表控制循环,从B表里提取符合A表中的那些数据到C表(报表的数据源)进行打印。是这样吗?

只求每天有一丁点儿的进步就可以了
2018-02-14 10:27
wengjl
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:57
帖 子:1338
专家分:2511
注 册:2007-4-27
  得分:0 
如果是,不断地预览后点打印,循环是正常的。而不预览,想一次性全部打印完成,一不小心,就只打印符合A表首个条件的那些,就结束了。

这是因为:预览后点打印,A表循环是与打印同步的。不预览打印全部,A表循环的指针与打印不同步了,会快速走到表尾了,也就只是打印一份就结束了。

解决办法是:加一个指针定位的语句。

只求每天有一丁点儿的进步就可以了
2018-02-14 10:33
wengjl
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:57
帖 子:1338
专家分:2511
注 册:2007-4-27
  得分:0 
我在N年前遇到这个问题,在拜访了专家后得到解决,得到鱼和渔。所以今天能回答楼主的问题。

你今天发些数据和代码上来,有时间帮你解决。过了今天要年后上班了,凑时间帮你

只求每天有一丁点儿的进步就可以了
2018-02-14 10:39
cspy520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-6-22
  得分:0 
以下代码很简单
SELECT 2
Set Printer To Getprinter()
FOR  n=VAL(qsyf) TO VAL(zzyf)   
  IF qsyf="1" or qsyf="3"  THEN  &&*******************
     replace pb.riqi29 with "29"
  ENDIF

  IF qsyf="4" or qsyf="6"  THEN  &&*******************
     replace pb.riqi30 with "30"  
  ENDIF
&&report form rp.frx Noconsole to printer Prompt Preview0
Report Form rp.frx Noconsole To PRINTER
 
ENDFOR

***********************************
问题如下:用Report Form rp.frx Noconsole To PRINTER语句,预览正常,但是一点打印按钮,无论如何循环,都是只能打印第一个页面信息。
         
2018-05-16 23:03
cspy520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-6-22
  得分:0 
报表的数据源是pb表
2018-05-16 23:10







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029382 second(s), 9 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved