在之前的的一篇文章里,简单探讨了ABAP直接调用HANA的视图而不必借助于旧的技术ADBC。那么这篇文章我们一起看看在NW 7.4里通过ABAP直接调用HANA的存储过程。
HANA的一个利器是各种模型视图,但是HANA的主要编程范式为将逻辑推向HANA一层,所以很多复杂的处理逻辑就要借助于存储过程。在NW 7.4之前,需要通过ADBC直接编写HANA的存储过程调用语法(SQLScript),这种方法晦涩,写起来比较麻烦。在NW 7.4,引入了一个新的数据字典对象叫做Database procedure proxies使得ABAP语言能够像与ABAP数据字典交互一样调用HANA的存储过程。
首先在HANA里创建一个测试的存储过程,而且具备输入和输出参数。
之后在HANA Studio的ABAP开发视图里,创建一个DB procedure proxy
这里有一点在开发体验上不是很方便的就是手动输入HANA存储过程。向导里并没有提供搜索或者选择的功能。
我们要注意系统为我们生成的parameter type interface,这是系统根据存储过程的输入输出参数在ABAP系统里建立的一个类型映射接口,以便ABAP编程时定义变量。
生成的类型接口代码为:
interface ZIF_ZSCN_DPP_001 public.
” This interface pool has been generated.
” It contains the type definitions for
” database procedure proxy ZSCN_DPP_001
types: iv_number type i.
types: begin of et_top,
company_name type c length 50,
gross_amount type p length 8 decimals 2,
end of et_top.
endinterface .
之后我们便可以在ABAP里面像调用一个函数模块一样使用这个HANA存储过程了:
REPORT ZSCN_DD_DDP.
PARAMETER pnumber TYPE i.
DATA: lv_number TYPE ZIF_ZSCN_DPP_001=>iv_number.
DATA: lt_top TYPE STANDARD TABLE OF ZIF_ZSCN_DPP_001=>et_top.
lv_number = pnumber.
CALL DATABASE PROCEDURE ZSCN_DPP_001
EXPORTING iv_number = lv_number
IMPORTING et_top = lt_top.
我们看到这样的集成对于ABAP ON HANA的开发来说进步了很多,让ABAP与HANA有了更好地结合。
相关推荐
### ABAP调用HANA存储过程详解 #### 标题:ABAP调用HANA存储过程 #### 描述:本文档介绍了如何在ABAP程序中调用SAP HANA存储过程的方法。 #### 标签:ABAP、HANA #### 部分内容概述:本文档通过一个逐步教程的...
- **数据库过程代理:** 数据库过程代理是一种机制,使得ABAP程序可以直接调用SAP HANA中的存储过程,从而实现更高效的数据处理和逻辑执行。 - **HANA Transport Container:** HANA Transport Container是一种用于...
HANA的核心特点之一是能够对大量数据进行快速的查询和处理。在使用HANA进行数据查询时,我们经常需要引入参数来动态地影响查询的结果。这些参数可以在查询执行前进行设置,也可以在执行过程中提示用户输入,以适应...
首先,文件标题“HA400 ABAP Programming on SAP HANA.pdf”明确指出了本教材聚焦于在SAP HANA平台上进行ABAP编程的教学。ABAP(Advanced Business Application Programming)是SAP系统中用于开发应用的主要编程语言...
开发者可以通过在SAP HANA Studio的Object Privileges下勾选DEBUG权限,或者直接使用SQL语句授权来赋予用户调试存储过程的权限。例如,可以使用GRANT DEBUG ON PROCEDURE或GRANT DEBUG ON SCHEMA命令来授权。 SAP ...
标题中的“HANA STUDIO ABAP DEVELOPMENT TOOL”是指SAP HANA Studio中的一个特定模块,专门用于ABAP(Advanced Business Application Programming)开发。SAP HANA Studio是SAP HANA平台的一个集成开发环境(IDE)...
- **ABAP-Managed Database Procedures (AMDP)**:AMDP 允许开发人员在 SAP HANA 数据库内编写存储过程,这些存储过程由 ABAP 直接管理。这有助于将复杂的计算逻辑移至数据库层面,减少网络传输开销,提高整体性能。...
文档中提到的《基于SAP Business Suite on HANA 的ABAP优化开发》(CD911_CN)一书,由Yonghui Wang和Song Fu编写,日期为2014年3月13日。这本书为SAP开发者提供了基于SAP Business Suite(SAP 商务套件)在HANA...
SAP HANA will soon celebrate its second birthday. Hard to believe, but this technology has been on the market for almost two years now. During this time, its use potential increased significantly: ...
### EDW on HANA验证测试...综上所述,通过对EDW on HANA的验证测试,不仅可以了解HANA在实际应用中的性能表现,还能够为企业决策者提供重要的参考依据,帮助他们在未来的技术选型和系统升级过程中做出更加明智的选择。
SAP S/4HANA On-Premise和S4 HANA Cloud是SAP提供的两种不同部署方式的智能ERP解决方案,分别适用于不同需求的企业。S/4HANA On-Premise版本是一个基于SAP HANA内存数据库的ERP业务套件,允许企业在私有云或公有云上...
总的来说,BW on HANA模型手册提供了关于在HANA平台上SAP商务智能仓库建模的全面指南,涵盖了从模型建立到数据分析的全过程。它不仅包含了SAP BW的基本理论知识,也深入解释了HANA平台的特性以及如何结合使用它们来...
### HA400 ABAP Programming for SAP HANA #### 一、课程介绍 HA400 ABAP编程针对SAP HANA是SAP提供的一项专业培训课程,旨在帮助学员掌握在SAP HANA环境下进行ABAP开发的核心技能。本课程不仅涵盖了理论知识,还...
SAP HANA系统的查询语法有了许多更新,使用新语法能提高查询速度,特别是大数据的。本文档里面的内容放了大量的新语法,欢迎各位下载。
SAP HANA 升级是将 SAP R3 系统升级到 HANA 数据库的过程。在这个过程中,需要修改自开发程序以适应 HANA 数据库的特性。本文将介绍 SAP HANA 升级自开发程序修改的方法和案例代码,包括 SQL 语句、while 语句等。 ...
ABAP Development for SAP HANA 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
HANA SQL Statement - HANA_ABAP_ApplicationLog_OrphanRecords
SAP BW 7.4 SP5 powered by SAP HANA and further Roadmap
存储过程是一组预先编译好的SQL语句和控制流语句,它们作为一个单元存储在数据库中,以便多次调用。 **4.1 创建存储过程** 创建存储过程的基本语法如下: ```sql CREATE PROCEDURE "PROCEDURE_NAME"() AS BEGIN ...