java 调用bapi_BAPI的简单实现步骤

java 调用bapi_BAPI的简单实现步骤一,创建FunctionModule1,在SE11,创建需要的structure(必须为flat类型,否则会出现ReferenceparametersarenotallowedwithRFC)2,在SE80,建Functiongroup3,在SE37,创建FunctionModule(import的参数入药是value传值)Note:一个FunctionGroup只能包含一个B…

大家好,又见面了,我是你们的朋友全栈君。

一,创建Function Module

1,在SE11,创建需要的structure (必须为flat类型,否则会出现Reference parameters are not allowed with RFC)

2,在SE80,建Function group

3,在SE37,创建Function Module(import的参数入药是value传值)

Note:一个Function

Group只能包含一个BAPI;参数传值;必须有有一个BAPIRETURN类型的EXPORT参数

二,封装

1,在SWO1,建Object Type

2,把Function Module作为一个Method加入,utilities->API

Methods->Add Method

3,release Object和Module。使在BAPI Browser 中可以看到。也就是外部能够调用。

三,调用

1,如在另一系统中用ABAP调用,先在SM59中建RFC联到有BAPI的R/3,(ZGOGO)

在SE38的程序中调用,Call Function “ZBAPIXXXXX” DESTINATION ZGOGO

EXPORTING …

2,如用JAVA调用

引入包;(不一定要用IBM的)

import com.sap.rfc.*;

import com.sap.rfc.exception.*;

import com.ibm.sap.bapi.*;

import com.ibm.sap.bapi.generated.*;

建立连接;调用。。。(See CALL_BAPI.java)

VBA for SAP

Private Sub CommandButton1_Click()

Set oFunction = CreateObject(“SAP.LogonControl.1”)

Set oConnection = oFunction.NewConnection

oConnection.Client = “500”

oConnection.Language = “EN”

oConnection.User = “user”

oConnection.Password = “pasword”

oConnection.ApplicationServer = “sap1.yok.com.cn”

oConnection.SystemNumber = “01”

result = oConnection.Logon(0, True)

Set ofun = CreateObject(“SAP.FUNCTIONS”)

Set ofun.Connection = oConnection

Set func = ofun.Add(“RFC_READ_TABLE”)

func.Exports(“QUERY_TABLE”) = “MARA”

If func.Call = True Then

Set oline = func.tables.Item(“DATA”)

Row = oline.rowcount

i = 1

Do While i <= Row

Cells(i, 1) =

Mid(Trim(oline.Value(i, 1)), 4, 22)

i = i + 1

Loop

Else

MsgBox “FAIL”

End If

End Sub

VBA2

Private Sub CommandButton1_Click()

Dim sapFunctionCtrl As

Object ‘Function Control (Collective object)

Dim sapConnection As

Object ‘Connection object

Dim theFunc As

Object ‘Function object

Set sapFunctionCtrl = CreateObject(“SAP.Functions”)

Set sapConnection = sapFunctionCtrl.Connection

sapConnection.Client = “800”

sapConnection.user = “user”

sapConnection.Language = “EN”

If sapConnection.logon(0, False) <>

True Then

MsgBox “No connection to R/3!”

End If

Set theFunc = sapFunctionCtrl.Add(“ZRFCPING”)

If theFunc.call Then ‘ call the RFC FM

MsgBox “RFC call is okay”

End If

sapFunctionCtrl.Connection.logoff

Set sapConnection = Nothing

Set sapFunctionCtrl = Nothing

End Sub

———————

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163915.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • django debug_eclipse使用debug调试

    django debug_eclipse使用debug调试介绍Django框架的调试工具栏使用django-debug-toolbar库,是一组可配置的面板,显示有关当前请求/响应的各种调试信息,点击时,显示有关面板内容的更多详细信息。应用1.安装

    2022年7月31日
    6
  • QQ的孤独

    QQ的孤独

    2021年11月21日
    362
  • css gray rgb数值,CSS3 调色板 颜色值对照表

    css gray rgb数值,CSS3 调色板 颜色值对照表HTML导入代码模板:ColorPaletteRuby#D8334Argb(216,51,74)Grapefruit#ED5565rgb(237,85,101)Bittersweet#FC6E51rgb(252,110,81)Sunflower#FFCE54rgb(255,206,84)Straw#E8CE4Drgb(232,206,77)Grass#A0D468rgb(160,212,104)…

    2022年5月17日
    51
  • pytorch mseloss_pytorch中文手册

    pytorch mseloss_pytorch中文手册1、均方差损失函数loss,x,y可以是向量或者矩阵,i是下标。很多的loss函数都有size_average和reduce两个布尔类型的参数。因为一般损失函数都是直接计算batch的数据,因此返回的loss结果都是维度为(batch_size,)的向量。(说的是一般的情况,这里返回的没有维度为(batch_size,)这种情况)2、nn.MSELoss()参数介绍(1)如果reduction=‘none’,直接返回向量形式的loss(2)如果redu

    2022年9月17日
    2
  • js清除浏览器缓存的几种方法(项目总结)「建议收藏」

    js清除浏览器缓存的几种方法(项目总结)「建议收藏」以前很少关注这方面的问题,直达我们的技术经理找我们说要换框架,为什么换框架呢,因为缓存的问题,原来的项目是用版本号作为刷新的依据的。因为微信公众号上有这样一个机制,使用版本好的话,有时做不到及时刷新,所以就用了vue.js,因为它有这样的功能就是如果某个文件里面的数据改变了,那么vue.js就会把这个文件的名字也相应的改掉,所以缓存里面的东西就用不了了,这样就做到了及时刷新,向后台请求数据。…

    2022年7月18日
    38
  • Java 时间格式化(java中如何格式化一个日期)

    1、通过MessageFormat转化String      dateTime=MessageFormat.format("{0,date,yyyy-MM-dd-HH-mm:ss:ms}",                                   newObject[]      {                                       …

    2022年4月17日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号