65.9K
CodeProject 正在变化。 阅读更多。
Home

将 .Net 应用程序与 SAP 集成

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.25/5 (4投票s)

2008年4月24日

CPOL

1分钟阅读

viewsIcon

46888

连接 .Net 和 SAP

引言。

使用 ERPConnect 将 .Net 应用程序与 SAP 集成。您可以使用以下方法连接 SAP 系统

  1. RFC(函数调用)
  2. BAPI
  3. Idoc
  4. SAP 查询
  5. 特殊类等等

什么是 SAP .Net Connector

  • SAP 产品。基于 Microsoft .NET 技术
  • 通过 RFC/SOAP 与 SAP 交互
  • 与 Visual Studio.NET 完全集成
  • 托管代码
  • 为任何 .NET 应用程序集成生成 C# 代理类
  • 支持 RFC 和 SOAP
  • 支持 qRFC、tRFC
  • 支持异步 SOAP 调用
  • RFC 客户端或 RFC 服务器

关于 ERPConnect 的简介

ð ERPConnect.net 是一个精简的 .NET 程序集,它使您无需付出很大努力,最重要的是,无需复杂的 infrastructure 或任何额外的中间件即可开发强大的 SAP 接口。

ð 支持 RFC 和 SOAP,因此将其自身集成到任何现代 SAP NetWeaver 架构中

ð 也适用于移动设备

ð ERPConnect.net 还提供一系列特殊类,以高效、安全、稳定地处理 SAP 接口编程中最奇异的要求

ð 直接通过 RFC 读取 SAP 表

所需资源

  • SAP .Net Connector: ERPConnect
  • SAP 服务器详细信息
    • SAP 服务器的名称/IP
    • 系统编号
    • 用户名
    • 密码
    • 语言
    • 客户端

使用代码

首先在开发环境中安装 ERPConnect。安装 ERPConnect 后,转到应用程序中的“添加引用”块,找到 ERPConnect.dll 并单击添加。将 ERPConnect.dll 添加到引用文件夹后。您可以将以下内容添加到 xyz.cs 文件中。现在完全取决于您。您可以根据自己的需要进行实现。在下面的代码中,我使用了特殊类的概念。

代码块

            

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.Odbc;
using ERPConnect;
using ERPConnect.Utils;
using ERPConnect.Queries;
 
namespace SAP1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
//licence
   ERPConnect.LIC.SetLic(); //Not Required in case of trial version but is must in case of licenced version

//creating the connection object
R3Connection con = new R3Connection("SAP Server IP/Name", System Number, "UserName", "PWDl", "Language", "Client");

//open the connection
con.Open();

DataTable dt = new DataTable();
ReadTable rt = new ReadTable(con);

rt.TableName = "SAP Table Name";
rt.AddField("FieldName");
rt.AddField("FieldName");


rt.Run();
dt = rt.Result;
dataGridView1.DataSource = dt; // displays the result in gridview
}
catch (Exception ex)
{
 textBox1.Text = ex.Message;
}

}
}
}

关注点

© . All rights reserved.