作用就是把当前对象保存在一个临时存储空间,它只能用到子程序或者FUNTION MODULE里,在程序结束的时候数据对象重新分配在临时空间的值。

如果用LOCAL对同一个对象执行了好几遍,那么只有第一次执行起作用。

语法:LOCAL dobj.

The statement LOCAL (not allowed in classes) saves the current content of a data object dobj in an internal buffer. It can be used only in subroutines or function modules. At the end of the procedure, the data object dobj is reassigned to the value in the buffer. If LOCAL is executed in a procedure for a data object more than once, only the first execution is taken into account.

All data objects possible in write positions can be specified for dobj. If dobj is an internal table, the procedure should not be called within a LOOP loop that processes the table.

Modifiable formal parameters of the procedure, field symbols, or dereferenced data references are also possible after LOCAL. If formal parameters are specified, the assigned actual parameter is set to the value in the buffer at the end of the procedure. For field symbols, the field reference and the content of the referenced fields are saved.

例子:

DATA TEXT TYPE STRING VALUE 'Global text'.

CL_DEMO_OUTPUT=>WRITE_TEXT( TEXT ).

PERFORM SUBR1.

CL_DEMO_OUTPUT=>DISPLAY_TEXT( TEXT ).

FORM SUBR1.
  LOCAL TEXT.
  TEXT = 'Text in subr1'.
  CL_DEMO_OUTPUT=>WRITE_TEXT( TEXT ).
  PERFORM SUBR2 USING TEXT.
  CL_DEMO_OUTPUT=>WRITE_TEXT( TEXT ).
ENDFORM.

FORM SUBR2 USING PARA TYPE STRING.
  LOCAL PARA.
  PARA = 'Text in subr2'.
  CL_DEMO_OUTPUT=>WRITE_TEXT( TEXT ).
ENDFORM.

输出:

释疑の语法LOCAL相关推荐

  1. 释疑の语法 ON CHANGE OF

    先看标准的语法: ON CHANGE OF dobj [OR dobj1 [OR dobj2] ... ].   statement_block1 [ELSE.   statement_block2] ...

  2. 释疑の语法Unpackpack

    For example:  与外围系统接口,外围系统数据库存储数据是有0000的,但是SAP数据库中存储是没有0000,可以用前导零函数或者这个关键字处理 PACK格式:PACK source TO ...

  3. Ubuntu下非常规方法安装绿色软件(压缩包)

    继上一篇http://www.cnblogs.com/EasonJim/p/7117567.html文章中说的常规方式安装的软件,都会自动在命令行及Dash Home中体现. 但是如果是使用压缩包进行 ...

  4. CSS Modules 用法教程

    学过网页开发就会知道,CSS 不能算编程语言,只是网页样式的一种描述方法. 为了让 CSS 也能适用软件工程方法,程序员想了各种办法,让它变得像一门编程语言.从最早的Less.SASS,到后来的 Po ...

  5. perl学习之:函数总结

    一.进程处理函数 1.进程启动函数 函数名 eval 调用语法 eval(string) 解说 将string看作Perl语句执行. 正确执行后,系统变量$@为空串,如果有错误,$@中为错误信息. 例 ...

  6. CentOS开启samba服(附smb.conf手册)

    CentOS开启samba服务 有错误请告诉我,我不想误人子弟! 熟悉Linux的用户可能常常在Linux上安装Samba服务来实现与Windows系统的文件共享和打印机共享,他们之间的数据传输使用S ...

  7. apisix插件之修改返回body

    1.修改请求返回body的插件,直接上代码: local core = require("apisix.core") local ngx = ngx local string = ...

  8. 亲手搭建vue项目的过程--Module build failed: Unknown word,无法读取css文件

    执行webpack-dev-server的时候就报错了,报错如下: ERROR in ./src/components/app.vue?vue&type=style&index=0&a ...

  9. 快速搭建samba 简单samba服务

    基于RedHat service smb restart #/etc/init.d/smb start 1. 安装samba包 yum install samba 2. 修改相关配置文件 vim /e ...

最新文章

  1. 各种函数调用约定及浮点数传参
  2. BZOJ 2151 种树(可反悔贪心,链表)【BZOJ千题计划】就图一乐
  3. add-apt-repository:找不到命令_手把手教你使用nodejs编写cli(命令行)
  4. uboot学习之三-----uboot启动第一阶段--start.S之一
  5. 使用优化的基于模糊规则的特征选择技术和基于树的集成方法进行山洪敏感性建模--文献阅读
  6. android apk 编译命令,android – 如何从命令行编译APK?
  7. Android aidl Binder框架浅析
  8. CocosCreator-IOS 开发篇
  9. 体悟朝闻道,夕死可以
  10. 1994年的计算机安全法规,1994年2月18日,我国颁布了(),这是我国第一个计算机安全法规,是我国计算机安全工作的总体纲领。...
  11. C++之enum与switch
  12. OS知识点汇总(考研用)——第二章:进程管理(下)
  13. C语言学生管理系统项目
  14. 点击链接新窗口打开页面
  15. android checkbox 文字和图标间距,CheckBox选择框和文字设置间距
  16. 如何使用 Diago 诊断 Go 程序中的 CPU 和内存使用情况
  17. jsp页面转换成html,jsp页面修改成html页面
  18. nested exception is org.apache.ibatis.builder.BuilderException: Error evaluating expression 的解决办法
  19. HEVC编码框架和main函数代码跟踪解读
  20. LeaRun.Framework━ .NET快速开发框架 ━ 工作流程组件介绍

热门文章

  1. 推荐干货 | 我在阿里做运营:八一八运营经典误区
  2. View的绘制-draw流程详解
  3. WPF获取当前用户控件的父级窗体
  4. IoT 云服务加速产业创新,推进规模商用
  5. vueRouter-命名视图
  6. 企业:怎样的渗透测试频率是合适的?
  7. Android-通过SlidingMenu高仿微信6.2最新版手势滑动返回(二)
  8. ubuntu 13.04 安装 GRUB customizer
  9. openstack下
  10. hibernate+mysql保存中文数据乱码问题