admin 管理员组

文章数量: 1184232

【SAP

【被懒神训斥:好久没写代码的第二天】

确实好久没写了,因为现在的工作内容更多偏向于业务,不过想了想,代码是自己的根本,所以今天决定每天一更,把以前的笔记回顾

【SAMRTFORM】

业务前提:

在传统的SMARTFORM的开发过程中,当SMARTFORM激活成功之后,系统会自动生成一个函数

截图如下:

 缺点:

可以看到,如上截图,CALL FUNCTION的时候,系统自动生成的SMARTFORM函数的名称很难识别,如果遇到懒一点开发人员,不打注释,后面去找这个函数对应的SMARTFORM,会很烦躁,这个时候SSF_FUNCTION_MODULE_NAME的好处就体现出来了。

SSF_FUNCTION_MODULE_NAME好处:

方便后期运维,找问题简单点,而且可以写个函数/方法,后期直接调函数,把SMARTFORM的命名当作一个入参,这样所有的打印,都调用一个函数即可

使用方法如下

 DATA:fm_name1 TYPE rs38l_fnam,lt_print TYPE TABLE OF ztfico037,ls_print TYPE ztfico037.LOOP AT gt_data INTO gs_data.ls_print-jahrper = gs_data-jahrper .ls_print-werks   = gs_data-werks   .ls_print-cpname  = gs_data-cpname  .ls_print-wgshul  = gs_data-wgshul  .ls_print-danjia  = gs_data-danjia  .ls_print-chanzhi = gs_data-chanzhi .APPEND ls_print TO lt_print.CLEAR:ls_print,gs_data.ENDLOOP.*用函数调用SMARTFORMS的名称CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'EXPORTINGformname           = 'ZSFFICO037' "SAMRTFORMS的命名IMPORTINGfm_name            = fm_name1EXCEPTIONSno_form            = 1no_function_module = 2OTHERS             = 3.*调用打印数据函数CALL FUNCTION fm_name1TABLESgt_data = lt_print.IF sy-subrc <> 0.ENDIF.

本文标签: SAP