sap跨系统取数据库的简单介绍
如何从SAP中连接其他数据库
1. 工作环境需求
专业从事企业网站建设和网站设计服务,包括网站建设、主机域名、雅安服务器托管、企业邮箱、微信公众号开发、微信支付宝微信小程序、App定制开发、软件开发、等服务。公司始终通过不懈的努力和以更高的目标来要求自己,在不断完善自身管理模式和提高技术研发能力的同时,大力倡导推行新经济品牌战略,促进互联网事业的发展。
A. The operating system user sidadm must be able to log on to the secondary database.
B. The R/3 table DBCON must be maintained.
C. The correct database library 'dboraslib.ext' must exist in the kernel directory.
Connect to SQL Server database Prerequisite: At least one Windows application server must be available on the R/3 system and the DBSL dynamic library (DLL) dbmssslib.dll must be installed on this server. This dll can be downloaded from the SAP Service Marketplace.
dbmssslib.dll
2. 配置连接信息
配置TCODE: dbco
任何配置信息都存储在DBCON表中.
配置示例:
A. 访问MSSQL的配置示例(参见SAP Notes 178949)
CON_NAME: my_conn_name
DBMS: MSS
USER_NAME: db_user
PASSWORD: password
CON_ENV: MSSQL_SERVER=server_name MSSQL_DBNAME=db_name
db_user could be sapr3 for example if the server is running R/3. The password field may be blocked from view by asterisks in sm30. USER_NAME can be left blank in order to use integrated security (4.6d kernel and later). In that case make sure that the OS User running R/3 has the required privilege on the remote server. A dummy password must be entered in sm30, it will not be used when the user name is blank.
Specifying the server name
The server name is simply the name of the SQL Server or named instance i.e. the hostname (for a default instance), or host/instname
Starting with release 6.40 however there are some special considerations that should be taken into account. When running with kernel release 6.40 or later, the R/3 system will prepend a protocol specifier to the server name. Example:
1. For a server running on the same server:
np:servername
2. For a remote server:
tcp:servername
This forces the connection to be made with a named pipes and tcp/ip protocols respectively.
When specifying the server name you can override this by setting your own protocol (tcp: or np:), or you can make R/3 avoid setting any prefix by using simply :servername - a colon in front of the server name.
B. 访问ORACLE的配置示例()
Connection name logical name of the connection
DBMS ORA
User name Oracle users
DB password password for the above-mentioned Oracle user
Conn.info TNS alias
Permanent Usually should not be set for a secondary connection.
3. 程序中如何使用
例程一
report zdbcon .
data: dbn(128).
EXEC SQL.
CONNECT TO 'DAN1'
ENDEXEC.
EXEC SQL.
SET CONNECTION 'DAN1'
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
write: / 'current database name', dbn.
DAN1在DBCON表中配置
CON NAME DAN1
DBMS MSS
USER NAME iis_log
PASSWORD CON ENV
MSSQL_SERVER=tcp:###.###.###.### MSSQL_DBNAME=iislog
例程二
Here is an example for how to connect to another server with CON_NAME=BSK. The example assumes BSK is running R/3:
EXEC SQL.
CONNECT TO 'BSK'
ENDEXEC.
EXEC SQL.
SET CONNECTION 'BSK'
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
WRITE: / 'current database name', DBN.
EXEC SQL.
SET CONNECTION DEFAULT
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
WRITE: / 'current database name', DBN.
sap与外部系统的接口怎么实现
根据系统数据交换的方式以及读写数据的相对关系不同,可以将外部系统与SAP系统的接口形式分为:主动式,被动式和中间式
1、主动式接口
即外部系统将SAP系统所需的信息直接写入SAP系统的数据库中。这种方式要求详细了解SAP系统内部的数据库结构,并且SAP系统允许外部系统往里写数据(即有写的权限)。一般来说,主动式接口形式需要对SAP系统的数据库结构很清楚,对SAP系统录入数据时需要进行哪些数据校验也要很清楚,同时也要遵循SAP系统的数据校验规范,将其所需的物料信息、产品信息、加工信息等一一写入SAP系统中,保证数据的准确性和有效性。
采用主动式接口形式的优点:外部系统与SAP系统中的信息同步性好。但在安全性方面存在一定问题,如出现写数据冲突,即外部系统写数据到SAP系统的同时,SAP系统本身也在往数据库中写入数据。对于SAP系统建议一般不要采用此种方式。
2、被动式接口
被动式接口,即SAP系统从外部系统中读取所需的数据,将其写入自已的数据库中。对于被动式又有两种方式:全被动式和半被动式。
.全被动式:外部系统完全公开其表达和存储信息的数据库结构,SAP系统读取信息时自行判断哪些信息是增加的,哪些是修改的,哪些己删除了。
.半被动式:外部系统除公开其数据库结构外,还提供一些握手信号单独存入握手信号表中,握手信息说明哪些信息作了更新,这样SAP系统在读取外部系统中的信息(如某物料更改信息)时,根据握手信号表来读取外部系统中已经发生更改的部分信息,不需要全部读一遍,这样可以提高接口处理的速度。
采用被动式接口形式的优点:外部系统与SAP系统的同步性也做得比较好,安全性方面也比主动式要好。但实现起来较为麻烦,需要有较强的SAP接口方面的知识。一般由专门的SAP实施顾问来完成这种开发。
3、中间式接口
中间式接口,即外部系统将SAP系统所需的信息生成中间文件或中间数据表,SAP系统直接读取中间文件或将中间表中的信息写入数据库中,这种方式要求对外部系统和SAP系统两方都要做一些开发工作。
需要特别提出的是:采用中间式接口时必须时刻注意如何保证外部和SAP信息一致性。常用的有两种方式:一种是由SAP系统来保证,即外部系统将SAP系统所需的信息定期写在中间文件或数据表中,SAP系统读取该信息时与SAP系统中已有的信息进行分析比较,判断哪是新增的、哪是修改的、哪些删除了,最后把更新的信息写入SAP系统中:另一种是,外部系统在生成中间文件或数据表时,与SAP系统中己有的数据进行比较,判断哪些数据进行了更新,并将更新的数据写入中间文件或数据表。然后,SAP系统读取中间文件或数据表中的数据直接写入自己的数据库中。这种方式要求在外部系统写中间文件之前SAP系统将其数据库中的数据导出,以供外部系统进行比较用。
中间式接口是比较常用的一种方式,这种方式外部系统和SAP系统相对独立,接口不涉及双方内部的结构,而且接口的责任也很明确,数据的安全性也得到了保证。但这种方式存在的问题就是两个系统的数据同步性稍差一些,但只要合理地规定读写中间文件或数据表的时间,数据的同步性是不会影响使用的。
【请教】如何在sap系统中导出数据?如何导入数据?
在SM30里,找到相应表,按“表示图-打印”,然后会进入打印的界面,这个界面里有你此表的所有数据,且可以在“系统-列表-保存-本地文件-电子表格”里保存至EXCEL。呵呵刚才自己也在找这个解决办法。
文章名称:sap跨系统取数据库的简单介绍
链接分享:http://scyanting.com/article/ddeeejc.html