云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

网站服务器_阿里巴巴阿里云_新用户

小七 141 0

网站服务器_阿里巴巴阿里云_新用户

第1部分-如何测试CDS视图生成的odata服务第2部分-激活一个CDS视图后自动生成哪些对象第三部分-本博客第4部分-注释如何@OData.发布工作第5部分-如何在OData服务中创建支持导航的CDS视图第6部分-使用CDS视图中的表函数第七部分-揭秘@ObjectModel.readOnly文件第8部分-我对注释声明和生成的不同方法的总结第9部分-立方体视图和查询视图第10部分-CDS视图关键用户扩展性在S4/HANA中如何工作第11部分-CDS视图测试双框架第12部分-CDS查看源代码计数工具第13部分-CDS视图授权

让我们回顾一下我们迄今所学到的知识。通过SQL跟踪和调试,我们了解到:

1。当我们在ABAP开发工具中单击activate按钮(我现在在这个博客中称之为Eclipse)时,会生成几个相应的ABAP对象并插入表条目。通过调试我们知道在SDDL包中实现了很多相关的逻辑。当我们在CDS视图上对odata服务测试read&search功能时,操作被委托给CL\u SQL\u STATEMENT~EXECUTE\u QUERY.

现在我问自己,既然我们在Eclipse中输入的是纯文本,ABAP backend如何解释文本并将其转换成ABAP DDIC对象?我们得到的唯一提示是SDDL包。里面有10多个班级。虽然一个有经验的ABAP开发人员只需根据类名和描述就可以很容易地确定哪个类负责文本->ABAP视图转换,企业信息化软件,物联网操作系统,但是ABAP新手需要更多的时间来实践他们的直觉。

这里的提示是,如果你不确定你要找的是哪个类,然后总是从你已经知道的开始。在我们的例子中是CL\u SQL\u语句~EXECUTE\u QUERY。在这个方法上设置断点,在Eclipse中输入更多的字符,断点会立即被触发。

从调用堆栈中我们知道,每次在Eclipse中输入一些东西之后,它将向ABAP后端触发语法检查请求。

您可以通过Eclipse底部的部分观察到这一点。

从调用堆栈中我们找到一个类CL\u DDL\u DDL\u HANDLER,云服务器好吗,物联网技术应用,它实现了接口IF\u DDL\u HANDLER,这似乎就是我们要找的。打开这个类,有一个方法GET_VIEWDEF_FROM_SRC,它表示该方法将源代码转换为ABAP VIEW–DEFinition。在其中设置断点,在Eclipse中再次点击activate按钮

这个类将解析源代码:

从代码中可以很清楚的看到解析输出,ABAP格式的视图定义用于生成ABAP数据库视图。

还有另一种方法可以让您获得更清晰的视图:

打开"ABAP通讯日志"视图:

打开日志:

然后对视图进行一些虚拟更改,然后您可以观察发送到ABAP后端的以下六个请求。

突出显示的"abapCheckRun"只是我们已经学习的语法检查。

双击请求以查看请求详细信息。在这里,中国云,视图源代码以Base64格式编码,存储在chkrun:内容。

我们当然可以从一些解码编码在线转换网站看到原文:

如果您想调试您在ABAP通讯日志视图中看到的任何请求,请参阅此文档:一个帮助您理解ADT工作原理的示例。

当您在Eclipse中单击activate按钮时,您可以知道语法检查总是在真正激活之前执行。

嗨,Jerry,

谢谢您的博客。

"ABAP通讯日志"对我来说是新的,它看起来对我很有用。

我期待着你的进一步博客。