ABAP指针
1. 什么是ABAP指针:
在ABAP里面,field symbol就相当于c语言的指针。如果你定义并且分配了相应的结构或者变量给它,其实它就指向这个结构或者变量的地址,如果修改了field symbol的值,则相应结构或者变量的值也随之更改。
2. 如何定义指针:
基本形式:FIELD-SYMBOLS .
附加信息:
1. ... TYPE :定义一个数据类型,然后定义指针
2. ... TYPE REF TO :指针指向类或者接口
3. ... TYPE REF TO :指针指向数据结构
4. ... TYPE LINE OF :指针内表的行项目
5. ... LIKE :指针为数据库表类型
6. ... LIKE LINE OF :指针类型为数据库表的行项目
3. 如何分配指针:
(1). ASSIGN f TO .:分配一个指针,包括以下几种类型
1. ... CASTING ... :主要对unicode系统地操作
1a. ... CASTING
1b. ... CASTING TYPE type
1c. ... CASTING ... DECIMALS dec
1d. ... CASTING LIKE f1
2. ... TYPE type :直接指定类型
3. ... DECIMALS dec :指定小数点位数
4. ... RANGE range:指定范围
(2). 分配结构中的某个字段给指针
ASSIGN COMPONENT idx OF STRUCTURE struc TO .
ASSIGN COMPONENT name OF STRUCTURE struc TO .
(3). 分配类的方法给指针
ASSIGN dref->* TO .
(4). 从f开始,是f的n倍长之后的内容分配给指针
ASSIGN f INCREMENT n TO .
(5). 分配局部变量给指针
ASSIGN LOCAL COPY
3a. ASSIGN LOCAL COPY OF f TO .
3b. ASSIGN LOCAL COPY OF INITIAL f TO .
3c. ASSIGN LOCAL COPY OF INITIAL LINE OF itab TO .
4c. ASSIGN LOCAL COPY OF MAIN TABLE FIELD (f) TO .
(6). ASSIGN dynamicJ:动态分配指针
4a. ASSIGN (f) TO .
4b. ASSIGN oref->(f) TO .
4c. ASSIGN (f1)=>(f2) TO .
4d. ASSIGN TABLE FIELD (f) TO .
4e. ASSIGN LOCAL COPY OF MAIN TABLE FIELD (f) TO .
4f. ASSIGN LOCAL COPY OF ... (f) TO .
4. 如何取消分配:
UNASSIGN .
ABAP指针的更多相关文章
- 【ABAP系列】SAP ABAP 动态指针
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 动态指针 ...
- BW知识问答锦集2
PM面试分为BW.BO两部分,根据顾问的简历和应聘的岗位所侧重的问题不同. BW包括基础知识.增量.增强.LO抽取.数据源. BO包括 CR.CR.WEBI.UNI. 一. 基础知识 技术面试 1. ...
- 【ABAP系列】SAP ABAP模块-ABAP动态指针写法的精髓部分
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP模块-ABAP动 ...
- 一步步实现ABAP后台导入EXCEL到数据库【2】
前文:http://www.cnblogs.com/hhelibeb/p/5912330.html 既然后台作业只能在应用服务器运行,那么,我们可以先将要上传的数据保存在应用服务器中,之后再以后台作业 ...
- ABAP 指針常用语法
1 .定义指針 :指針的定義主 要有以下語句 定義任意類型的指針,但是不具備欄位結構(僅僅是一個地址) FIELD-SYMBOLS <carrid> TYPE ANY. 參考數據庫表定義( ...
- ABAP 表格控制(Table Control)和步循环
表格控制(Table Control)和步循环 1.两个标准Demo: SAPMTZ60,SAPMTZ61 2.简介 3.建立Table Control程序的基本流程 4.使用步循环 5.表格 ...
- ABAP程序系统字段中英文详解
SY-SUBRC: 系统执行某指令后,表示执行成功与否的变量,’0’ 表示成功SY-DBLNT: 被处理过的记录的笔数 SY-UNAME: 当前使用者登入SAP的USERNAME;SY-DATUM: ...
- 程序间数据共享与传递:EXPORT/IMPORT、SAP/ABAP Memory
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ABAP基本数据类型、通用类型
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
随机推荐
- ios面试技术要点
iOS面试 技术总结点(可参考):多线程 运行时 runloop app框架 几种动画编程 jsonmodel原理 sdwebimage原理 masonry怎么应用及原理 应用框架有哪些 说一下Fac ...
- Windows batch,echo到文件不成功,只打印出ECHO is on.
jenkins 执行Windows batch command的时候,如果想要读写文件,echo到文件不成功. bat 代码如下: set ctime=%date%_%time% echo %ctim ...
- coreseek 提示 client version is higher than daemon version 解决办法
安装好coreseek,开启了服务之后,通过 sphinx php扩展去请求数据,提示:client version is higher than daemon version (client is ...
- HDU4550+贪心
/* 贪心 先挑出最小的Mm,然后在Mm左侧的按情况考虑,右侧的按顺序排列. */ #include<stdio.h> #include<string.h> #include& ...
- HMM 自学教程(八)总结
本系列文章摘自 52nlp(我爱自然语言处理: http://www.52nlp.cn/),原文链接在HMM 学习最佳范例,这是针对国外网站上一个 HMM 教程的翻译,作者功底很深,翻译得很精彩,且在 ...
- js关于对象键值为数字型时输出的对象自动排序问题的解决方法
一.对象键值为数字型时输出的对象自动排序问题如: var objs = { "1603":{id:"1603"}, "1702" ...
- Java集合框架源码剖析:LinkedHashSet 和 LinkedHashMap
Java LinkedHashMap和HashMap有什么区别和联系?为什么LinkedHashMap会有着更快的迭代速度?LinkedHashSet跟LinkedHashMap有着怎样的内在联系?本 ...
- 手动测试——MTM
在Test Manager中,测试计划用于管理某个迭代的整个测试工作.包括测试用例.测试结果,计划测试的配置. Test Center分为4个主要活动区域: Plan---用于管理整个测试计划,包括计 ...
- Ajax学习整理
什么是ajax?W3School中给ajax的定义是: 1.AJAX = 异步 JavaScript 和 XML. 2.AJAX 是一种用于创建快速动态网页的技术. 3.通过在后台与服务器进行少量数据 ...
- 译:泛型List集合转化为DateTable的扩展方法
译文出处:http://www.codeproject.com/Tips/867866/Extension-Method-for-Generic-List-Collection-to-Da 这段代码是 ...