People around us are busy, and everything has to be learned by yourself. Bapi has classes and functions. The abbreviation of 'business Application Programming interface. Bapi is 'business Application Programming interface', similar to API. Which are stable, standardized methods to access data in R/3 To use bapis to access SAP Business Objects you will need a good understanding of object-oriented programming. You shoshould also have a basic knowledge of the R/3 system. Bapis can be accessed from varous programming environments, for example, Delphi/connect from Inprise (formerly Borland), Microsoft's Visual Studio, C ++ and Java platforms. you must be familiar with the development environment used to access bapis. Bapis are available from development platforms external to R/3 that support the remote function call (RFC) protocol. if you are developing your application in a non-object oriented programming language, you need to have RFC programming skills to call bapis via RFC. in particle, you need to know how to perform rfc cils. =========== Bapi simple implementation steps 1. Create a function module 1. In sm11, create the required structure 2. Create a function group in se80 3. In se37, create a function module Note: A function group can only contain one bapi. The parameter value must have an export parameter of the bapireturn type. 2. Encapsulation 1. In swo1, create an object type 2. Add the function module as a method, utilities-> API methods-> Add Method 3. Release object and module. In bapi browser. That is, it can be called externally. 3. Call 1. If ABAP is called in another system, Iot platform first establishes RFC in sm59 and connects to R/3 with bapi (zgogo) In se38ProgramCall function "zbapixxxxx" Destination zgogo exporting... 2. If Java is used to call Introduce the package; (not necessarily from IBM) Import com. sap. RFC .*; Import com. sap. RFC. Exception .*; Import com. IBM. sap. bapi .*; Import com. IBM. sap. bapi. generated .*; Establish a connection; call... (See call_bapi.java) VBA for SAP Private sub commandbutton#click () Set ofunction = Createobject ("sap. logoncontrol.1 ") Set oconnection = ofunction. newconnection Oconnectivity. 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 Vba2private sub commandbutton#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. connectionsapconnection. Client = "800" Sapconnection. User = "user" Sapconnection. Language = "en" If sapconnection. Logon (0, false) <> true then Msgbox "no connection to R/3! "End ifset 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 There are many others. There are several demos ~ |