SAP smartforms批量打印问题

最近新做了一个smartforms打印的程序,但是打印有几个问题。

批量打印时

1、每次都会弹出对话框 需要点一下才会进行打印 ,这个应该是打印控制参数的问题

如果打印没有设置默认打印的 缺省输出设备也会弹出来 让选择设备。

总结如下

打印参数控制:

FORM USER_COMMAND USING RF_UCOMM    LIKE SY-UCOMM
      RS_SELFIELD TYPE SLIS_SELFIELD.                       "#EC CALLED
  DATA:  FM_NAME(30) TYPE C.             "期间,以便传入FORM模块
  DATA:  TMP_CONTROL_PARAMETERS TYPE SSFCTRLOP,
        JOB_OUTPUT_INFO TYPE SSFCRESCL,
         RTN_PARAMETERS TYPE SSFCRESOP.
  DATA: GAMENGE TYPE LTEXT.
  DATA:GTTAB LIKE ZSTRC_VOUCHER OCCURS 0 WITH HEADER LINE.

  DO 4 TIMES.
    APPEND INITIAL LINE TO GTTAB.
  ENDDO.

  TMP_CONTROL_PARAMETERS-NO_DIALOG = 'X'.
  TMP_CONTROL_PARAMETERS-NO_OPEN = SPACE.
  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      FORMNAME = 'ZFRM_PPORDER_TASK'
    IMPORTING
      FM_NAME  = FM_NAME.

  DATA TMP_SUM TYPE I VALUE 0.
  DESCRIBE TABLE I_ITAB LINES TMP_SUM.
  CASE RF_UCOMM.
    WHEN '&PRT'.
      LOOP AT I_ITAB.
"================================
        IF SY-TABIX = 1 .
          TMP_CONTROL_PARAMETERS-NO_OPEN = SPACE.
          IF TMP_SUM > 1.
            TMP_CONTROL_PARAMETERS-NO_CLOSE = 'X'.
          ELSE.
            TMP_CONTROL_PARAMETERS-NO_CLOSE = SPACE.
          ENDIF.
        ELSEIF sy-tabix =  TMP_SUM."最后一行
          TMP_CONTROL_PARAMETERS-NO_CLOSE = SPACE.
          TMP_CONTROL_PARAMETERS-NO_OPEN = 'X'.
        ELSE.  "中间行
          TMP_CONTROL_PARAMETERS-NO_OPEN = 'X'.
          TMP_CONTROL_PARAMETERS-NO_CLOSE = 'X'.
        ENDIF.
"================================
        SHIFT I_ITAB-AUFNR LEFT DELETING LEADING '0'.
        SHIFT I_ITAB-MATNR LEFT DELETING LEADING '0'.
        CLEAR GAMENGE.
        GAMENGE = I_ITAB-GAMNG.
        SHIFT GAMENGE RIGHT DELETING TRAILING '0'.
        SHIFT GAMENGE RIGHT DELETING TRAILING '.'.
        CONDENSE GAMENGE NO-GAPS.
        CALL FUNCTION FM_NAME       "'/1BCDWB/SF00000004'
        EXPORTING
          CONTROL_PARAMETERS         = TMP_CONTROL_PARAMETERS
          AUFNR                  = I_ITAB-AUFNR
          MATNR                     = I_ITAB-MATNR
          MAKTX                 = I_ITAB-MAKTX
          LADAT                  = I_ITAB-GLTRS
          BSTKD                     = I_ITAB-BSTKD
          LTEXT                 = I_ITAB-LTEXT
          GAMNG                     = GAMENGE
          WORKSHOPNAME                = I_ITAB-WORKSHOPNAME
        IMPORTING
          JOB_OUTPUT_OPTIONS         = RTN_PARAMETERS
          JOB_OUTPUT_INFO            = JOB_OUTPUT_INFO     "返回信息
        TABLES
          ITAB_VOUCHER                  = GTTAB
        EXCEPTIONS
          FORMATTING_ERROR           = 1
          INTERNAL_ERROR             = 2
          SEND_ERROR                 = 3
          USER_CANCELED              = 4
          OTHERS                     = 5.
      ENDLOOP.

  ENDCASE.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gavin_gxh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值