通过RFC(C#)连接SAP系统
2016-01-08 10:00
525 查看
通过RFC(C#)连接SAP系统
具备条件
1.vs2010
2.sap公司发布的nco3
3.sap的服务器端口密码
4.sap的可远程操作的调用函数
操作步骤:
1.
打开vs2010,新建空网站,新建窗体,一定记住引用;
引用方法不要去找com组件,根本找不到,要通过浏览的方式。
2.
在cs后台文件下引用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Drawing;
using System.Text;
using SAP.Middleware.Connector;
3.
cs代码
public
partial class
_Default : System.Web.UI.Page
{
protected
void Page_Load(object sender,
EventArgs e)
{
RfcConfigParameters rfcPar = new
RfcConfigParameters();
rfcPar.Add(RfcConfigParameters.Name,
"DDD");
rfcPar.Add(RfcConfigParameters.AppServerHost,
"188.88.88.88");
rfcPar.Add(RfcConfigParameters.Client,
"900");
rfcPar.Add(RfcConfigParameters.User,
"MM222");
rfcPar.Add(RfcConfigParameters.Password,
"777777");
rfcPar.Add(RfcConfigParameters.SystemNumber,
"00");
rfcPar.Add(RfcConfigParameters.Language,
"EN");
RfcDestination dest = RfcDestinationManager.GetDestination(rfcPar);
RfcRepository rfcrep = dest.Repository;
IRfcFunction myfun = null;
myfun = rfcrep.CreateFunction("ZTEST_SIMPLE");
myfun.SetValue("CARRID",
"AA");//SAP里传入参数
myfun.SetValue("CURRENCY",
"USD");//SAP里传入参数
myfun.Invoke(dest);
string ERMSG = myfun.GetValue("PRICE").ToString();
this.Label1.Text = ERMSG;//设置一个label控件
dest =
null;
rfcrep =
null;
}
}
具备条件
1.vs2010
2.sap公司发布的nco3
3.sap的服务器端口密码
4.sap的可远程操作的调用函数
操作步骤:
1.
打开vs2010,新建空网站,新建窗体,一定记住引用;
引用方法不要去找com组件,根本找不到,要通过浏览的方式。
2.
在cs后台文件下引用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Drawing;
using System.Text;
using SAP.Middleware.Connector;
3.
cs代码
public
partial class
_Default : System.Web.UI.Page
{
protected
void Page_Load(object sender,
EventArgs e)
{
RfcConfigParameters rfcPar = new
RfcConfigParameters();
rfcPar.Add(RfcConfigParameters.Name,
"DDD");
rfcPar.Add(RfcConfigParameters.AppServerHost,
"188.88.88.88");
rfcPar.Add(RfcConfigParameters.Client,
"900");
rfcPar.Add(RfcConfigParameters.User,
"MM222");
rfcPar.Add(RfcConfigParameters.Password,
"777777");
rfcPar.Add(RfcConfigParameters.SystemNumber,
"00");
rfcPar.Add(RfcConfigParameters.Language,
"EN");
RfcDestination dest = RfcDestinationManager.GetDestination(rfcPar);
RfcRepository rfcrep = dest.Repository;
IRfcFunction myfun = null;
myfun = rfcrep.CreateFunction("ZTEST_SIMPLE");
myfun.SetValue("CARRID",
"AA");//SAP里传入参数
myfun.SetValue("CURRENCY",
"USD");//SAP里传入参数
myfun.Invoke(dest);
string ERMSG = myfun.GetValue("PRICE").ToString();
this.Label1.Text = ERMSG;//设置一个label控件
dest =
null;
rfcrep =
null;
}
}
相关文章推荐
- C#中数组、ArrayList和List三者的区别
- C#正则表达式工具库
- (转)C#_WinForm接收命令行参数
- 正则表达式C#
- c# 单例模式[Singleton]之深夜闲聊
- 模板模式 c#
- 代理模式 c#
- 使用C#删除一个字符串数组中的空字符串
- C#高级编程笔记(一)
- 装饰者模式 c#
- [读书笔记]C#学习笔记一: .Net Framwork
- C# Plugin Framework Demos
- C# using 三种使用方式
- 关于C#自定义控件【摘录】
- C# 坦克大战学习总结
- C# 坦克大战学习总结
- 基于MASM6.15的汇编集成开发环境
- 06.C#线程Thread
- c# 基本控件,窗口程序
- 05.C#委托(delegate)的使用