用心做好每一件事情!

.Net连接到SAP

刚开始接触SAP了,感觉很陌生,清一色的TCode,不过里面的功能确实强大,不得不佩服啊,之前我一直是搞WinForm和WebForm的,现在能够接触到SAP那我还是想多学习一下,看了一下ABAP的语法,觉得只要能够自己试着写几个程序来练习一下的话应该不是很难,所以我决定通过C#去连接到SAP,然后去调用里面的RFC来实现一些功能,这样既可以了解.NET和SAP互相通信的知识,又可以在SAP里面编写ABAP的程序,下面看看连接SAP的代码,其实很简单:

 1 //首先的引用下面三个文件
 2 //这几个文件的DLL在C:\Program Files\SAP\FrontEnd\SAPgui
 3  //具体需要看安装目录
 4 using SAPFunctionsOCX;
 5 using SAPLogonCtrl;
 6 using SAPTableFactoryCtrl;
 7 
 8   private void btnLogin_Click(object sender, EventArgs e)
 9         {
10             //实例化一个SAPControl类的实例。
11             SAPLogonCtrl.SAPLogonControlClass Login = new SAPLogonCtrl.SAPLogonControlClass();
12             //指定连接SAP的各项参数。
13             Login.User = this.txtUser.Text.Trim();
14             Login.Password = this.txtUserPwd.Text.Trim();
15             Login.Client = this.txtClient.Text.Trim();
16             Login.Language = this.txtLanguage.Text.Trim().ToUpper();
17             Login.ApplicationServer = this.txtIP.Text.Trim();
18             Login.SystemNumber = Convert.ToInt32(this.txtSystemNumber.Text.Trim());
19             //New一个连接对象去连接SAP
20             SAPLogonCtrl.Connection Conn = (SAPLogonCtrl.Connection)Login.NewConnection();
21             //调用Login方法检测是否可以正确登录。
22             if (Conn.Logon(null, true))
23             {
24                 MessageBox.Show("连接SAP成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);  
25                 Conn.Logoff();
26             }
27             else
28             {
29                 MessageBox.Show("连接SAP失败", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
30             }
31             
32         }

 

现在正在摸索如何调用SAP里面的函数,比如说SAP里面的一个函数查询了某一张表的数据,然后我在C#里面调用这个函数然后将这些数据Show出来,希望有这方面兴趣的朋友互相研究一下。

posted @ 2012-05-22 15:27  无 影  阅读(4609)  评论(3编辑  收藏  举报
作者: Allen【QQ:96966 1314】 网名:无影 出处: http://www.cnblogs.com/allen0118/ 声明: 本文版权归作者和博客园共有!转载时必须保留此段声明,且在文章页面明显位置给出原文连接。