smartforms思考

    技术2022-05-11  13

    如有转载注明出处:http://blog.csdn.net/donkey2004112103/archive/2009/07/10/4337206.aspx

    这两天做了一个比较复杂的smartforms,做一个smartforms的步骤是什么了?有点自己的体会。我觉得按照下面的顺序做比较合理。

    1.设计接口

    做比较复杂的smartforms时,先把接口确定下来,到底传什么数据,需要什么数据弄清楚。那些数据时表,那些是结构。定义好结构,并且在smartforms中定义好接口,设计好框架。做的总账明细账就是一个典型的例子,总账明细账有点类似与faglb03,显示了科目的借方累计,贷方累计,余额,累计余额,还把改月份下的所有凭证都去取出来!就是双击faglb03条目后的效果。设计该接口的时候发现一个抬头可能对应多张纸,那么两个都是内表结构,而且在smartforms中是嵌套的循环。如图:

    2.写取数程序

    取数程序就是需求和接口道表中取相应的数据在整理下,最好把取数封装在function中,这样测试就非常方便,也是程序逻辑非常清晰。

    3.smartforms格式设计

    这部分整理好后,就可以打印预览让业务顾问测试了。如果没问题,传到qas让用户测试。

    4.问题汇总

    4.1 如果连打的话要在打印机中设置纸张类型

    4.2 打印时立即打印要选中。可以再代码中完成,如下:

    DATA: fm_name TYPE rs38l_fnam.       DATA: ctrl_param TYPE ssfctrlop,        out_option TYPE ssfcompop.        out_option-tdimmed = 'X'.   " Print Immediately (Print Parameters)

    CALL FUNCTION fm_name   EXPORTING     control_parameters = ctrl_param     output_options     = out_option     user_settings      = space     g_totallines       = l_lines     i_head             = u_gs_head     i_account          = u_gs_account   TABLES     t_account          = gt_account     t_items            = gt_list.

    其中设计接口应该是最重要的,设计好后,应该就胸有成竹了。


    最新回复(0)