.Net连接到SAP【转载】

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

 1 //首先的引用下面三个文件
 2 //这几个文件的DLL在C:Program FilesSAPFrontEndSAPgui
 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出来,希望有这方面兴趣的朋友互相研究一下。

原文:http://www.cnblogs.com/allen0118/archive/2012/05/22/2513395.html

原文地址:https://www.cnblogs.com/dekevin/p/3253553.html