1.调用程序

*&---------------------------------------------------------------------*
*& Report  ZTEST_CALL_PROG
*&
*&---------------------------------------------------------------------*
*& Create  by    : 冯飞剑
*& Create  date  : 2010-1-2
*& Descriptions  : 测试调用外部程序(调用程序)
*&---------------------------------------------------------------------*

REPORT   ZTEST_CALL_PROG.
*----------------------------------------------------------------------*
*  define internal tables
*  定义内表
*
*----------------------------------------------------------------------*
DATA : BEGIN  OF  W_DATA,
FID1 TYPE  STRING,
NUM1 TYPE  I ,
NUM2 TYPE  I ,
END    OF  W_DATA.
DATA : T_OUT LIKE  W_DATA OCCURS  0  WITH  HEADER  LINE .

*----------------------------------------------------------------------*
*  assign value to internal tables
*  给内表赋值
*
*----------------------------------------------------------------------*
DO  10  TIMES .
IF  SY-INDEX  < 4 .
T_OUT-FID1 = 'A' .
T_OUT-NUM1 = SY-INDEX .
T_OUT-NUM2 = SY-INDEX  + 1 .
ELSEIF  SY-INDEX  < 7 .
T_OUT-FID1 = 'B' .
T_OUT-NUM1 = SY-INDEX  + 1 .
T_OUT-NUM2 = SY-INDEX  + 2 .
ELSE .
T_OUT-FID1 = 'C' .
T_OUT-NUM1 = SY-INDEX .
T_OUT-NUM2 = SY-INDEX  - 1 .
ENDIF .

APPEND  T_OUT.
ENDDO .

*-----------------------------------------------------------------------*
*  call extenral program
*  调用外部程序
*
*-----------------------------------------------------------------------*
***  使用ABAP内存进行数据传递
EXPORT  T_OUT TO  MEMORY  ID  'T_OUT' .

*** 以下两种情况是调用程序被结束,被调用程序开始执行
* SUBMIT ZWRITE_DATA.

***  如果使用这种情况程序之间的数据访问就不能ABAP内存访问了
* LEAVE TO TRANSACTION 'ZGET_DATA'.

*** 以下两种情况是调用程序被打断,当被调用程序执行完毕之后,调用程序继续执行
*   插入一个新的INTERNAL SESSION,被调用程序运行完删除SESSION,继续执行调用程序
SUBMIT  Zwrite_data AND  RETURN .

***  调用事物代码(和SUBMIT <PROGRAM> AND RETURN的效果一样)
* CALL TRANSACTION 'ZGET_DATA'.

2、被调用程序
*&---------------------------------------------------------------------*
*& Report  ZWRITE_DATA
*&
*&---------------------------------------------------------------------*
*& Create  by  :  冯飞剑
*& Create  date:  2010-1-2
*& Descriptions:  测试调用外部程序(被调用程序)
*&---------------------------------------------------------------------*

REPORT   ZWRITE_DATA.

*----------------------------------------------------------------------*
*  define internal tables
*  定义内表
*
*----------------------------------------------------------------------*
data : begin  of  w_data,              "这里定义一个跟调用程序一样的内表结构
fid1 type  string,
num1 type  i ,
num2 type  i ,
end    of  w_data.
data : t_out like  w_data occurs  0  with  header  line .

*----------------------------------------------------------------------*
*  get data from sap memory and write out
*  从SAP内存读取数据然后打印输出
*
*----------------------------------------------------------------------*

import  t_out from  memory  id  'T_OUT' .

FREE  MEMORY  ID  'T_OUT' .

write : sy-uline .

WRITE : '从调用程序取到的数据如下:' .
LOOP  AT  T_OUT.
write : / ' ' ,t_out-fid1, t_out-num1, t_out-num2.
ENDLOOP .
write : sy-uline .

*** 退出程序
* leave program.

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/F122300349/archive/2010/04/22/5516205.aspx

submit的用法实例相关推荐

  1. javascript入门系列演示·三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  2. python命令行参数解析OptionParser类用法实例

    python命令行参数解析OptionParser类用法实例 本文实例讲述了python命令行参数解析OptionParser类的用法,分享给大家供大家参考. 具体代码如下:     from opt ...

  3. php中 datalist,html5 datalist标签的用法是什么?这里有datalist标签的用法实例

    本篇文章主要为大家讲述了关于html5 datalist标签的用法及html5 datalist标签的用法实例.本文说了两个常用的选项框的实例供大家选择观看,下面就让我们一起来看这篇文章吧 我们先来看 ...

  4. python的for语句用法_python中list循环语句用法实例

    本文实例讲述了python中list循环语句用法.分享给大家供大家参考.具体用法分析如下: Python 的强大特性之一就是其对 list 的解析,它提供一种紧凑的方法,可以通过对 list 中的每个 ...

  5. CStopWatch计时器的用法实例

    CStopWatch计时器的用法实例 创建CStopWatch对象: CStopWatch m_runningtimeWatch; //定义一个计时器 定义一个装返回值的变量: double m_ru ...

  6. Go语言MD5加密用法实例

    Go语言MD5加密用法实例 本文实例讲述了Go语言MD5加密用法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: import (     "crypto/md5" ...

  7. python mysqldb cursor_python中MySQLdb模块用法实例

    转载自:http://www.jb51.net/article/57290.htm 姓名:梅金波                        学号:16010110036 [嵌牛导读]MySQLdb ...

  8. input type=range标签用法实例代码

    在HTML5中,又新增许多新<input>控件类型,比较实用的一个就是<input type="range">,以滑竿的方式来调整value值,在这以前需要 ...

  9. [转] form.getForm().submit的用法及Ext.Ajax.request的小小区别

    原文地址:http://blog.csdn.net/hongleidy5000/article/details/7329325 [javascript] view plain copy if (!fo ...

最新文章

  1. LeetCode简单题之设计 Goal 解析器
  2. Codeforces 338D 对线性同余方程组的一点理解
  3. Docker初学5:下载安装可视化图形工具Portainer
  4. ASP.NET MVC的Action拦截器(过滤器)ActionFilter
  5. 构建面向对象的应用软件系统框架
  6. ssh图示+hibernate图示
  7. MongoDB在Windows环境下部署
  8. java多线程通信 例子
  9. django学生宿舍管理系统
  10. QT视频教程系列:QuickTester概述
  11. 计算机 标量,标量关系
  12. Excel在筛选后进行排序的函数
  13. gitlab-runner错误之:New runner. Has not connected yet(runner注册成功到了gitlab,但是前面的图标是灰色三角形)
  14. HTML(常用标签与超链接)的案例
  15. Dynamics 365 Xrm.Naviagtion.navigateTo 打开Dialog后如何关闭
  16. 03 注册Gitee账号及设置公钥
  17. JimuReport积木报表打印多出一页空白页问题(解决方案)
  18. commit时报错missing Change-Id in message footer
  19. 非常不错的表单设计器(源码)
  20. Folx Pro5下载器堪比IDM的下载工具 支持下载磁力链接和种子文件

热门文章

  1. 厘米换算英尺英寸程序_使用C程序计算两个城市之间的距离,从公里到米,厘米,英尺和英寸...
  2. python与财务报表_雅虎财经Python网站刮板关键统计数据和财务报表
  3. 面试官如何考察你的思维方式?学会这个思维方式面试很简单!
  4. win10系统下修改pdf文件默认阅读器
  5. PHP报错:414 Request-URI Too Large
  6. 【Windows】Windows10系统获取文件夹下的文件名方法
  7. 华天软件SiNOVATION 几何造型内核CRUX IV官方介绍信息
  8. 解决ERROR #42601 syntax error at or near “)“
  9. 高通平台msm8953 Linux DTS(Device Tree Source)设备树详解之二(DTS设备树匹配过程)
  10. 红米3 android 版本,四型号五版本分不清?红米3各大版本详细解读