案例1:赋值ls_stru2 对应字段到 ls_stru1

  • 代码

    TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2."example1
    ls_stru1 = VALUE #(
    col1 = 'line1-c1'
    col2 = 'line1-c2'
    col3 = 'line1-c3'
    ).ls_stru2 = VALUE #(
    col1 = 'line2-c1'
    col2 = 'line2-c2'
    col3 = 'line2-c3'
    col4 = 'line2-c4'
    ).ls_stru1 = CORRESPONDING #( ls_stru2 ).cl_demo_output=>display( ls_stru1 ).
    
  • 效果

案例2:ls_stru3参照ty_stru2;并赋值ls_stru1 对应字段到 ls_stru3

  • 代码

    TYPES: BEGIN OF ty_stru1,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col5 TYPE char10,END OF ty_stru1.TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2.ls_stru1 = VALUE #(col1 = 'line1-c1'col2 = 'line1-c2'col3 = 'line1-c3').ls_stru2 = VALUE #(col1 = 'line2-c1'col2 = 'line2-c2'col3 = 'line2-c3'col4 = 'line2-c4').DATA(ls_stru3) = CORRESPONDING ty_stru2( ls_stru1 ).cl_demo_output=>display( ls_stru3 ).
    
  • 效果

案例3:ls_stru3参照ty_stru2;并赋值ls_stru1 对应字段到 ls_stru3(BASE ( ls_stru2 ) 表示未被 ls_stru1 的字段覆盖值将从 ls_stru2 中获得

  • 代码

    TYPES: BEGIN OF ty_stru1,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col5 TYPE char10,END OF ty_stru1.TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2.ls_stru1 = VALUE #(col1 = 'line1-c1'col2 = 'line1-c2'col3 = 'line1-c3').ls_stru2 = VALUE #(col1 = 'line2-c1'col2 = 'line2-c2'col3 = 'line2-c3'col4 = 'line2-c4').DATA(ls_stru3) = CORRESPONDING ty_stru2( BASE ( ls_stru2 ) ls_stru1 ).cl_demo_output=>display( ls_stru3 ).
    
  • 效果

案例4:赋值ls_stru2 对应字段到 ls_stru1;并使用Mapping将 ls_stru2-col4 映射到 ls_stru1-col5

  • 代码

    TYPES: BEGIN OF ty_stru1,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col5 TYPE char10,END OF ty_stru1.TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2.ls_stru1 = VALUE #(col1 = 'line1-c1'col2 = 'line1-c2'col3 = 'line1-c3'col5 = 'line1-c5').ls_stru2 = VALUE #(col1 = 'line2-c1'col2 = 'line2-c2'col3 = 'line2-c3'col4 = 'line2-c4').ls_stru1 = CORRESPONDING #( ls_stru2 MAPPING col5 = col4 ).
    cl_demo_output=>display( ls_stru1 ).
    
  • 效果

案例5:赋值ls_stru2 对应字段到 ls_stru1;并且使用 EXCEPT 排除字段COL1不赋值(ls_stru1-col1的值会被清空,不清空请看案例6

  • 代码

    TYPES: BEGIN OF ty_stru1,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col5 TYPE char10,END OF ty_stru1.TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2.ls_stru1 = VALUE #(col1 = 'line1-c1'col2 = 'line1-c2'col3 = 'line1-c3'col5 = 'line1-c5').ls_stru2 = VALUE #(col1 = 'line2-c1'col2 = 'line2-c2'col3 = 'line2-c3'col4 = 'line2-c4').ls_stru1 = CORRESPONDING ty_stru2( ls_stru2 EXCEPT col1 ).
    cl_demo_output=>display( ls_stru1 ).
    
  • 效果

案例6:赋值ls_stru2 对应字段到 ls_stru1;并且使用 EXCEPT 排除字段COL1不赋值(使用 base ( ls_stru1 ) 保留ls_stru1-col1的值

  • 代码

    TYPES: BEGIN OF ty_stru1,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col5 TYPE char10,END OF ty_stru1.TYPES: BEGIN OF ty_stru2,col1 TYPE char10,col2 TYPE char10,col3 TYPE char10,col4 TYPE char10,END OF ty_stru2.DATA: ls_stru1 TYPE ty_stru1,ls_stru2 TYPE ty_stru2.ls_stru1 = VALUE #(col1 = 'line1-c1'col2 = 'line1-c2'col3 = 'line1-c3'col5 = 'line1-c5').ls_stru2 = VALUE #(col1 = 'line2-c1'col2 = 'line2-c2'col3 = 'line2-c3'col4 = 'line2-c4').ls_stru1 = CORRESPONDING ty_stru2( base ( ls_stru1 ) ls_stru2 EXCEPT col1 ).
    cl_demo_output=>display( ls_stru1 ).
    
  • 效果

    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

ABAP 7.4 CORRESPONDING()语法相关推荐

  1. ABAP Development Tools的语法增强

    ABAP Development Tools的前端是Java,根本识别不了ABAP.那么在ADT里的ABAP语法高亮是如何实现的? 第一次打开一个report时,显示在ADT里的代码是没有任何语法高亮 ...

  2. ABAP Development Tools的语法高亮实现原理

    ABAP Development Tools的前端是Java,根本识别不了ABAP.那么在ADT里的ABAP语法高亮是如何实现的? 第一次打开一个report时,显示在ADT里的代码是没有任何语法高亮 ...

  3. ABAP 7.4 新语法-内嵌生命和内表操作

    1.内嵌声明 2.内表操作 3.opensql *&---------------------------------------------------------------------* ...

  4. SAP ABAP SLIN进行程序扩展语法检查

    TCODE: SLIN 或者在SE38 界面的菜单: 程序->语法->扩展程序检查 就会弹出下面的界面,用户可以根据自己的需求设置检查点,并根据检查结果修改程序,使自己的代码更加可靠.另外 ...

  5. ABAP开发环境语法高亮的那些事儿

    关于SAP ABAP开发环境,Jerry之前写过几篇公众号文章: 那些年我用过的SAP IDE 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧 使用Visual Studio Code ...

  6. ABAP和Java里关于DEFAULT(默认)机制的一些语言特性

    ABAP 740的新语法: 上图的代码相当于: DATA: ls_data LIKE LINE OF it_data. READ TABLE it_data INTO ls_data WITH KEY ...

  7. 【整理】SAP系统内核和ABAP版本

    前言:之前两篇简单介绍了ABAP 7.40的新特性,那么有的时候会有这样的情况,根据新特性写代码的时候校验会不通过,这又是为啥呢?会不会跟SAP的版本有关系呢? 那么,首先我们就来看一下在SAP系统中 ...

  8. ABAP简介以及OpenSQL与NativeSQL的区别

    ABAP的全称是Advanced Business Application Programming-高级业务应用编程语言,mySAP ECC 6.0的底层源代码,全部是使用ABAP编写的.因此,想要对 ...

  9. 现代 ABAP 编程语言中的正则表达式

    在这篇博文中,我想分享现代 ABAP 中正则表达式的最新消息和变化,主要来自 OP 版本 7.55 和 7.56. 以前,在 ABAP 中使用 POSIX 样式的正则表达式或"uniX 的便 ...

  10. SAP系统的开发语言--ABAP简介

    这是我给公司内部杂志投稿的一篇文章,目的在于向不了解SAP开发的同事介绍SAP的开发技术.发在这里,希望对各位希望学习SAP开发技术的朋友有帮助. ABAP的全称是Advanced Business ...

最新文章

  1. 缺少nst linux.mbr文件,用EasyBCD2.0在Windows环境下引导Linux启动
  2. WINCE5.0+S3C2440支持大容量SD卡(SDHC卡)
  3. UITableviewcell重用机制以及解决重绘出现的重叠现象
  4. vue项目使用sass-loader
  5. wordpress插件-WP Rocket3.8.8与Rocket3.9.1双版本/火箭缓存插件免授权汉化版
  6. Docker快速搭建Oracle12c
  7. markdown引入代码_markdown简单使用之插入代码段
  8. NLP 算法工程师的学习、成长和实战经验
  9. 记一次生产环境存储过程优化的过程(42秒--0.06秒)
  10. Linux入门的基础知识点
  11. 使用WebSockets搭建多人在线聊天室
  12. AD快捷键设置(自定义)
  13. iPad2 3G版 5.1.1降级到4.3.3(需要4.3.3SHSH备份)
  14. python中stack.stack_Python stack
  15. odoo15 po文件自动翻译器
  16. mysql注入扫描网站漏洞工具_SQL注入漏洞扫描工具
  17. 解决错误Establishing SSL connection without server‘s identity verification is not recommended.
  18. bmi计算器公式_bmi计算器公式
  19. 乐动手环app下载安装_乐动健康安卓版
  20. 【SQL文档整理系列1】MySQL创建procedure(可以用来造测试数据)

热门文章

  1. [dlang](4)自定义的mysql orm工具
  2. 天津仁爱学院2021级高职升本科新生报到须知
  3. 2023年天津仁爱学院专升本考试考务费网上缴费的通知
  4. 线性代数学习笔记——第五十七讲——特征子空间
  5. 世界地图展开图,来自 Simon's World Map
  6. 仿雷速体育app踢足球tab
  7. iptables匹配statistic
  8. 《程序员健康指南》读书笔记
  9. vidda系统+android系统,海信电视精简教程,去除电视多余应用,换桌面!
  10. Debian(Linux) 安装Windows通用字体(可解决TimesNewRoman等字体的报错)