惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google Online Security Blog
Google Online Security Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
CERT Recently Published Vulnerability Notes
C
Cybersecurity and Infrastructure Security Agency CISA
Cisco Talos Blog
Cisco Talos Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Scott Helme
Scott Helme
Project Zero
Project Zero
E
Exploit-DB.com RSS Feed
S
Secure Thoughts
K
Kaspersky official blog
L
Lohrmann on Cybersecurity
NISL@THU
NISL@THU
WordPress大学
WordPress大学
N
News and Events Feed by Topic
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 热门话题
小众软件
小众软件
P
Privacy & Cybersecurity Law Blog
博客园 - 聂微东
Google DeepMind News
Google DeepMind News
H
Hackread – Cybersecurity News, Data Breaches, AI and More
A
About on SuperTechFans
Hacker News: Ask HN
Hacker News: Ask HN
AWS News Blog
AWS News Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
H
Hacker News: Front Page
F
Full Disclosure
Latest news
Latest news
Schneier on Security
Schneier on Security
The Hacker News
The Hacker News
T
Troy Hunt's Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Jina AI
Jina AI
Martin Fowler
Martin Fowler
P
Proofpoint News Feed
TaoSecurity Blog
TaoSecurity Blog
G
GRAHAM CLULEY
Forbes - Security
Forbes - Security
V
V2EX - 技术
酷 壳 – CoolShell
酷 壳 – CoolShell
V
Vulnerabilities – Threatpost
C
Cyber Attacks, Cyber Crime and Cyber Security
MongoDB | Blog
MongoDB | Blog
博客园 - 三生石上(FineUI控件)
S
SegmentFault 最新的问题
Hugging Face - Blog
Hugging Face - Blog
P
Privacy International News Feed
C
Check Point Blog
N
News and Events Feed by Topic

博客园 - 魏绰

冲销会计凭证:FBRP与FB08的区别 xk01创建供应商保存的时候,提示错误“科目800001已经存在” SAP如何使用关于序列号的表 解决:“凭证编号 ******** 已分配!”的错误 Payment Terms 收付款条件和分期付款设置 bw R/3端配置 (转) SAP WM 层面仓位调整 在ABAP中用事务更新数据(转) ABAP设置JOB 专家例程 SMARTFORM 点击打印后,将打印次数或者是最后的打印时间添加到数据表中 SMARTFORMS 分页函数显示 '*" asp.net 发送邮件 [转]SAP ABAP中使用Read_Text函数读取项目文本的方法 ABAP生成随机数 BW知识点总结及面试要点(转) se93 为自建表分配维护事物码 F4搜索帮助 F4IF_INT_TABLE_VALUE_REQUEST SAP系统中设定流水号
SAP 调用外部程序 .转
魏绰 · 2011-03-25 · via 博客园 - 魏绰

SAP 的方法(函数)如何用其它语言实现,是SAP的funcation module 如果在外面实现,就是在SAP里创建一个FM,然后在外面用其它语言,JAVA,.net实现这个方法完成复杂功能。

在SAP外部启动一个服务,这个服务连接SAP的geteway service,当SAP调用RFC方法时这个方法根据DESTINATION 指定的RFC名称(SM59),找到这个服务程序,找到实现方法。

作用:
1.实现复杂的业务处理,比较abap语言实现困难的
2.与外部系统做接口,比较当SAP做业务时触发外部作业
3.从外部获取数据,前题是SAP为主动
4.SAP与外部语言的无关性
5.例如SAP与生鲜磅称的接口,当SAP做收货,称重量时,用这种方法调用外部程序,把重量反回SAP系统。very good!

 RFC 配置:
                         i.              T-CodeSM59;创建一个RFC连接,需要配置的项目:输入RFC DestinationConnection Type 选择T(表示用TCP/IP方式),输入Description(描述),Technical Settings里选择Registered server program ,配置Program ID这个很重要与PC上外部注册的服务程序名称一致,Gateway host(主机网关,这个信息由Basis人员提供)xxx.xxx.xxx.xxxGateway service (网关服务,这个信息由Basis人员提供,例如:sapgw10).
                       ii.              测试Test Connection ,如果配置成功应通过。没有错误提示。
FM创建:

    SE37 ,注意属性要设置为远程方式(remote -enabled module),其它与创建普通FM一样。
FM调用方式:
  ***初始化L_ITAB_DATA内表***
  L_RFC_DESTINATION = 'SM59DesName'.  "'RFCSCALE'.  "指定RFC程序
  L_WA_WEIGHT-WAAGE = 'SM59ProgramID'. "在配置SM59时最好两个名一样,
  APPEND L_WA_WEIGHT TO L_ITAB_WEIGHT.  "向Internal Table中赋值

***调用SAP FUNCTION MODULE获取数据***'HU_GET_RFC_DATA' 是外部实现的方法名,请参考实例
  CALL FUNCTION 'HU_GET_RFC_DATA' DESTINATION L_RFC_DESTINATION
    TABLES
      ET_WEIGHT             = L_ITAB_WEIGHT
    EXCEPTIONS
      COMMUNICATION_FAILURE = 1  MESSAGE MSG_TEXT
      SYSTEM_FAILURE        = 2  MESSAGE MSG_TEXT. 
    
C#实现FM:

SAP.net实现非常简单,用SAP.net服务生成RFC接口访问方法类。

附件:sap.net标准实例