我在表单中按照我设计的报表打印当前的数据内容,但总是实现不了,请问为什么?

tryanggang 2003-08-18 11:00:50
我在表单中想打印当前的数据内容,但总是实现不了,请问为什么?以下是我写的CLICK的内容:
zm=allt(THISform.pageframe1.page1.txt变电站名.value)
dd=allt(THISform.pageframe1.page1.txt安装地点.value)
ee=allt(采样数据.变电站名)
ff=allt(采样数据.变电站名)
REPORT all FORM 盘表报表\采样数据a.frx for ee==zm .and.dd==ff NOEJECT NOCONSOLE TO PRINTER
...全文
89 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
byhdq 2003-08-18
  • 打赏
  • 举报
回复
如果不唯一,可先用set filt to 筛选
byhdq 2003-08-18
  • 打赏
  • 举报
回复
楼上的朋友言这有理,
不知道你查询的记录是否唯一,不过我想应该是唯一的,你可采用先查询,再把要打印的内容赋值给变量,再打印变量的方法.
loca for allt(采样数据.变电站名)==zm .and.allt(采样数据.变电站名)==dd
if found()
ff=...
gg=...
.
.
.
print(报表作相应修改,字段名改为相应的变量名)
else
messagebox(....)
endif
pecker 2003-08-18
  • 打赏
  • 举报
回复
你的条件写错了,按照你的写法,如果ee=zm并且dd=ff,则会把所有记录打出来,如果条件不符合,则一条也打不出。不会只打印一条出来。
正确的写法应该是:
zm=allt(THISform.pageframe1.page1.txt变电站名.value)
dd=allt(THISform.pageframe1.page1.txt安装地点.value)
REPORT all FORM 盘表报表\采样数据a.frx for allt(采样数据.变电站名)==zm .and.allt(采样数据.变电站名)==dd NOEJECT NOCONSOLE TO PRINTER



按你的意思,如果zm和ee都是"123",dd和ff都是"456"(即相等)
你的写法等同于:
REPORT all FORM 盘表报表\采样数据a.frx for "123"=="123" .and."456"=="456"
这个条件对all始终成立,会把所有记录打出来。
否则,一条也打不出。

我的表达能力不太好,你明白了吗?


fj_jiangqi 2003-08-18
  • 打赏
  • 举报
回复
在click里记录也许已经定位了。
REPORT all FORM 盘表报表\采样数据a.frx for ee==zm .and.dd==ff NOEJECT NOCONSOLE TO PRINTER
把all改成next 1不过这样只能打印一条记录,这种情况背后的条件似乎是多余的。
-------------------------
我流落在凄凉的世界里-孤苦伶仃
我过着动荡无助的生活-四处漂泊
tryanggang 2003-08-18
  • 打赏
  • 举报
回复
怎样定位,在报表里没有使用私有数据呀。
范围在我的CLICK中怎样改呀。请指教。另我的QQ是1397800。谢谢
fj_jiangqi 2003-08-18
  • 打赏
  • 举报
回复
记录要先定位,在报表里不可使用私有数据。
范围改为next 1
-------------------------
我流落在凄凉的世界里-孤苦伶仃
我过着动荡无助的生活-四处漂泊
tryanggang 2003-08-18
  • 打赏
  • 举报
回复
它是不打印记录,只是空打了一页张,无数据。
tryanggang 2003-08-18
  • 打赏
  • 举报
回复
我是想打印表单中当前显示的数据内容,如表单显示的是第九条记录,就按照我设计的报表打印第九条记录呀。请指教。
mgan 2003-08-18
  • 打赏
  • 举报
回复
不知道你哪个有没有错误提示
还是 只是打印不出来 啊
如果只是看你的代码 好象没有错误啊

2,722

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧