`

<转>不需要建结构在SMARTFORM中传值

阅读更多


以前写SMARTFORMS,传内表数据的时候总要先到SE11建立一个结构,很是麻烦.



下面主要描述一下SMARTFORM是怎么从调用它的程序取相应内表的值.

首先在SMARTFORM 全局定义->类型 这个TAB页下定义个TYPES,结构跟要取的内表的结构一致.

如:types:BEGIN OF MY_TYPE,
          lgnum type ltak-lgnum,
          TANUM TYPE LTAK-TANUM,
          LGTOR TYPE LTAK-LGTOR,
          BNAME TYPE LTAK-BNAME,

          …

        end of my_type.



然后在 全局定义->全局数据 这个TAB页下定义一个内表和工作区,如:

GT_TABLE TYPE TABLE OF  MY_TYPE
WA       TYPE           MY_TYPE

内表的TYPE ASSIGNMENT这一列,手动输入TYPE TABLE OF ,这个很关键.



最后在 全局定义->初始化 这个TAB页下写下面的代码:

DATA: FIELD(50).
FIELD-SYMBOLS: <f> TYPE ANY.
FIELD = ‘(ZXXXXX)OUTPUT[]‘.      ”ZXXXXX为程序名,OUTPUT为内表名
ASSIGN (FIELD) TO <f>.
GT_TABLE[] = <f>.



这样,SMARTFORM就取得了ZXXXXX这个程序,OUTPUT这个内表的值,并将之赋给了GT_TABLE.

ZXXXXX程序那边不用传参数了.

  DATA:SMARTFORM(30) TYPE C,
       FM_NAME  TYPE   RS38L_FNAM.


  SMARTFORM = ‘ZXXXXX’.
  CALL FUNCTION ‘SSF_FUNCTION_MODULE_NAME’
    EXPORTING
      FORMNAME           = SMARTFORM
    IMPORTING
      FM_NAME            = FM_NAME
    EXCEPTIONS
      NO_FORM            = 1
      NO_FUNCTION_MODULE = 2
      OTHERS             = 3.

  WAIT UP TO 1 SECONDS.
  CALL FUNCTION FM_NAME
    EXCEPTIONS
      FORMATTING_ERROR = 1
      INTERNAL_ERROR   = 2
      SEND_ERROR       = 3
      USER_CANCELED    = 4
      OTHERS           = 5.

 
Trackback: http://scnblogs.techweb.com.cn/songxianl/archives/11.html/trackback

分享到:
评论

相关推荐

    ABAP开发规范

    - **&lt;structure&gt;**: 使用的结构名。 - **1.3.3 范围表类型** - **命名格式:** `[Z_]&lt;dataelement&gt;_T` - **[Z_]**: 如果`&lt;dataelement&gt;`名称以Z开头,则可省略。 - **&lt;dataelement&gt;**: 使用的数据元素名。 - **...

    一个表结构smartform分页

    smartform实现分页,只有一个结构,单号改变是则分页

    smartform

    在SAP ABAP编程中,SmartForm和ScriptForm是两种常用的文档输出技术,它们用于创建复杂的格式化报表和文档。本文将重点讨论SmartForm的输出格式设置,它提供了丰富的功能来定制文本、字段布局和数据格式。 ...

    SmartForm取程序内表数据

    在 ZXXXXX 程序中,我们不需要传参数了,因为我们已经将内表的值传递给了 SmartForm。 此外,我们还可以使用 Export 和 Import 的方法来传递内表的值。我们可以将内表 Export 到内存或者数据库中,然后将句柄传递到...

    sap smartform

    SAP SmartForm 是在 SAP Basis Release 4.6C 中引入的工具,用于创建和维护表单。它允许用户使用简单的图形工具执行简单的修改,以满足业务流程中的需求。SAP SmartForm 的主要优点是可以减少编程工作量,使得没有...

    smartforms里动态取得程序里内表的值

    例如,可以在模板中添加一个循环结构来遍历GT_LABEL表,并将每一条记录展示出来。 #### 示例代码解析 上述代码片段中,我们首先定义了一个字段符号`&lt;dbcnt&gt;`,然后通过`ASSIGN`语句将内表`(ZCHINA_TEST3)ITAB[]`的...

    SMARTFORM知识 SMARTFORM知识

    8. **使用实例**:创建SMARTFORM时,首先定义FORM的基本属性和接口,然后在Form Builder中构建页面结构,添加窗口和表格,最后通过全局定义处理数据逻辑。例如,在ZTEST_HXG_F3的例子中,创建了一个名为"FIRST"的...

    SAP SMARTFORM 教程

    SmartForm在设计完成后,需要转换不支持的字段类型,比如“QUAN”和“CURR”类型。转换可以通过在全局变量中增加变量并编写转换代码来实现。将不支持的字段转换成字符类型后,可以在SmartForm内部程序中使用。完成...

    ABAP最详细的开发规范

    - `&lt;Y&gt;` 指程序类型代码,具体的程序类型代码可以在表格中找到: - `R` 表示报表程序。 - `P` 表示对话程序。 - `F` 表示FORM/SMARTFORM打印程序。 - `B` 表示后台作业程序。 - `I` 表示公共Include程序。 - ...

    SAP SMARTFORM的开发技术.pdf

    在SMARTFORM的设计中,需要设置主窗口大小是否需要边框,然后右键单击MAIN窗口,选择创建、流逻辑、循环(用于创建一个循环,LOOP 表头)。双击这个LOOP,选择数据循环头内表,然后右键单击LOOP创建表(用于输出数据...

    ABAP报表程序开发规范.doc

    - 报表程序命名格式:`Z&lt;XX&gt;_&lt;Y&gt;_&lt;NN&gt;[ADDITIVE]`,其中XX是模块名,Y是程序类型(R-报表,E-批处理,S-SmartForm,I-接口),NN是顺序号,ADDITIVE是可选的附加说明。 - Include程序命名与主程序相似,通过...

    SAP MM审批采购订单时将采购订单作为PDF附件发送电子邮件

    在SAP MM模块中,审批采购订单是一个关键的业务流程,确保了公司的采购活动符合预设的审批策略。为了提高效率并确保及时的信息传递,有时需要在审批过程中将采购订单(Purchase Order, PO)作为PDF附件通过电子邮件...

    SAP ABAP开发学习——第16课:SmartForm(视频教程)

    在SmartForm的开发过程中,我们需要创建一个新形式并定义其结构。这涉及设置形式的属性,如名称、语言和版式。接着,我们可以添加表格和段落,定义它们的列宽、行高以及数据源。数据源可以是内部表、结构或字段符号...

    SAP SMARTFORM的开发技术.pptx

    此外,在 SMARTFORM 中,也可以使用变量和结构来传递数据,并在输出数据时,使用这些变量和结构来控制输出的结果。 SAP SMARTFORM 的开发技术涉及到多个方面,包括结构定义、参数定义、初始化、设计表单、输出数据...

    SAP中如何通过SMARTFORM 在ZEBRA 打印机打印条码

    SAP中如何通过SMARTFORM 在ZEBRA 打印机打印条码

    SmartForm 打印程序.rar_SMARTFORM

    在本教程中,我们将深入探讨 SmartForm 的基本概念和使用方法。 标题 "SmartForm 打印程序.rar_SMARTFORM" 暗示了这是一个关于 SmartForm 打印程序的压缩文件,可能包含了模板和相关的指导文档,例如 "SmartForm ...

    smartform实例讲解

    - 在Form Interface中定义SMARTFORM的接口属性,如IMPORT、EXPORT、TABLES和EXCEPTION等,这些用于从ABAP程序中调用SMARTFORM时传递参数。 - Global Definitions用于定义全局数据、FIELD SYMBOLS等初始化内容。 2...

    ABAP smartform超详细入门讲解

    创建Smartform需要在ABAP工作台中选择“创建”菜单,然后选择“智能表单”,输入Smartform的名称和描述信息,最后单击“创建”按钮。 制作Smartform 制作Smartform是指设计和编辑Smartform的全局设置、页和窗口、...

    查找SmartForm对应的传输请求号

    SAP ABAP中如何查找SmartForm对应的传输请求号,查找SmartForm对应的版本

Global site tag (gtag.js) - Google Analytics