请教打印的问题(100分)

  • 主题发起人 主题发起人 joshua
  • 开始时间 开始时间
J

joshua

Unregistered / Unconfirmed
GUEST, unregistred user!
打印凭证:如何实现把通过条件筛选的凭证连续打印出来?我用DBGridEh做凭证的列表,用quickrep来打印凭证
 
试试在onNeedData里加事件.
 
什么意思?
先Filter过滤然后再打印不行吗?
而且跟DBGridEh一起的带有一个printdbgrideh可以直接打印了
 
to 飞扬清风:添加什么事件?凭证的打印格式我是设好了,如何让多张凭证自动套用这个格式,并打印预览?多谢
 
如果打印格式是设好的,也就是说报表上的dbedit的位置是固定的。
那每次打印时给每个dbedit指定数据记得字段就可以了
 
我理解的是:
打印的格式放在detail里面,打印的内容用Qrlabel来显示.从记录首条到尾条进行判断.如果符合打印的条件,在OnNeedData里面赋值,否则,不要赋值.可以直接进行预览,预览或打印时都会用到OnNeedData事件.
我的理解就是这些,不知道对不对,[:)].
 
是这样,比如一张凭证是一张纸,我通过筛选得到两张凭证,要一起打印,如何在第一张凭证后自动把第二张凭证预览打印出来?
 
请大家帮忙!
我在QUICKREP的BeforePrint事件中添加代码:
while not (adoquery1.Eof)do
begin
qrlabel1.caption:=adoquery1.fieldbyname('fitemid').asstring;
qrlabel2.Caption:=adoquery1.fieldbyname('fitemclassid').asstring;
...
adoquery1.next;
end;
打印预览时,还是只有一页,所有qrlabel中显示的都是最后一条记录的内容。
我现在想实现的功能就是怎样自动分页,每页上显示的是一条记录的内容。
感谢大家帮忙!
 
谁能帮帮我啊!
 
我要用quickreport打印固定格式的表格,一个表格分在两张A4纸上打印,一个表格是一条记录,我在quickreport上放了一个DETAIL BAND,并把DETAIL BAND的长度设为两张A4纸的长,又在DETAIL BAND上画了格子和放了一些qrlabel,可是在预览时只能看到一半的内容,即预览时只显示一页,第一页可以看到,超过第一页长度的内容无法自动显示第二页?
请高手帮忙!感谢
 
设置quickrep的dataset为打印的数据集,把detailband设置到最高
然后onneeddata 里写:
qrlabel1.caption:=adoquery1.fieldbyname('fitemid').asstring;
qrlabel2.Caption:=adoquery1.fieldbyname('fitemclassid').asstring;
moredata:=not adoquery1.Eof;
应该可以了
 
可是当DETAIL BAND超过一张A4纸的高度时,超过的部分不能预览,为什么?
 
超过的部分不能预览??
???????????
是超过了纸张的长度了么???
 
超过一张A4纸得长度,就预览不到!
 
那你为什么要超过它呢?
跟纸张长度一样就行啊
 
因为我得一条记录内容多,要两页纸才能放下
 
哦——你是一条记录打印两页????
 
请指点,我急啊
 
你第一页打印什么东西,确定吗???
比如说打印前10列,然后第二页打印后10列——————
 
后退
顶部