将SMSARTFORMS 以PDF的方式用邮件发出去_SAP刘梦_新浪博客

有时候不需要打印smartforms,而是以pdf格式发邮件发过去,下面是部分代码

REPORT  zlm_cvrt_smart_to_pdf_mail .

"控制变量
DATA  fm_name              TYPE rs38l_fnam .
DATA : control_parameters   TYPE ssfctrlop ,
      l_output_options     TYPE ssfcompop .

DATA job_output_info       TYPE ssfcrescl .
DATA job_output_options    TYPE ssfcresop .

*--------------------------------------------------------------------*
"转OTF
DATA : gt_otf       LIKE  TABLE  OF itcoo     WITH  HEADER  LINE ,
      gt_pdf_line  LIKE  TABLE  OF tline     WITH  HEADER  LINE ,
      gt_record    LIKE  TABLE  OF solisti1  WITH  HEADER  LINE .
DATA: g_len_in TYPE i,                                                 "OTF 文件大小(邮件附件大小)
      g_lines_txt TYPE i,                                              "邮件文本行数
      g_lines_bin TYPE i.                                              "邮件附件行数
DATA: g_benfile   TYPE xstring.                                        "二进制格式的邮件
DATA: g_object(50) TYPE c.                                             "邮件主题

DATA pdf_name     TYPE string.                                         "附件名称

DATA: gt_objpack  LIKE TABLE OF sopcklsti1   WITH HEADER LINE,         "邮件内容 正文+附件
      gt_objtxt   LIKE TABLE OF solisti1     WITH HEADER LINE,         "正文内容
      gt_objbin   LIKE TABLE OF solisti1     WITH HEADER LINE,         "附件内容
      gt_reclist  LIKE TABLE OF somlreci1    WITH HEADER LINE,         "收件人
      wa_doc_chng TYPE sodocchgi1.                                     "邮件属性

*--------------------------------------------------------------------*
"选择屏幕
PARAMETERS :
            p_email  TYPE so_recname OBLIGATORY  DEFAULT  'LIUMENG@…….com' . 

*--------------------------------------------------------------------*
START-OF-SELECTION.
  CLEAR: job_output_options,
         job_output_info,
         g_len_in,
         g_lines_txt,
         g_lines_bin,
         g_benfile.
  CLEAR  : gt_otf[], gt_pdf_line[],gt_record[].

  "控制变量赋值
  control_parameters-getotf    = 'X'.   "此参数必须,否则不会导出PDF而直接显示smartform
  control_parameters-no_close  = ''.
  control_parameters-no_dialog = 'X'.   "不显示打印对话框

  "输出参数设置
  l_output_options-tddest      = 'ZLM_PL'. "选择打印设备,可选
  l_output_options-xsfoutdev   = 'ZLM_PL'. "选择打印设备,可选
  l_output_options-tdprinter   = 'CNSAPWIN'.


CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      formname           = 'ZLM_SMTFM'
    IMPORTING
      fm_name            = fm_name
    EXCEPTIONS
      no_form            = 1
      no_function_module = 2
      OTHERS             = 3.

  CHECK: sy-subrc = 0.
  CALL FUNCTION fm_name
    EXPORTING
      control_parameters = control_parameters
      output_options     = l_output_options      "默认打印选项设置传输
*     user_settings      = 'X'                   "是否从用户主记录中获取信息
      i_acct_head        = l_acct_head
    IMPORTING
      job_output_info    = job_output_info
      job_output_options = job_output_options
    TABLES
      it_acct_item       = lt_acct_item
    EXCEPTIONS
      formatting_error   = 1
     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[2\]:前几天用到HR模块的一个函数:HR_INFOTYPE_OPERATION。这个函数是用来操作HR信息类型的。在调用这个函数之前,需要先加锁,然后调用HR_INFOTYPE_OPERATION函数进行操作,最后再解锁。\[2\]根据参数OPERATION的不同取值,可以实现不同的操作,比如创建、修改、删除等。其中,主要的取值有INS、INSS和MOD。\[2\]INS表示创建一个新的记录,即使系统中已经存在相同类型的记录。INSS表示创建一个新的记录,如果系统中已经存在相同类型的记录,则将其转换为修改操作。MOD表示修改已存在的记录。\[3\]根据你的需求,你可以查找类似的BAPI函数来实现相同的功能。 #### 引用[.reference_title] - *1* [SAP 函数HR_INFOTYPE_OPERATION报错](https://blog.csdn.net/ptpassword/article/details/131400421)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [HR_INFOTYPE_OPERATION_SAP刘梦_新浪博客](https://blog.csdn.net/senlinmu110/article/details/109652316)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值