楼主: heart_smile

请教怎么样去掉在SMARTFORMS中打印预览页面中的“打印”按钮呢?

[复制链接]
论坛徽章:
20
生肖徽章2007版:龙
日期:2008-10-25 19:36:50
11#
发表于 2008-10-20 11:25 | 只看该作者
你的需求不是只可以预览吗?如果可以打印,那为什么还要把预览界面的打印按钮隐藏。

[ 本帖最后由 sapr 于 2008-10-20 11:27 编辑 ]

使用道具 举报

回复
论坛徽章:
15
ERP板块每日发贴之星
日期:2007-12-27 01:05:25ITPUB元老
日期:2011-12-20 12:35:29ITPUB十周年纪念徽章
日期:2011-11-01 16:23:262011新春纪念徽章
日期:2011-02-18 11:42:472010新春纪念徽章
日期:2010-01-04 08:33:082009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28授权会员
日期:2008-02-29 09:14:50生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53
12#
 楼主| 发表于 2008-10-20 12:13 | 只看该作者
原帖由 sapr 于 2008-10-20 11:25 发表
你的需求不是只可以预览吗?如果可以打印,那为什么还要把预览界面的打印按钮隐藏。


因为这个凭证打印要求把流水号保存到起来,我的做法就是在真正打印的时候才把流水号保存起来,在打印预览的时候,没有保存过的凭证号,所对应的流水号是不显示出来的,如果在打印预览界面中直接打印,流水号就不能保存起来了。所以想办法把打印预览界面中打印按钮去掉。

使用道具 举报

回复
论坛徽章:
20
生肖徽章2007版:龙
日期:2008-10-25 19:36:50
13#
发表于 2008-10-20 13:26 | 只看该作者
原帖由 heart_smile 于 2008-10-20 12:13 发表


因为这个凭证打印要求把流水号保存到起来,我的做法就是在真正打印的时候才把流水号保存起来,在打印预览的时候,没有保存过的凭证号,所对应的流水号是不显示出来的,如果在打印预览界面中直接打印,流水号就不能保存起来了。所以想办法把打印预览界面中打印按钮去掉。


流水号是打印的假脱机请求吗?
打印的假脱机可以通过返回的JOB_OUTPUT_INFO_SPOOLIDS里的SPOOLIDS取得,然后就可以保存。如果只是预览,没有按打印按钮,SPOOLIDS的返回值是空的。

[ 本帖最后由 sapr 于 2008-10-20 13:27 编辑 ]

使用道具 举报

回复
论坛徽章:
15
ERP板块每日发贴之星
日期:2007-12-27 01:05:25ITPUB元老
日期:2011-12-20 12:35:29ITPUB十周年纪念徽章
日期:2011-11-01 16:23:262011新春纪念徽章
日期:2011-02-18 11:42:472010新春纪念徽章
日期:2010-01-04 08:33:082009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28授权会员
日期:2008-02-29 09:14:50生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53
14#
 楼主| 发表于 2008-10-20 15:00 | 只看该作者
原帖由 sapr 于 2008-10-20 13:26 发表


流水号是打印的假脱机请求吗?
打印的假脱机可以通过返回的JOB_OUTPUT_INFO_SPOOLIDS里的SPOOLIDS取得,然后就可以保存。如果只是预览,没有按打印按钮,SPOOLIDS的返回值是空的。



如果是在打印预览界面打印,是在假脱机请求是生成。

JOB_OUTPUT_INFO_SPOOLIDS 这个类在SMARTFORMS中没有呢?

使用道具 举报

回复
论坛徽章:
20
生肖徽章2007版:龙
日期:2008-10-25 19:36:50
15#
发表于 2008-10-20 15:54 | 只看该作者
原帖由 heart_smile 于 2008-10-20 15:00 发表



如果是在打印预览界面打印,是在假脱机请求是生成。

JOB_OUTPUT_INFO_SPOOLIDS 这个类在SMARTFORMS中没有呢?


'JOB_OUTPUT_INFO_SPOOLIDS ' 打错了,应该是'JOB_OUTPUT_INFO-SPOOLIDS '.

DATA : output_options TYPE SSFCOMPOP,
          JOB_OUTPUT_INFO type SSFCRESCL,
          RSPOID TYPE RSPOID.

*output_options-TDNOPRINT = 'X'.



*调用smart form
CALL FUNCTION  fm_name
  EXPORTING
...
   OUTPUT_OPTIONS             = output_options
...

IMPORTING
   JOB_OUTPUT_INFO            = JOB_OUTPUT_INFO
...


*调用smart form完成后,取得返回值JOB_OUTPUT_INFO,就可以通过JOB_OUTPUT_INFO-SPOOLIDS是不是为空来判断有没有打印
IF JOB_OUTPUT_INFO-SPOOLIDS IS NOT INITIAL.
  READ TABLE JOB_OUTPUT_INFO-SPOOLIDS INDEX 1 INTO RSPOID.
*保存RSPOID操作
ENDIF.

[ 本帖最后由 sapr 于 2008-10-20 15:59 编辑 ]

使用道具 举报

回复
论坛徽章:
15
ERP板块每日发贴之星
日期:2007-12-27 01:05:25ITPUB元老
日期:2011-12-20 12:35:29ITPUB十周年纪念徽章
日期:2011-11-01 16:23:262011新春纪念徽章
日期:2011-02-18 11:42:472010新春纪念徽章
日期:2010-01-04 08:33:082009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28授权会员
日期:2008-02-29 09:14:50生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53
16#
 楼主| 发表于 2008-10-20 17:48 | 只看该作者
原帖由 sapr 于 2008-10-20 15:54 发表


'JOB_OUTPUT_INFO_SPOOLIDS ' 打错了,应该是'JOB_OUTPUT_INFO-SPOOLIDS '.

DATA : output_options TYPE SSFCOMPOP,
          JOB_OUTPUT_INFO type SSFCRESCL,
          RSPOID TYPE RSPOID.

*output_options-TDNOPRINT = 'X'.



*调用smart form
CALL FUNCTION  fm_name
  EXPORTING
...
   OUTPUT_OPTIONS             = output_options
...

IMPORTING
   JOB_OUTPUT_INFO            = JOB_OUTPUT_INFO
...


*调用smart form完成后,取得返回值JOB_OUTPUT_INFO,就可以通过JOB_OUTPUT_INFO-SPOOLIDS是不是为空来判断有没有打印
IF JOB_OUTPUT_INFO-SPOOLIDS IS NOT INITIAL.
  READ TABLE JOB_OUTPUT_INFO-SPOOLIDS INDEX 1 INTO RSPOID.
*保存RSPOID操作
ENDIF.




不好意思。
IF JOB_OUTPUT_INFO-SPOOLIDS IS NOT INITIAL.
  READ TABLE JOB_OUTPUT_INFO-SPOOLIDS INDEX 1 INTO RSPOID.
ENDIF。

在程序代码中读取不到。

我放在SMARTFORMS中,这个表是空的,进入打印预览后,再按打印按钮,生成假脱机,是读取不到假脱机内容的。

使用道具 举报

回复
论坛徽章:
20
生肖徽章2007版:龙
日期:2008-10-25 19:36:50
17#
发表于 2008-10-21 08:30 | 只看该作者
原帖由 heart_smile 于 2008-10-20 17:48 发表




不好意思。
IF JOB_OUTPUT_INFO-SPOOLIDS IS NOT INITIAL.
  READ TABLE JOB_OUTPUT_INFO-SPOOLIDS INDEX 1 INTO RSPOID.
ENDIF。

在程序代码中读取不到。

我放在SMARTFORMS中,这个表是空的,进入打印预览后,再按打印按钮,生成假脱机,是读取不到假脱机内容的。


放在smart form里应该是不行的吧, JOB_OUTPUT_INFO是smart form这一个生成的function module的返回值,应该是在function module执行完成时被填充的。放在SMARTFORMS中,那得放在JOB_OUTPUT_INFO被填充后的代码中。
下图是我调试程序(打印完成后,按退出back按钮的时候):




[ 本帖最后由 sapr 于 2008-10-21 08:33 编辑 ]

使用道具 举报

回复
论坛徽章:
16
2008新春纪念徽章
日期:2008-02-13 12:43:03ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:192012新春纪念徽章
日期:2012-01-04 11:54:26指数菠菜纪念章
日期:2011-01-04 13:28:452011新春纪念徽章
日期:2011-01-04 10:37:10股神
日期:2010-10-08 10:09:26ITPUB9周年纪念徽章
日期:2010-10-08 09:32:272010新春纪念徽章
日期:2010-03-01 11:20:532008新春纪念徽章
日期:2008-02-13 12:43:032013年新春福章
日期:2013-02-25 14:51:24
18#
发表于 2008-10-21 08:33 | 只看该作者
学习。。。

使用道具 举报

回复
论坛徽章:
15
ERP板块每日发贴之星
日期:2007-12-27 01:05:25ITPUB元老
日期:2011-12-20 12:35:29ITPUB十周年纪念徽章
日期:2011-11-01 16:23:262011新春纪念徽章
日期:2011-02-18 11:42:472010新春纪念徽章
日期:2010-01-04 08:33:082009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28授权会员
日期:2008-02-29 09:14:50生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53
19#
 楼主| 发表于 2008-10-21 09:27 | 只看该作者
原帖由 sapr 于 2008-10-21 08:30 发表


放在smart form里应该是不行的吧, JOB_OUTPUT_INFO是smart form这一个生成的function module的返回值,应该是在function module执行完成时被填充的。放在SMARTFORMS中,那得放在JOB_OUTPUT_INFO被填充后的代码中。
下图是我调试程序(打印完成后,按退出back按钮的时候):
561333

561334



打印完成后,按退出back按钮的时候,是取到返回值。原以为按打印就可以取到值了。
不过这处做法是有点问题,就怕他强行退出。



用户要求不能跳号
其实我上面的做法做错了,我可以在调用SMARTFORMS之前就把流水号保存到表中去了。
这样打印还是打印预览都是正确的了,也不怕他强行退出了。


[ 本帖最后由 heart_smile 于 2008-10-21 10:19 编辑 ]

使用道具 举报

回复
论坛徽章:
20
生肖徽章2007版:龙
日期:2008-10-25 19:36:50
20#
发表于 2008-10-21 11:33 | 只看该作者
原帖由 heart_smile 于 2008-10-21 09:27 发表



打印完成后,按退出back按钮的时候,是取到返回值。原以为按打印就可以取到值了。
不过这处做法是有点问题,就怕他强行退出。



用户要求不能跳号
其实我上面的做法做错了,我可以在调用SMARTFORMS之前就把流水号保存到表中去了。
这样打印还是打印预览都是正确的了,也不怕他强行退出了。


'调用SMARTFORMS之前就把流水号保存到表中去'是用什么函数取得流水号啊?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表