zoukankan      html  css  js  c++  java
  • SMARTFORMS的调用方法(作者:曹玉平)

      想要在ABAP程序中调用SMARTFORMS,要用到两个模块。其中第一个模块是用来获

    得第二个模块的名称。第二个功能模块是才是SMARTFORM,但在ABAP调用先激活它,

    否则是无法调用的。

    具体流程是:

    1.在Form Builder中,选择Environment----->Function module Name of the function module.,记下该模块的名称,可以用CTRL +Y 和CTRL+C 功能键的组合拷贝。

    2.然后在声明一个rs381_fnam的变量fm_name,该变量用于保存SMARTFORMS生成的模块名:DATA fm_name TYPE rs381_fnam.

    3.使用功能模块SSF_FIELD_LIST返回所需要的格式接口,有时可通过该接口中的信息来限定数据选择范围。

    4.调用功能模块SSF_FUNCTION_MODULE_NAME,SMARTFORMS名作为输入参数传进该模块,用于返回实际需要使用的SMARTFORMS的功能模块名称。

    CALL FUNCTION ‘SS_FUNCTION_MODULE_NAME’

      EXPORTING

         FORMNAME = ‘SF_0001’

      IMPORTING

         FM_FORM = fm_name

      EXCEPTION

         NO_FORM = 1

         NO_FUNCTION_MODULE = 2

         OTHERS = 3.

    IF SY-SUBC <> 0 .

      <Error handing>

    ENDIF.

    5.调用FORM模块,使用ABAP编辑器的CALL FUNCTION 中的插入功能,将步骤1中得到的FORM模块名称添加到其中(目的是为了避免手工输入所有参数接口),并将该值赋给步骤2中定义的变量fm_name.下面的代码中,向SMARTFORMS传递三个变量到参数G_CARRID,G_CONNID,G_FLDATE和一个内表至GT_SBOOK,这些参数是在该SMARTFORMS中的INTERFACE部分定义好了的。

    CALL FUNCTION fm_nam

      EXPORTING

    *

    *

    *

    *

    *

    G_CARRID = <VARIANT1>

    G_CONNID=<VARIANT2>

    G_FLDATE=<VARIANT3>

    *IMPORTING

    *

    *

    *

    TABLES

    GT_SBOOK = <INTERNAL TABLE>

    EXCEPTIONS

     

     

    IF SY-SUBRC <>0.

      <error handling>

    ENDIF.

  • 相关阅读:
    MySQL索引
    MySQL事物
    《软件设计师》——计算机网络
    《软件设计师》考点分布
    《软件设计师》——UML
    《软件设计师》——法律法规与标准化知识
    《软件设计师》——多媒体基础
    《软件设计师》——信息安全基础
    《软件设计师》——数据库系统
    《软件设计师》——数据结构和算法基础
  • 原文地址:https://www.cnblogs.com/caoyupin/p/351787.html
Copyright © 2011-2022 走看看