【ABAP系列】SAP 使用事务码DBCO实现SAP链接外部数据库以及读取例程
前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
一、链接SQLServer数据库
执行事务码DBCO,点新条目按钮,填写如下图所示信息
这里的连接信息很接近 Sql Server 的连接字符串,但是参数名略有不同。指定主机IP、数据库名即可。
二、链接DB2数据库
执行事务码DBCO,点新条目按钮,填写如下图所示信息
连接信息看上去比较直接,分别是数据库名、端口号、主机IP地址。
三、链接Oracle数据库
执行事务码DBCO,点新条目按钮,填写如下图所示信息
连接信息比较隐晦,必须在 SAP 应用服务器上安装 Oracle Client,然后设置连接,并在这里将连接信息指定与连接名一致。
为了防止乱码,我们还应该在链接信息后加如下参数:ZHS16GBK
格式如下:ORCL.WORLD:ZHS16GBK
四、链接MaxDB数据库
执行事务码DBCO,点新条目按钮,填写如下图所示信息
MaxDB 是 SAP 自己的数据库,这个连接则是 NetWeaver Developer 版中默认创建的一个连接
访问外部数据库
1. 实例:SAP系统访问PeopleSoft数据库
*&----------------------------------------------------------------------------------------------------- &*
*& 定义常量 &*
*&------------------------------------------------------------------------------------------------------&*
CONSTANTS: CNS_YGJK TYPE C LENGTH VALUE 'HR9DEV'.
**打开连接
EXEC SQL.
CONNECT TO :CNS_YGJK
ENDEXEC.
***获取人事数据
TRY.
EXEC SQL PERFORMING PF_GET_RS.
SELECT MANDT,
ZID,
OTYPE,
INFTY,
ZUPDATE,
OPERA,
ZDATA
INTO :WA_HR01-MANDT,
:WA_HR01-ZID,
:WA_HR01-OTYPE,
:WA_HR01-INFTY,
:WA_HR01-ZUPDATE,
:WA_HR01-OPERA,
:WA_HR01-ZDATA
FROM z00hrjzlch01
WHERE SAP_GET = ''
ENDEXEC.
**处理人事数据
IF IT_HR01[] IS NOT INITIAL.
LOOP AT IT_HR01 INTO WA_HR01.
EXEC SQL.
UPDATE z00hrjzlch01
SET SAP_GET = 'X'
WHERE MANDT = :WA_HR01-MANDT
AND ZID = :WA_HR01-ZID
ENDEXEC.
IF SY-SUBRC = .
*********更新ERP数据库表
EXEC SQL.
COMMIT
ENDEXEC.
MODIFY Z00HRJZLCH01 FROM WA_HR01.
COMMIT WORK.
ENDIF.
ENDLOOP.
ENDIF.
**关闭连接
EXEC SQL.
DISCONNECT :CNS_YGJK
ENDEXEC.
**获取异常
CATCH CX_SY_NATIVE_SQL_ERROR INTO CL_EXEC_REF.
EXIT.
CATCH CX_SQL_EXCEPTION INTO CL_SQLERR_REF.
EXIT.
ENDTRY.
*&---------------------------------------------------------------------*
*& Form PF_GET_ZZ
*&---------------------------------------------------------------------*
* 组织增量数据
*----------------------------------------------------------------------*
FORM PF_GET_ZZ .
APPEND WA_HR02 TO IT_HR02.
ENDFORM.
事务代码:DBCO查看,SAP系统现存的连接
程序中使用的是连接【HR9DEV.WORLD】,双击这行如下图所示:
先在SAP底层ORACLE数据库编辑TNS文件,一般由BASIS配置完成,配置路径:DIR_ORAHOME->network->admin->tnsnames.ora;配置完成后我们可以用事务码:AL11查看配置是否正确,AL11查看连接【HR9DEV.WORLD】具体配置
【ABAP系列】SAP 使用事务码DBCO实现SAP链接外部数据库以及读取例程的更多相关文章
- 【ABAP系列】【第五篇】SAP ABAP7.50 之用户接口
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第五篇]SAP ABAP7.5 ...
- 【ABAP系列】【第六篇】SAP ABAP7.50 之隐式增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第六篇]SAP ABAP7.5 ...
- SAP 用事务码SQVI 做简单报表 .
集团计划总监要去德国参展,要一份离当前日期最近的出口欧美国家产品单价. 需要从A903,MARA,KONP,MATK 这4张表里取数. 1)Tcode:SQVI进入,如图 2) 在快速浏览处输入名称: ...
- SAP Idoc 事务码
SALE Display ALE Customizing SM59 RFC Destinations (Display/Maintain) BD64 Maintenance of Distributi ...
- 【FICO系列】SAP FICO总账余额相关的事务码
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP FICO总账余额相关的事 ...
- 【ABAP系列】SAP ABAP 为表维护生成器创建事务代码
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 为表维护生成器 ...
- [SAP ABAP开发技术总结]ABAP常用事务码
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ABAP常用事务码
开发----------------------------------------------- SE51 屏幕制作 SE91 MESSAGE OBJECT SE80 对象浏览器(可以建开发类 ...
- 【ABAP系列】SAP ABAP 资产类BAPI过账 BAPI_ACC_DOCUMENT_POST
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 资产类BAPI ...
随机推荐
- 返回vector指针案例
void prog1_static(void) { int pos = 9; // elem will hold the element's value vector<int> *elem ...
- python中sys.argv[]用法
sys.argv[]的作用: 在运行python文件的时候往文件里面传递参数. 从函数外部获取到变量值 import sys arg = sys.argv[0] args = sys.argv[:] ...
- CDOJ 1133 菲波拉契数制 变直接统计为构造
菲波拉契数制 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit St ...
- URAL 2036 Intersect Until You're Sick of It 形成点的个数 next_permutation()函数
A - Intersect Until You're Sick of It Time Limit:500MS Memory Limit:65536KB 64bit IO Format: ...
- weblogic漏洞总结 复现(未完)
复现方式 Docker复现 WEBlogic爆出了很多漏洞 先了解一下现在主流的版本 Weblogic 10.3.6.0 Weblogic 12.1.3.0 Weblogic 12.2.1.1 Web ...
- 「前端」尚妆 UI 组件库工程实践(weex vue)
本文来自尚妆前端团队南洋 发表于尚妆github博客,欢迎订阅! 前言 尚妆大前端团队使用 weex 进行三端统一开发有一段时间了,截止本文发表「达人店」APP大部分页面都已经用 weex 进行了重构 ...
- jmeter参数化之 CSV data set config
第一步:测试计划右键--创建线程组 第二步:选择线程组:右键--sample---创建:http request 配置协议类型和服务名称,method 和path 第三步:选择线程组下的http ...
- 实验四《Android程序设计》实验报告封面
实验四<Android程序设计>实验报告封面 课程:Java程序设计 班级:1753班 姓名:许钰玮 学号:20175329 指导教师:娄嘉鹏 实验日期:2019年5月13日 实验时间:1 ...
- IP输出 之 ip_output、ip_finish_output、ip_finish_output2
概述 ip_output-设置输出设备和协议,然后经过POST_ROUTING钩子点,最后调用ip_finish_output: ip_finish_output-对skb进行分片判断,需要分片,则分 ...
- 2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范
2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范 实验内容 本次实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有 (1)简单应用SET ...