




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Smartform导出为 PDF 并且作为附件进行邮件发送1 、首先获取 Smartform 生成的功能函数,CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'EXPORTINGformname= c_formnameIMPORTINGfm_name= v_fm_nameEXCEPTIONSno_formno_function_module = 2OTHERS= 3.2 、调用该函数并且在参数中设定获取 OTF 数据st_control_parameters-no_dialog = 'X'.st_control_parameters
2、-getotf = 'X'.CALL FUNCTION v_fm_nameEXPORTINGcontrol_parameters= st_control_parametersoutput_options= st_output_optionserr_max_linewidth= 1IMPORTINGdocument_output_info = st_document_output_infojob_output_options= st_job_output_optionsTABLESpt_data= gt_dataEXCEPTIONSformatting_errorinternal
3、_errorsend_erroruser_canceledOTHERS= 5.3 、将 OTF 数据转换成PDF 文件CALL FUNCTION 'CONVERT_OTF'EXPORTINGformat= 'PDF'IMPORTINGbin_filesize= v_bin_filesizebin_file= g_binfileTABLESotf= st_job_output_info-otfdatadoctab_archive= it_docslines= it_linesEXCEPTIONSerr_format= 2err_conv_not_possible
4、= 3 err_bad_otf= 5.OTHERSIF g_binfile IS NOT INITIAL.CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'EXPORTINGbuffer= g_binfileIMPORTINGoutput_length = v_bin_filesizeTABLESbinary_tab= gt_record.ENDIF.4、处理邮件主题,附件,收件人,发件人(默认会是登陆用户配置的邮箱)APPEND LINES OF GT_record TO i_objbin.*Mail Body i_objtxt-line =
5、9; 邮件正文 '.APPEND i_objtxt.DESCRIBE TABLE i_objtxt LINES v_lines_txt.wa_doc-obj_langu = SY-LANGU.wa_doc-obj_name = 'smartform'.wa_doc-expiry_dat = sy-datum + 10.wa_doc-obj_descr = ' 邮件标题题题题题题题题题 '.wa_doc-sensitivty = 'F'.wa_doc-doc_size = v_lines_txt * 255 + v_bin_filesize
6、.* Main TextCLEAR i_objpack-transf_bin.i_objpack-head_start = 1.i_objpack-head_num = 0.i_objpack-body_start = 1.i_objpack-body_num = v_lines_txt.i_objpack-doc_type = 'RAW'.APPEND i_objpack.* Attachment (pdf-Attachment)CLEAR v_lines_bin.i_objpack-transf_bin = 'X'.i_objpack-head_start
7、= 1.i_objpack-head_num = 1.i_objpack-body_start = 1.i_objpack-doc_size = v_bin_filesize .i_objpack-body_num = v_lines_bin.DESCRIBE TABLE i_objbin LINES v_lines_bin.i_objpack-doc_type = 'PDF'.i_objpack-obj_name = 'smart'.i_objpack-obj_descr = 'PDF'.”这里是附件名APPEND i_objpack.CLEA
8、R i_reclist.i_reclist-rec_type = 'U'.i_reclist-receiver = 'xxx'.收件人地址APPEND i_reclist.5、调用发送邮件的函数CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'EXPORTINGdocument_data= wa_docput_in_outboxcommit_work= 'X'TABLESpacking_list= i_objpackreceivers= i_reclistobject_header= wa_
9、objhead= i_objbin= i_objtxtcontents_bincontents_txtEXCEPTIONStoo_many_receiversdocument_not_sentdocument_type_not_existoperation_no_authorization = 4parameter_errorx_errorenqueue_error= 8.OTHERS 邮件发送后可在 sost 中查看到、 6 、如果需要保存 PDF 到本地GET THE FILE NAME TO STORE*CONCATENATE 'smrt' '.pdf'
10、INTO v_name.*CREATE OBJECT v_guiobj.*CALL METHOD v_guiobj->file_save_dialogEXPORTINGdefault_extension = 'pdf'default_file_name = v_namefile_filter= v_filterCHANGINGfilename= v_namepath= v_pathfullpath= v_fullpathuser_action= v_uact.*IF v_uact = v_guiobj->action_cancel.EXIT.*ENDIF.*DOWN
11、LOAD AS FILE*MOVE v_fullpath TO v_filename.*CALL FUNCTION 'GUI_DOWNLOAD'EXPORTINGbin_filesize= v_bin_filesizefilename= v_filenamefiletype= 'BIN'TABLESdata_tab= it_linesEXCEPTIONSfile_write_errorno_batchgui_refuse_filetransfer = 3invalid_typeno_authorityunknown_errorheader_not_allowed
12、separator_not_allowed= 8filesize_not_allowedheader_too_long= 10dp_error_create= 11dp_error_send= 12dp_error_write= 13unknown_dp_error= 14access_denied= 15dp_out_of_memory= 16disk_full= 17dp_timeout= 18file_not_found= 19dataprovider_exception= 20control_flush_error= 21OTHERS= 22.完整代码请见下面:*&*&
13、 Report ZTEST_MAIL3*&*& *&*&*&-REPORT ztest_mail3TYPES:BEGIN OF ty_data.TYPES:matkl TYPE mara-matkl,wgbez TYPE t023t-wgbez,matnr TYPE mara-matnr,maktx TYPE makt-maktx,ebeln TYPE ekko-ebeln,ebelp TYPE ekpo-ebelp,ekgrp TYPE ekko-ekgrp,bukrs TYPE ekko-bukrs,werks TYPE ekpo-werks,nor
14、mt TYPE mara-normt,groes TYPE mara-groes,kdatb TYPE ekko-kdatb,kdate TYPE ekko-kdate,jiaohuo(30),waibu(30),*增加物料基本单位,订单单位DATA:gt_data TYPE TABLE OF ty_data WITH HEADER LINE.meins(3),bstme(3),*BO C2014080601增加车间和生产线labor_t(30),spart_t(20),*EO C2014080601增加车间和生产线*BO C2014082101增加物料长文本 ,规格型号,供应商描述,采购订单
15、文beizhu(100),zeinr(22),lifnr_d(35),caigou(100),*EO C2014082101增加车间和生产线END OF ty_data.DATA:g_binfile TYPE xstring,gt_record TYPE TABLE OF solisti1 WITH HEADER LINE.* Internal table declarationDATA: it_otfTYPE STANDARD TABLE OF itcoo,it_docsTYPE STANDARD TABLE OF docs,it_linesTYPE STANDARD TABLE OF tl
16、ine WITH HEADER LINE.* Declaration of local variables.DATA:v_fullpathTYPE string,v_filterTYPE string,v_uactTYPE i,st_job_output_infoTYPE ssfcrescl,st_document_output_infoTYPE ssfcrespd,st_job_output_optionsTYPE ssfcresop,st_output_optionsTYPE ssfcompop,st_control_parametersTYPE ssfctrlop,v_len_inv_l
17、anguageTYPE sflangu VALUE 'E',v_e_devtypeTYPE rspoptype,v_bin_filesizeTYPE i,v_nameTYPE string,v_pathTYPE string,TYPE so_obj_len,v_filenameTYPE string,v_fm_nameTYPE rs38l_fnam.CONSTANTS c_formnameTYPE tdsfname VALUE'ZPVNP21_CN01'.DATA wa_buffer TYPE string. "To convert from 132
18、to 255DATA: i_record TYPE TABLE OF solisti1 WITH HEADER LINE,wa_doc TYPE sodocchgi1, i_reclist TYPE TABLE OF somlreci1 WITH HEADER LINE,* Objects to send mail.i_objpack TYPE TABLE OF sopcklsti1 WITH HEADER LINE,i_objtxt TYPE TABLE OF solisti1 WITH HEADER LINE,i_objbin TYPE TABLE OF solisti1 WITH HEA
19、DER LINE,* Work Area declarationswa_objhead TYPE soli_tab,* Variables declarationsv_lines_bin TYPE i.CALL FUNCTION 'SSF_GET_DEVICE_TYPE'EXPORTINGi_language= v_languagei_application = 'SAPDEFAULT'IMPORTINGe_devtype= v_e_devtype.st_output_options-tdprinter = v_e_devtype.st_control_para
20、meters-no_dialog = 'X'.st_control_parameters-getotf = 'X'.GET SMARTFORM FUNCTION MODULE NAMECALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'EXPORTINGformname= c_formnameIMPORTINGfm_name= v_fm_nameEXCEPTIONSno_formno_function_module = 2OTHERS= 3.CALL SMARTFORMCALL FUNCTION v_fm_nameEX
21、PORTINGcontrol_parameters= st_control_parametersoutput_options= st_output_optionsIMPORTINGdocument_output_info = st_document_output_infojob_output_info= st_job_output_infojob_output_options= st_job_output_optionsTABLESpt_data= gt_dataEXCEPTIONSformatting_errorinternal_errorsend_erroruser_canceledOTH
22、ERS= 5.CONVERT TO OTF TO PDFCALL FUNCTION 'CONVERT_OTF'EXPORTINGformat= 'PDF'IMPORTINGbin_file= g_binfilebin_filesize= v_bin_filesizeTABLESotf= st_job_output_info-otfdatadoctab_archive= it_docslines= it_linesEXCEPTIONSerr_max_linewidth err_format err_conv_not_possible = 3 err_bad_otf
23、= 5.OTHERSIF g_binfile IS NOT INITIAL.CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'EXPORTINGbuffer= g_binfileIMPORTINGoutput_length = v_bin_filesizeTABLESbinary_tab= gt_record.ENDIF.APPEND LINES OF GT_record TO i_objbin.*Mail Body i_objtxt-line = ' 邮件正文 '.APPEND i_objtxt.DESCRIBE TABLE i_ob
24、jtxt LINES v_lines_txt.wa_doc-obj_langu = SY-LANGU.wa_doc-obj_name = 'smartform'.wa_doc-expiry_dat = sy-datum + 10.wa_doc-obj_descr = ' 邮件标题 '.wa_doc-sensitivty = 'F'.wa_doc-doc_size = v_lines_txt Main TextCLEAR i_objpack-transf_bin.i_objpack-head_start = 1.i_objpack-head_num
25、 = 0.i_objpack-body_start = 1.i_objpack-body_num = v_lines_txt.i_objpack-doc_type = 'RAW'.APPEND i_objpack. 255 + v_bin_filesize.* Attachment (pdf-Attachment)CLEAR v_lines_bin.i_objpack-transf_bin = 'X'.i_objpack-head_start = 1.i_objpack-head_num = 1.i_objpack-body_start = 1.DESCRIBE
26、 TABLE i_objbin LINES v_lines_bin.i_objpack-doc_size = v_bin_filesize .i_objpack-body_num = v_lines_bin.i_objpack-doc_type = 'PDF'.i_objpack-obj_name = 'smart'.i_objpack-obj_descr = 'PDF'.APPEND i_objpack.CLEAR i_reclist.i_reclist-rec_type = 'U'.i_reclist-to_answer =
27、'X'.i_reclist-notif_read = 'X'.i_reclist-notif_del = 'X'.i_reclist-notif_ndel = 'X'.i_reclist-receiver = 'xxx'.APPEND i_reclist.CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'EXPORTINGdocument_data= wa_docput_in_outboxcommit_work= 'X'TABLESpackin
28、g_list= i_objpackobject_header= wa_objheadcontents_bin= i_objbincontents_txt= i_objtxtreceivers= i_reclistEXCEPTIONStoo_many_receiversdocument_not_sentdocument_type_not_existoperation_no_authorization = 4parameter_errorx_errorenqueue_errorOTHERS= 8.IF sy-subrc = 0.*start SAPconnect process immediatelySUBMIT rsconn01 WITH mode EQ 'INT' AND RETURN.COMMIT WORK.ENDIF.GET THE FILE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深信服aES产品技术白皮书-V1.5
- 3.3汽化和液化 说课稿2025年初中人教版物理八年级上册
- 我奋斗我幸福心得体会
- 积极心理学理论下护理在细菌性阴道炎患者中的应用
- 《会计信息系统应用》课件 学习情境5 薪资管理系统应用
- 餐厨垃圾收运合作协议书
- 二零二五图书仓储与仓储物流信息化合同样本
- 二零二五年度办公大楼自来水供应与智能抄表服务合同
- 健康饮食规划实践指南
- 三农村资源利用优化方案设计
- 烟草职业鉴定三级技能考点
- 2024年江西应用工程职业学院单招职业技能测试题库标准卷
- 希望之星小学组小低组评委问答、即兴问答环节答题技巧及全部题库
- 幼儿园春季传染病预防知识课件
- GB/T 11067.1-2006银化学分析方法银量的测定氯化银沉淀-火焰原子吸收光谱法
- GA 857-2009货物运输微剂量X射线安全检查设备通用技术要求
- 学校食堂食品安全自查自评表
- 管道防腐检验批质量验收记录
- 出口商业发票范本
- (本科)东南亚经济与贸易全套教学课件完整版PPT
- 《村级财务管理培训》PPT课件
评论
0/150
提交评论