C#如何通过NCO3.0来连接SAP并调用SAP中的RFC
C#如何通过NCO3.0来连接SAP并调用SAP中的RFC
首先安装NCO3.,这是SAP针对.Net开发的专用组件,安装完成之后在C:\Program Files\SAP\SAP_DotNetConnector3_x86目录下面会有sapnco_utils.dll sapnco.dll rscp4n.dll libicudecnumber.dll四个DLL文件,在项目里面添加引用,找到这个4个DLL文件,引用到项目里面,libicudecnumber.dll会提示无法引用,貌似要将项目的.NET目标平台改为4.0的才可以,这里我没有亲测。
下面开始编程了:
using SAP.Middleware.Connector;
public void GetSapData()
{
RfcConfigParameters rfcPar = new RfcConfigParameters();
rfcPar.Add(RfcConfigParameters.Name, "CON");
rfcPar.Add(RfcConfigParameters.AppServerHost, "IP");
rfcPar.Add(RfcConfigParameters.Client, "");
rfcPar.Add(RfcConfigParameters.User, "UserID");
rfcPar.Add(RfcConfigParameters.Password, "Password");
rfcPar.Add(RfcConfigParameters.SystemNumber, "");
rfcPar.Add(RfcConfigParameters.Language, "EN");
RfcDestination dest = RfcDestinationManager.GetDestination(rfcPar);
RfcRepository rfcrep = dest.Repository;
IRfcFunction myfun = null;
myfun = rfcrep.CreateFunction("SAP里面的函数名称");
myfun.SetValue("VTYPE", "");//SAP里面的传入参数
myfun.Invoke(dest);
IRfcTable IrfTable = myfun.GetTable("IT_ZMYTB2");
//提前实例化一个空的表结构出来
DataTable dt = new DataTable();
dt.Columns.Add("USERID");
dt.Columns.Add("USERPWD");
dt.Columns.Add("USERADDRESS");
//循环把IRfcTable里面的数据放入Table里面,因为类型不同,不可直接使用。
for (int i = ; i < IrfTable.Count; i++)
{
IrfTable.CurrentIndex = i;
DataRow dr = dt.NewRow();
dr["USERID"] = IrfTable.GetString("USERID");
dr["USERPWD"] = IrfTable.GetString("USERPWD");
dr["USERADDRESS"] = IrfTable.GetString("USERADDRESS");
dt.Rows.Add(dr);
}
//将重新生成的Table赋值给数据控件DataGridView。
dgv.DataSource = dt;
}
原文:http://www.cnblogs.com/allen0118/archive/2012/07/26/2609403.html
C#如何通过NCO3.0来连接SAP并调用SAP中的RFC的更多相关文章
- C# 使用 SAP NCO3.0 调用SAP RFC函数接口
最近使用C#调用SAP RFC函数,SAP提供了NCO3.0组件. 下载组件安装,之后引用“sapnco.dll”和“sapnco_utils.dll”两个文件. 在程序中 using SAP.Mid ...
- springboot2.0配置连接池(hikari、druid)
springboot2.0配置连接池(hikari.druid) 原文链接:https://www.cnblogs.com/blog5277/p/10660689.html 原文作者:博客园--曲高终 ...
- Eclipse中利用JSP把mysql-connector-java-8.0.13.jar放到WebContent\WEB-INF\lib中连接MySQL数据库时Connection conn = DriverManager.getConnection(url,username,password)报错的解决办法
开发环境: 1.系统:windows 7/8/10均可 2.jdk:1.8.0_144 3.服务器:apache-tomcat-9.0.8 4.IDE:eclipse+jsp 0.网页代码如下: &l ...
- (转)PLSQL Developer 12.0.7连接Oracle12c数据库
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/sl1992/article/details/80489413 1.下载安装PL/SQL Develo ...
- 使用mongo-java-driver-3.0.2连接MongoDB数据库
这里使用的mongodb的java驱动版本是:3.0.2,文件名mongo-java-driver-3.0.2.jar 博客本地下载下载网址(也可以下载其它版本):http://central.ma ...
- JSP Tomcat8.0运行连接池时发生异常【AbstractMethodError oracle.jdbc.driver.T4CConnection.isValid(I)Z】
原创 2015年12月28日 11:38:01 2004 一.Tomcat8.0运行连接池时发生异常: AbstractMethodError oracle.jdbc.driver.T4CConnec ...
- orcal数据库得连接必须用localhost,url中不要用127.0.0.1,不然无法连接
orcal数据库得连接必须用localhost,url中不要用127.0.0.1,不然无法连接,
- [转帖]springboot2.0配置连接池(hikari、druid)
springboot2.0配置连接池(hikari.druid) 原文链接:https://www.cnblogs.com/blog5277/p/10660689.html 原文作者:博客园--曲高终 ...
- SQL Server 2005 sa登录失败。已成功与服务器建立连接 但是在登录过程中发生错误。 provider 共享内存提供程序 error 0 管道的另一端上无任何进程。
SQL Server 2005 Express版 用户 'sa' 登录失败.该用户与可信 SQL Server 连接无关联.提示错误:已成功与服务器建立连接 但是在登录过程中发生错误. provide ...
随机推荐
- Drupal 7.23:函数drupal_alter()注释
/** * Passes alterable variables to specific hook_TYPE_alter() implementations. * * This dispatch fu ...
- OFBIZ安装
1. 安装SVN客户端,从Apache OFBiz Source Repository获取OFBIZ下载地址.此处以12.04为例,下载地址为http://svn.apache.org/repos/a ...
- 【c++】输出 0000,0001,0002,0003,0004...这样的字符串
#include <iostream> #include <iomanip> ; ){ stringstream buf; buf <<setfill()<& ...
- windows下django1.7 +python3.4.2搭建记录2
1.自定义页面写一个显示当前时间的页面views.py文件加一个使用模板的模块,整体内容为: #coding=utf-8 from django.shortcuts import render fro ...
- Real Boxing 2
http://itunes.apple.com/ca/app/real-boxing-2/id932779605?mt=8&ign-mpt=uo%3D4
- Java基础 —— CSS
CSS:层叠样式表(Cascading Style Sheets) --> 提高显示功能,定义样式 html提供了div与span,只为了封装文本数据,div为一行数据,span为行内的数据. ...
- socket 粘包问题(转)
https://www.v2ex.com/t/234785#reply3 1. 面向字节流的 IO 都有这个问题. socket 中 tcp 协议是面向流的协议,发送方发送和接收方的接收并不是一一对应 ...
- Django中如何使用django-celery完成异步任务2(转)
原文链接: http://www.weiguda.com/blog/74/ 在上一篇博文中, 我们介绍了如何在开发环境中使用Celery. 接下来我们介绍一下如何在部署环境使用Celery. 1. 简 ...
- 如何判断Android设备是手机还是平板?
转自:http://blog.csdn.net/zuolongsnail/article/details/8682950 Android开发需要适配手机和平板,有些需求在实现中就要判断设备是手机还是平 ...
- Extjs4.2纯前台导出Excel总结
前段时间做了两个项目,用到了Extjs4.2纯前台导出Excel,遇到很多的问题,从网上也找了很多资料,在这里总结一下,做一个记录: 使用方法: 1.下载extexcel文件包,这里可以下载http: ...