摘要: 何谓RFC,就是一个Function,可以被非SAP系统调用,比如VB,C#,Java等。如果我们在RFC中INCLUDE了相关的业务逻辑,那么我们就可以完全操控SAP中的业务数据了。就像在TTE里,有一只程序,前端是在OA开发,设计了相关的客户提领库存,然后还要到SAP系统中去执行程序扣减相应的库存,这样是挺费劲的,如果能够在OA中放一个按钮,点击这个按钮就自动执行了这个程序,方便省事。而这一切,可以利用C#调用RFC来实现。 要实现整个过程,则必须要现在SAP中建立好相应的RFC函数,然后用VS建立好相应的程序,写代码调用就可以了。两者关联就是使用NCO3.0这个东西了。 OK,本节主.. 阅读全文
posted @ 2012-10-17 16:15 神经衰弱 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 有的时候我们需要在RFC中抛出一些自定义的异常,比如输入一个不存在的品号,我们需要抛出一个异常,告知用户品号不存在。有一个笨笨的做法就是通过返回值来判断,但是这样不灵活,同时也会因为品号不存在而继续之行RFC。如果我们能自己抛出异常,程序自动停止执行RFC,那将是两全其美! 现在设定一个功能:输入两个数,第一个数除以第二个数。2个异常:被除数不能为0和除数不能为100。 首先,在SE37中建立一个RFC,就用上篇博文的RFC吧。 在IMPORT页设置如下: Export页面设置如下: Changing和Table页面放空 Exceptions页面设置如下: 然后就是源码咯: ... 阅读全文
posted @ 2012-10-17 16:13 神经衰弱 阅读(706) 评论(1) 推荐(1) 编辑
摘要: 这些天要做一个小项目——用Windows服务调用SAP接口获取数据。网上百度之,确定了方案——用SAP .NET Connector 3.0来与SAP系统交互。用Win7 Ultimate,Visual Studio 2010 Ultimate——于是,我就想用.NET Framework 4.0——于是就有了后来的那个烦人的异常~~~(有时候用最新的东西风险还是不小的)。 我是把与SAP接口交互的业务逻辑写在一个类库项目中,生成dll后供Windows服务调用。当我安装完服务后,看输出的跟踪日志,看到了异常信息——“SAP.Middleware.Connector.RfcDestinat.. 阅读全文
posted @ 2012-10-17 16:10 神经衰弱 阅读(497) 评论(0) 推荐(0) 编辑
摘要: 本文就说明在C#中如何编写代码来调用SAP中的RFC函数获取数据。(Winform32) 首先需要引用两个NCO3.0的DLL,下载地址在文后。 然后在程序代码页面引用: using SAP.Middleware.Connector; 然后所有的代码如下:namespace SAP_RFC{ public partial class Form1 : Form { string MATNR = string.Empty; public Form1() { InitializeComponent(); } public void nco() ... 阅读全文
posted @ 2012-10-17 16:07 神经衰弱 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 上面博文可知BAPI_USER_CREATE的一些结构和参数。所以在C#中要调用它就很清楚了要输入哪些参数了。 1、首先引用dll,然后在程序开头:using SAP.Middleware.Connector; 2、接下去就是设置登陆参数了,以前相关博文都有说明: public class MyBackendConfig : IDestinationConfiguration { public RfcConfigParameters GetParameters(String destinationName) { if ("PRD_000".Eq... 阅读全文
posted @ 2012-10-17 16:05 神经衰弱 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 相比.net connector 2.0,易用性上降低了,但是功能上强大了。1.安装sap .net connector 3.0,在C:\Program Files\SAP\SAP_DotNetConnector3_x86你会得到四个dll文件:sapnco_utils.dll sapnco.dll rscp4n.dll libicudecnumber.dll2.使用vs2010 我们创建一个项目,添加对上面四个dll文件的引用,实际上只有三个是可以引用成功的,libicudecnumber.dll的引用会失败,注意在这里,你看上去是引用成功的,其实你后面的程序是不能运行的。这个需要你在程序属 阅读全文
posted @ 2012-10-17 14:54 神经衰弱 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 相比.net connector 2.0,易用性上降低了,但是功能上强大了。1.安装sap .net connector 3.0,在C:\Program Files\SAP\SAP_DotNetConnector3_x86你会得到四个dll文件:sapnco_utils.dll sapnco.dll rscp4n.dll libicudecnumber.dll2.使用vs2010 我们创建一个项目,添加对上面四个dll文件的引用,实际上只有三个是可以引用成功的,libicudecnumber.dll的引用会失败,注意在这里,你看上去是引用成功的,其实你后面的程序是不能运行的。这个需要你在程序属 阅读全文
posted @ 2012-10-17 14:53 神经衰弱 阅读(2297) 评论(0) 推荐(0) 编辑
摘要: 可以将DataView同数据库的视图类比,不过有点不同,数据库的视图可以跨表建立视图,DataView则只能对某一个DataTable建立视图。DataView一般通过DataTable.DefaultView 属性来建立,或者再通过RowFilter 属性和RowStateFilter 属性建立这个DataTable的一个子集。DataGrid实际显示的是DataTable经过筛选的DataViewDataRow是对应于DataTable的; (实际存在的) 单对多DataRowView是对应于DataView的; (虚拟的) 单对多DataRowView.Row返回对应的当前行通过设置Da 阅读全文
posted @ 2012-10-17 10:14 神经衰弱 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 每天醒来的时候你都有两个选择:1、醒来,再睡,继续未完的美梦;2、醒来,站起来,去实现自己的梦。早安,朋友! 阅读全文
posted @ 2012-10-17 09:17 神经衰弱 阅读(180) 评论(0) 推荐(0) 编辑