SAP.net Connector包装问题

shangwg 2008-10-25 10:27:12
现在正在用SAP.net Connector来调用BAPI,用的是.net 3.5平台,所有只引用了两个dll,对于SAP.net Connector的示例程序,已经可以运行通过了,但是对于SAP的每一个rfc函数,SAP.net Connector都生成了一个类来对应,这个类扩展自SAPClient,我如果想包装一下这个类,实现对所有rfc函数的调用,可行吗?该怎么做?
...全文
158 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shangwg 2008-11-18
  • 打赏
  • 举报
回复
基本搞定,结贴。
shangwg 2008-10-26
  • 打赏
  • 举报
回复
如果每个RFC的结构都是不一样的,是指什么?是rfc的调用参数的结构?
rfc的调用方法好像是固定的,SAPInvoke(string Name,objects[] paras),
而我测试的结果,仅仅将参数按照顺序加入paras,是没有办法执行的,返回invalid method,
感觉SAP.Connectot.dll,又作了其他的转换,这些转换依赖于参数定义时的自定义属性,
如[RfcParameter(AbapName = "KUNNR", RfcType = RFCTYPE.RFCTYPE_CHAR, Optional = true, Direction = RFCINOUT.IN, Length = 10, Length2 = 20)],
我的设想是:
首先用Assembly构造类,如Test,扩展自SAPClient;
需要对传入参数RFCTYPE进行包装,如RFCTYPE_ITAB,(因为不熟悉,不知道还有没有其他的)
然后调用Test.SAPInvoke(名称,参数集),这个想法是否可行?
有什么需要特别注意的地方吗?因为刚刚接触sap,感谢不吝赐教!

另外说两句,为什么AbapName = "KUNNR"这样的内容不作为SAPClient的一个可赋值属性,而放在声明行,是不是故意造成障碍?
shangwg 2008-10-25
  • 打赏
  • 举报
回复
另外,如果要遍历SAP的ref函数,用什么类?
caixiaoming 2008-10-25
  • 打赏
  • 举报
回复
理论上可行,但是比较困难。
如果每个RFC的结构都是不一样的,如果需要DEEP结构,你怎么定义你的类?自动生成?
这些是有点难度,如果可以做出来,我建议你做个产品卖了。
就相当于自己搞了套JCO。

2,680

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 ERP/CRM
社区管理员
  • ERP/CRM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧