转 Smartform步骤

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

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

1.设计接口

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

image

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.

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

posted @ 2014-03-01 22:06  qdxjmei  阅读(708)  评论(0编辑  收藏  举报