AMDP开发-概述

AMDP开发-概述
一、AMDP简介

​ 1、用于管理数据库的存储过程,有效的整合ABAP Programing language,development tools,and ABAP Lifecycle Management(ABAP生命周期管理)。

​ 2、主要通过ABAP里面的ABAP Class和ABAP interface来实现,而其中的数据库存储过程和参数是通过ABAP Methods来实现的。

​ 3、处理逻辑则是通过SQLScript来实现的,会生成到底层的hana数据库的存储过程。

二、开发环境

​ 1、存储过程的开发环境,一般也就是ABAP的开发用户就可以了,并不需要HAHA数据的用户,然后AMDP的框架负责去与底层数据去做相应的连接和处理,他可以自动去创建相应的数据库的存储过程。同时里面的方法也有相应的语法的检查,然后里面的定义的参数可以使用ABAP里面的类型,也可以使用DDIC里面的数据类型。

​ 2、集成进了ABAP的一个生命周期,他可以和其他的ABAP对象很容易的做一个同步已经传输相应的对象到其他系统里面。也可以做一些增强,可以在相应的类里面需要使用相应的接口(if_amdp_marker_hdb),说明这个类是基于AMDP的一个类。

​ 3、它支持的VULUE、IMPORTING、EXPORTING、CHANGING等相应的参数。在写方法时,还需要使用一个特定的关键词,如BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT.如果在方法中使用READ-ONLY告诉我们这个方法只用去读取数据。

4、在相应的AMDP方法被执行的时候,如果相应的语法或者数据问题等,会有相应的错误,错误的类如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pjeyHO0l-1678933781346)(D:\学习计划笔记\AMDP和CDS\IMAGE\image-20211221141225932.png)]

5、处理逻辑在METHOD和ENDMETHOD之间写对应的逻辑,在ABAP中定义和使用的方法入下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nOTcshdX-1678933781347)(D:\学习计划笔记\AMDP和CDS\IMAGE\image-20211221141357963.png)]

6、注意咋AMDP中的SQL需要写集团这个参数,因为在AMDP中不会自动做集团的区分。同时在调用这个类方法时需要使用try… catch…endtry来捕获这个的异常。在AMDP中也可以做debug来测试数据。

7、在AMDP中一个特定的方法,用于处理选择屏幕上的select-options,有一个CL_SHDB_SELTAB=>COMBINE_SELTABS将这个添加生成一个字符串,然后用在sql中用在where条件中

8、在AMDP中的BADI不支持filters,同时在使用AMDP的时候一定要勾上BADI的选项

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值