在做 ABAP 开发时,你一定遇到过这种场景:程序里明明只有两张内表,却硬生生写出了三层LOOP、一堆READ TABLE、还要额外维护索引表或HASHED TABLE,最后只是为了回答一个看似朴素的问题——Jerry的经理是谁?Thomas名下有哪些开发者?
ABAP Mesh的出现,就是为了解决这类“内表之间存在天然关联,但 ABAP 语言层面缺少关系导航”的痛点。它在 ABAP 7.40 SP05 引入:Mesh 本质是一种特殊结构,结构的组件是内表,并且可以用 association 把这些内表节点连接起来,之后通过 mesh path 像走“路径”一样完成导航与筛选。(Eduardo Copat)
很多同学把它当成语法糖,我更愿意把它理解成:把内表临时提升为“业务对象节点”,把字段映射提升为“节点关联”。你会发现它和 CDS association、RAP association、Gateway OData 的导航属性在思想上高度一致:都是把“关系”从手写代码里抽离出来,变成可被引擎解释的语义。(