Sap bapi
hi,
how to use ws_delivery_update to change delivery header
Moderator message: see your previous post.
Edited by: Thomas Zloch on Sep 28, 2011 2:54 PM
Hi Neilson,
One way to do that would be to enhance the Syclo classes so they return a warning instead of an error. It would be a complex change because there are many classes you'd need to enhance. Also you'd need to define the business rules e.g. Do you want every error ignored? Should someone back in the office be notified that an error has occurred and attempt to rectify the problem etc.
If you just want to avoid errors stopping the rest of the sync its probably best just to active the "enableTransactionFailureHandling" feature in SMP.
Agentry Server Configuration
Cheers,
Stephen
Similar Messages
-
No Connection btw JCAPS 5.1.2 and SAP ECC 6.0 whle creatining SAP/Bapi OTD
Hello.
We have the following problem trying to build SAP BAPI/RFC OTD.
1) JCAPS 5.1.2. SAP ECC 6.0. Jco version 2.1.7 (also tried 2.1.8, 2.0.12 with the same result). All steps were done according to SAP BAPI/ALE eWays user guides and readmes
2) SAP client already installed and worked ok on the same host as the JCAPS
3) It looks like the problem is in JCo. It seems like doesn't react when we trying to connect to SAP during creation of BAPI/RFC OTDs at design time.
Error message: partner not reached
ERRNO 10060
All ports are open and no restrictions imposed on JCAPS server. There are no connection log entries on SAP router host.
4)We tried to run sample Project which goes with eway, and the following entries in logical host log file were found:
[#|2007-06-12T11:35:13.171+0600|WARNING|IS5.1.2|STC.eWay.SAP.BAPI.com.stc.connector.sapbapiadapter.sapbapi.SAPConnector|_ThreadID=17; ThreadName=Worker: 5;|SAPConnector.isConnect(): JCO Client is null|#]
[#|2007-06-12T11:35:13.296+0600|INFO|IS5.1.2|STC.eWay.framework.management.com.stc.connector.management.util.Alerter|_ThreadID=17; ThreadName=Worker: 5;|sendAlert(), connection info: ConnectionInfo [ collaboration: cmBAPIOutbound_jcdFlightGetList, project: prjBAPIOutbound, component: eaSAPBAPI, deployment: dpBAPIOutbound, environment: envTest, logicalhost: LogicalHost1, integration server: IntegrationSvr1 ], monitor: ObjectReference [ name: SeeBeyond:GUID={70010000-D247521E130100-AC14015A-01},Name=prjBAPIOutbounddpBAPIOutbound|prjBAPIOutbound|dpBAPIOutbound|cmBAPIOutbound_jcdFlightGetList_eaSAPBAPI ], alert message: No connection established to SAP R/3 for user $$$$$$ on host $$$$$.|#]
[#|2007-06-12T11:35:13.312+0600|WARNING|IS5.1.2|STC.eWay.SAP.BAPI.com.stc.connector.sapbapiadapter.sapbapi.SAPConnector|_ThreadID=17; ThreadName=Worker: 5;|SAPConnector.isConnect(): JCO Client is not connected.|#]
[#|2007-06-12T11:35:34.781+0600|INFO|IS5.1.2|STC.eWay.framework.management.com.stc.connector.management.util.Alerter|_ThreadID=17; ThreadName=Worker: 5;|sendAlert(), connection info: ConnectionInfo [ collaboration: cmBAPIOutbound_jcdFlightGetList, project: prjBAPIOutbound, component: eaSAPBAPI, deployment: dpBAPIOutbound, environment: envTest, logicalhost: LogicalHost1, integration server: IntegrationSvr1 ], monitor: ObjectReference [ name: SeeBeyond:GUID={70010000-D247521E130100-AC14015A-01},Name=prjBAPIOutbounddpBAPIOutbound|prjBAPIOutbound|dpBAPIOutbound|cmBAPIOutbound_jcdFlightGetList_eaSAPBAPI ], alert message: Connection to SAP R/3 failed for user $$$$$$ on host $$$$$$.|#]
[#|2007-06-12T11:35:34.781+0600|SEVERE|IS5.1.2|STC.eWay.SAP.BAPI.com.stc.connector.sapbapiadapter.sapbapi.SAPConnector|_ThreadID=17; ThreadName=Worker: 5;|Unable to initialize SAP R/3 Client Connection|#]
Any help is appreciatedHi Yermek.
I guess you are placed and set all jars relates to bapi/rfc.
You need to pass atleast one parameter from jcd which will initiates the BAPI connection.
i.e atleast from jcd you need to send a request.
Hope it will work...
Thanks,
M.P.Rao. -
How to retrieve the data from SAP-BAPI by using VB Code
Hi ,
I am new to BAPI.
V have created an application in Visual Basic with the following fields
EmpNo , EmpName, Addr1, Addr2, City and Phone (Only for Test)
We have written the code for SAVING the data into SAP. Already we have
constructed a table with the respective fields in SAP.
For that we ourself created our own BAPI Structure / Function Group /
Function Module/ Business Object - RELEASED related elements.
1)Established the connection successfully.
2)Stored the data into SAP Successfully and v r in need of
3)HOW TO RETRIEVE THE DATA FROM SAP (USING GETLIST.....GETDETAIL....)
Following is the code :
'BAPI Structure : ZBAPIEMP
'Function Group : ZBAPIEMP
'Function Module : ZBAPI_EMP_CREATEFROMDATA
'Business Object : ZBAPIEMP
'Function Module : ZBAPI_EMP_GETLIST
Dim bapictrl As Object
Dim oconnection As Object
Dim boEmp As Object
Dim oZEmp_Header As Object
Dim oImpStruct As Object
Dim oExpStruct As Object
Dim oreturn As Object
Dim x As String
Private Sub Form_Load()
Set bapictrl = CreateObject("SAP.BAPI.1")
Set oconnection = bapictrl.Connection
oconnection.logon
Set boEmp = bapictrl.GetSAPObject("ZBAPIEMP")
Set oZEmp_Header = bapictrl.DimAs(boEmp, "CreateFromData", "EmployeeHeader")
Set oImpStruct = bapictrl.DimAs(boEmp, "GetList", "EmployeeDispStruct")
End Sub
Private Sub cmdSave_Click()
oZEmp_Header.Value("EMPNO") = txtEmpNo.Text
oZEmp_Header.Value("EMPNAME") = txtEmpName.Text
oZEmp_Header.Value("ADDR1") = txtAddr1.Text
oZEmp_Header.Value("ADDR2") = txtAddr2.Text
oZEmp_Header.Value("CITY") = txtCity.Text
oZEmp_Header.Value("PHONE") = txtPhone.Text
boEmp.CreateFromData EmployeeHeader:=oZEmp_Header, Return:=oreturn
x = oreturn.Value("Message")
If x = "" Then
MsgBox "Transaction Completed!..."
Else
MsgBox x
End If
End Sub
Private Sub cmdView_Click()
End Sub
COULD ANYBODY GUIDE ME, HOW TO RETRIEVE THE DATA FROM BAPI, FOR THE WRITTEN CODE.I didn't seen any other answers but here's how it's been done previously in our organization for a custom BAPI. In this example, we give material and language to return the part description. It's not specific to your project but may give you ideas..
-Tim
Option Compare Database
Dim SAPLOGIN As Boolean
Dim FunctionCtrl As Object
Dim SapConnection As Object
Sub SAPLOGOUT()
On Error GoTo LogoutFehler
SapConnection.logoff
SAPLOGIN = False
Exit Sub
LogoutFehler:
If Err.Number = 91 Then
Exit Sub
Else
MsgBox Err.Description, vbCritical, "Fehler-Nr." & CStr(Err.Number) & " bei SAP-Logout"
End If
End Sub
Function SAPLOG() As Boolean
'Verbindungsobjekt setzen (Property von FunctionCtrl)
Set FunctionCtrl = CreateObject("SAP.Functions")
Set SapConnection = FunctionCtrl.Connection
'Logon mit Initialwerten
SapConnection.Client = "010"
SapConnection.Language = "EN"
SapConnection.System = "PR1"
SapConnection.SystemNumber = "00"
'SapConnection.Password = ""
SapConnection.GroupName = "PR1"
SapConnection.HostName = "168.9.25.120"
SapConnection.MessageServer = "168.9.25.120"
If SapConnection.Logon(0, False) <> True Then 'Logon mit Dialog
Set SapConnection = Nothing
DoCmd.Hourglass False
MsgBox "No connection to SAP R/3 !"
SAPLOGIN = False
SAPLOG = False
Exit Function
End If
SAPLOG = True
End Function
Function MatDescr(MatNr As String)
Dim func1 As Object
Dim row As Object, X As Integer, ErsteNr As String
Dim DatensatzZähler As Long
Dim RowField(1 To 50, 0 To 1) As String, RowLine As Long
If Not SAPLOGIN Then
If Not SAPLOG() Then
MsgBox "No connection to SAP !", 16
SAPLOGOUT
Exit Function
End If
End If
' Instanziieren des Function-Objektes
Set func1 = FunctionCtrl.Add("Z_BAPI_READ_MAKT")
' Export-Paramter definieren
func1.exports("MATNR") = MatNr
func1.exports("SPRAS") = "EN"
DoEvents
If Not func1.call Then
If func1.exception <> "" Then
MsgBox "Communication Error with RFC " & func1.exception
End If
DoCmd.Hourglass False
SAPLOGOUT
Exit Function
Else
MatDescr = func1.imports("MAKTX")
End If
If MatDescr = "" Then
MatDescr = "PART NO. NOT FOUND"
End If
End Function -
Hello,
I'm getting a error while trying to create a SAP BAPI OTD using the Enterprise Designer. After I give the client number, username and password and click next the following error comes
Error in getBapiList(): Cannot convert field ID of type NUM to int
Do I need to configure something on the SAP server?
Cheers,
DeepakThis has been resolved. It was happenning because of the unicode settings of the SAP system and I was giving non unicode in the OTD setting. However, I'm facing another problem.
SAP ALE eway is not appearing in my designer. I have installed both SAP ALE and SAP BAPI eway and then uploaded those in the edesginer through the upload center. In the connectivity map drop down it shows the SAP BAPI eway but not the SAP ALE eway. I have done everything which is mentioned in the documents.
Regards,
Deepak -
Hello,
This is a cross post from LAVA forum...
I'm trying to integrate our test stations to SAP ERP. SAP stores data in busines objects in busines object repository. The objects are exposed over BAPI interface. There is a lot of different busines objects in the repository. SAP developers can also build new objects if they want. The objective is to read inspection characeristics from quality management module of SAP. I haven't done much ActiveX stuff, neither know much about SAP, so I started with a simple example that I found searching for BAPI examples. The example works fine in Excel. The example just reads some data from a sales order object.
Sub BAPI1()Dim
oBook As Workbook
Dim oSheet As Worksheet
Dim oBAPICtrl As Object
Dim oBAPILogon As Object
Dim oSalesOrder As Object
Dim oItem As Object
Dim iIndex As Integer
Set oBook = Application.ActiveWorkbook
Set oSheet = oBook.Worksheets(1)
' Initialize SAP ActiveX Control.
Set oBAPICtrl = CreateObject("sap.bapi.1")
' Initialize SAP ActiveX Logon.
Set oBAPILogon = CreateObject("sap.logoncontrol.1")
' Initialize the connection object.
Set oBAPICtrl.Connection = oBAPILogon.newconnection
' Logon with prompt.
oBAPICtrl.Connection.System = "Q02"
oBAPICtrl.Connection.Client = 101
oBAPICtrl.Connection.Logon
' Retrieve a sales order.
Set oSalesOrder = oBAPICtrl.GetSAPObject("SalesOrder","0010732181")
' Display Sales Order header data.
oSheet.Cells(2, 1).Value = oSalesOrder.salesdocument
oSheet.Cells(2, 2).Value = oSalesOrder.netvalue
oSheet.Cells(2, 3).Value = oSalesOrder.orderingparty.customerno
oSheet.Cells(2, 4).Value = oSalesOrder.documentdate
oSheet.Cells(2, 5).Value = oSalesOrder.items.Count
' Logoff SAP and close the control.
oBAPICtrl.Connection.logoff
Set oBAPILogon = Nothing
Set oBAPICtrl = Nothing
End Sub
I tried to implement that in LabVIEW. The logon and logout part works, I can also obtain SalesOrder object with GetSAPObject method. There is no error and probing the Object output from GetSAPObject methods gives an integer value - probably a reference to the SalesOrder object.
Now I can't figure out how do I read the object properties. It's very simple in VBA. I also don't know how do I call object methods. This is apicture from SAP BAPI documentatios showing available properties and methods.
I would appreciate any hints...
bye, MirkoNo, there isn't any reference type that matches BAPI Object. In fact, there can't be a fixed type reference, since BAPI object are actually function modules that SAP programmers write themselves using language called ABAP. I concluded that we can't call the object methods or read/write properties in LabVIEW, if we don't know the right type at development time. So, I gave up on BAPI API.
There are also other methods of SAP integration. O step down on abstraction scale is Remote Function Call (RFC) API. The API is much more involved, but it allows us to call functions that are behind BAPI objects. In a few test that I did it worked fine. The interface is exposed over three ActiveX controls - SAP Remote Function Call Control, SAP Table Factory Control and SAP Logon Control.
There is also .NET assembly and web services which I didn't tried.
Regards, Mirko -
BAPI-VB, Unable to call method GetDetail of USER Object using SAP.BAPI.1
Hi,
I am trying to call SAP Methods using Excel VBA.
In the below example, I am trying to get the user details.
I can solve this, if I use SAP.Functions object, but not when I use SAP.BAPI.1 object.
The Procedure GetUserDetails() works fine, but the 2nd one GetUserDetails2() fails?
Can you tell what is the difference in calling SAP method with SAP.Functions and SAP.BAPI.1 ?
Also how can I run the program GetDetails2() using SAP.BAPI.1
Const CNT_STR_USR As String = "XXXXX"
Const CNT_STR_PWD As String = "XXXXX"
Const CNT_STR_APPLN_SRVR As String = "ides47"
Const CNT_STR_SYSTEM As String = "IDS"
Const CNT_STR_SYS_NUM As String = "00"
Const CNT_STR_CLIENT As String = "800"
Const CNT_STR_LOGON_LANG As String = "EN"
Const CNT_STR_LOG_FILE As String = "C:sap_vb.txt"
Const CNT_INT_LOG_LEVEL As Integer = 9
'Works Fine
Public Sub GetUserDetails()
'Using SAP Functions
Dim obSAPFn As Object
Dim obFuncUsrDtl As Object
Dim obFuncRtrn As Object
Dim obFuncLogDtl As Object
Dim sRetStatus As String * 1, sErrText As String, sUsrGroup As String * 12
Dim iRetRowCount As Integer, iLoop As Integer
Dim bErrFlag As Boolean
'Set obSAPFn = New SAPFunctions
Set obSAPFn = CreateObject("SAP.Functions")
obSAPFn.Connection.ApplicationServer = CNT_STR_APPLN_SRVR
obSAPFn.Connection.SystemNumber = CNT_STR_SYS_NUM
obSAPFn.Connection.User = CNT_STR_USR
obSAPFn.Connection.Password = CNT_STR_PWD
obSAPFn.Connection.Language = CNT_STR_LOGON_LANG
obSAPFn.Connection.Client = CNT_STR_CLIENT
obSAPFn.LogLevel = CNT_INT_LOG_LEVEL
obSAPFn.LogFileName = CNT_STR_LOG_FILE
'Check For Connection
If obSAPFn.Connection.Logon(0, True) = False Then
MsgBox "R/3 connection failed"
Exit Sub
Else
If obSAPFn.Connection.IsConnected Then
' MsgBox "Connected"
Else
MsgBox "Not COnnected"
Exit Sub
End If
End If
'Get User Details.
Set obFuncUsrDtl = obSAPFn.Add("BAPI_USER_GET_DETAIL")
obFuncUsrDtl.Exports("USERNAME") = CNT_STR_USR
obFuncUsrDtl.Call
Set obFuncRtrn = obFuncUsrDtl.Tables("RETURN")
iRetRowCount = obFuncRtrn.RowCount
bErrFlag = False
For iLoop = 1 To iRetRowCount
If obFuncRtrn(iLoop, "TYPE") = "E" Then
' ErrorUsuario = True
sErrText = "E" & obFuncRtrn(iLoop, "ID") & obFuncRtrn(iLoop, "NUMBER") & _
" " & obFuncRtrn(iLoop, "MESSAGE")
MsgBox sErrText
bErrFlag = True
Exit For
End If
Next
If bErrFlag = False Then
Set obFuncLogDtl = obFuncUsrDtl.Imports("LOGONDATA")
sUsrGroup = obFuncLogDtl("CLASS")
MsgBox sUsrGroup
End If
Set obFuncRtrn = Nothing
Set obFuncLogDtl = Nothing
Set obFuncUsrDtl = Nothing
obSAPFn.Connection.LogOff
Set obSAPFn = Nothing
End Sub
' Does not work
Public Sub GetUserDetails2()
'Using BAPI Object
Dim obSapBAPICtrl As Object 'BAPI control object
'Dim obSAPConn As Object 'Connection object
Dim obSAPUSER As Object ' To Get Details of USER Object
Dim obLogondata As Object, obDefaults As Object, obAddress As Object, obCompany As Object
Dim obSnc As Object, obParameter As Object, obProfiles As Object, obActivitygroups As Object
Dim obReturn As Object, obAddComrem As Object, obAddRml As Object, obAddPag As Object
Dim obAddUri As Object, obAddSsf As Object, obAddPrt As Object, obAddRfc As Object
Dim obAddX400 As Object, obAddSmtp As Object, obAddTlx As Object, obAddTtx As Object
Dim obAddTel As Object, obAddFax As Object, obParameter1 As Object
Dim sRetStatus As String * 1, sTransId As String, sUsrGroup As String
Dim iRetRowCount As Integer, iLoop As Integer
Set obSapBAPICtrl = CreateObject("SAP.BAPI.1")
obSapBAPICtrl.Connection.ApplicationServer = CNT_STR_APPLN_SRVR
obSapBAPICtrl.Connection.SystemNumber = CNT_STR_SYS_NUM
obSapBAPICtrl.Connection.User = CNT_STR_USR
obSapBAPICtrl.Connection.Password = CNT_STR_PWD
obSapBAPICtrl.Connection.Language = CNT_STR_LOGON_LANG
obSapBAPICtrl.Connection.Client = CNT_STR_CLIENT
obSapBAPICtrl.LogLevel = CNT_INT_LOG_LEVEL
obSapBAPICtrl.LogFileName = CNT_STR_LOG_FILE
'Don't show the logon details
'Connect to SAP
If obSapBAPICtrl.Connection.Logon(0, True) = False Then
MsgBox "R/3 connection failed"
Exit Sub
Else
If obSapBAPICtrl.Connection.IsConnected Then
' MsgBox "Connected"
Else
MsgBox "Not COnnected"
Exit Sub
End If
End If
Could not find a way to pass the User Id?
Is this the right way to pass the user Id for this Object?
Set obSAPUSER = obSapBAPICtrl.GetSAPObject("USER", CNT_STR_USR)
Set obLogondata = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Logondata")
Set obDefaults = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Defaults")
Set obAddress = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Address")
Set obCompany = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Company")
Set obSnc = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Snc")
Set obParameter = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Parameter")
Set obProfiles = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Profiles")
Set obActivitygroups = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Activitygroups")
Set obReturn = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Return")
Set obAddComrem = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddComrem")
Set obAddRml = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddRml")
Set obAddPag = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddPag")
Set obAddUri = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddUri")
Set obAddSsf = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddSsf")
Set obAddPrt = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddPrt")
Set obAddRfc = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddRfc")
Set obAddX400 = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddX400")
Set obAddSmtp = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddSmtp")
Set obAddTlx = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddTlx")
Set obAddTtx = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddTtx")
Set obAddTel = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddTel")
Set obAddFax = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "AddFax")
Set obParameter1 = obSapBAPICtrl.DimAs(obSAPUSER, "GetDetail", "Parameter1")
sTransId = obSapBAPICtrl.CreateTransactionID()
'obSapBAPICtrl.TransactionId = sTransId
obSAPUSER.GetDetail Logondata:=obLogondata, Defaults:=obDefaults, Address:=obAddress, _
Company:=obCompany, Snc:=obSnc, Parameter:=obParameter, Profiles:=obProfiles, _
Activitygroups:=obActivitygroups, Return:=obReturn, AddComrem:=obAddComrem, _
AddRml:=obAddRml, AddPag:=obAddPag, AddUri:=obAddUri, AddSsf:=obAddSsf, _
AddPrt:=obAddPrt, AddRfc:=obAddRfc, AddX400:=obAddX400, AddSmtp:=obAddSmtp, _
AddTlx:=obAddTlx, AddTtx:=obAddTtx, AddTel:=obAddTel, AddFax:=obAddFax, _
Parameter1:=obParameter
iRetRowCount = obReturn.RowCount
If iRetRowCount > 0 Then
For iLoop = 0 To iRetRowCount
sRetStatus = obReturn(iLoop, "TYPE")
If sRetStatus = "S" Then
sUsrGroup = obLogondata("CLASS")
MsgBox sUsrGroup
End If
Next
End If
Set obSAPUSER = Nothing
obSapBAPICtrl.Connection.LogOff
'Set obSAPConn = Nothing
Set obSapBAPICtrl = Nothing
End Sub
Regards,
VikasThe problem was occuring because, the structure Return was not holding any values.
But the other tables which returned values were getting populated.
Regards,
Vikas -
SAP BAPI to get Component of any SAP Transaction
Dear All,
I Want to get the Component Id of any given SAP Transaction Code, with the help of some SAP RFC.
I tried to get the Component, I got it too but I need some SAP BAPI to do this task.
Some details are available over here,
Component of any SAP Transaction
Please Help.Hi Cvrian,
There is no BAPI for this but there are some RFC functions to get what you want (since they are not BAPIs they may change without notice but probably won't).
First get the transaction dev class info with RFC AKB_GET_TADIR.
For example if you give it OBJECT_TYPE = TRAN and NAME = SU01 you will get the dev class info for transaction SU01.
The dev class info includes a component (in this example HLB0100102). Now call RFC RH_GET_APPLICATION_COMPONENTS to get the list of component to map it to the human-readable component (in this example BC-SEC-USR-ADM).
Hope that solves your requirement. This is not really a SolMan question but I wanted to be helpful -
Executing SAP BAPIs in Adobe Workflow Server
Hello there,
I'm trying to use the following BAPIs to create an absence record for employee using a web enabled form with Adobe workflow:
BAPI_ABSENCE_CREATESIMULATION
BAPI_ABSENCE_CREATE
But it seems they are not stable? Or at least do not give the expected results.
The dates are correct and there is no conflict with the SAP calendar.
Dose any one know a better way to create the absence record? Is there any RFC to do that? Or should I use ALE/IDoc to post the transaction?
Many ThanksHi Harish,
Create an action in web dynpro which carries out the business processing. Assign this action to InteractiveForm UI element's onSubmit event.
This specifies that when you click the SubmitToSAP button in the form, the event onSubmit is triggered which actually executes the code provided in the Action.
Steps:
when you go to interactive form's properties,
you can see in the Events' section two events....
1).onCheck
2).onSubmit
just create an action for onSubmit event and choose the action from onSubmit dropdown in the Properties of Interactive form.
just go to the implementation of the same view and you will find a method for it already created for you to write your code in.
In addition also make sure that you have installed the xACF component on the client machine.
Hope this helps. -
Webservice - XI - SAP(BAPI)
hi
i have one scenario using webservice, in this one i will post some input through webservice to BAPI which is in sap R/3 , and bapi output to publish using webservice, i have no idea of webservice, or how to use webservice in this scenario. Could you please help me in doing this one.
Regards
Pradeep P N
nullHi,
Got the requirement finally
Before giving the solution, what you are now trying to do is what in XI terminology is called , <b>"Expose an Outbound Interface as a Webservice in XI"</b>.
<b>Integration Repository</b>
Follow this blog HTTP - RFC and create all the Integration Repsoitory content as shown in this blog,
<a href="/people/community.user/blog/2006/12/12/http-to-rfc--a-starter-kit">HTTP to RFC - A Starter Kit</a>
<b>Integration Directory</b>
This will be similar to a HTTP RFC , with just 2 added steps,
1. Create a Sender SOAP adapter and a Sender Agreement for the same.
2. Define a WSDL.
1 , is quite simple and is like any other SOAP adapter and Agreement.
2. To define the WSDL, look into section 3,,.2.2 of this document,
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a22024f79">How to use SOAP Adapter</a>.
Regards
Bhavesh -
JCo error when calling from webmethods sap adapter to SAP BAPI
Hi,
I am getting an error "[SAP.102.9000] JCo error: (104) RFC_ERROR_SYSTEM_FAILURE - connection closed without message (CM_NO_DATA_RECEIVED)" when webmethods sap adapter is calling BAPI in SAP. The BAPI is working fine in SAP.
Can anyone suggest me a possible solution.
Thanks,
Sarath.BAPI-step by step procedure
http://www.sapgenie.com/abap/bapi/example.htm
list of all BAPI's
http://www.planetsap.com/LIST_ALL_BAPIs.htm -
Write table to SAP (BAPI, ActiveX...)
Hello everybody,
I have to do a SW that interfaces with SAP. I already have functions to login/out, read/write a single parameter, and read a table (all this trough BAPI ActiveX), but I’m not able to write in a SAP table.
Does somebody already have done this job?
Many thanks for any advice!
Pierre-Alain
(LV2010SP1 or 2014SP1, W7, SAP Business Client 3.5)Many thanks, nyc, mike, for your responses and interest!
I find SAP doc not so easy to transpose into LabVIEW code...
Error happends like this:
Login SAP: OK (work also in other programs)
Add name of the specific BAPI function to be used: OK (work also in other programs)
Input of several single parameters (strings): OK (work also in other programs)
Input of 2 Tables (2x same VI): see code here enclosed. No error at this point. (never tested in other programs)
Call of BAPI function (code tested OK in other programs) but returns an error "SYSTEM_FAILURE"
Reading some return parameters (code tested OK in other programs, but do not works here because of System_Failure)
Close ref and Logoff (code tested OK in other programs)
I enclose also in this mail an image showing the main VI (named "Créer contenu HU.vi") making all this procedure. You will see that the error comes after the function call.
I'm not a SAP pro (and far away!), but the SAP specialist has tested the BAPI function (with php?) and the function works. So the first suspect code is the one attached here.
Please ask me if you need more details.
Many thanks in advance, best regards,
Pierre-Alain
Attachments:
SAP Write Table.png 52 KB
Créer contenu HU.vi.png 170 KB -
Sample java program which will call SAP bapi function to get PO details from SAP
Hi all,
I am new to bapi with sap, Any one guide me to interface with sap in java to get details from PO order,From Java end if i put particular PO number it will get details about PO from SAP...Any one guide me r send sample code..
Thanks in Advance.
Thanks
Baskar.hi guru,
Can you please send me the same to my e mail as well...
my email address is [email protected] ..Thank you
Regards,
Baskar. -
Calling SAP BAPI Interface from PL/SQL
Hi,
How can i call BAPI Interface from PL/SQL.
If you have any documents or examples please send me.
Thanks in Advance
Best Regards,
SreekanthHi !
declare
req utl_http.req;
resp utl_http.resp;
v_txt clob;
begin
req := UTL_HTTP.begin_request ('http://rp.yoc.de/http/test/mbInfo/1.0/?smsbalance=total','GET','HTTP/1.1');
resp := UTL_HTTP.get_response (req);
dbms_output.put_line(resp.status_code);
dbms_output.put_line(resp.reason_phrase);
utl_http.read_text(resp,v_txt);
dbms_output.put_line(v_txt);
UTL_HTTP.end_response(resp);
end;I'm not exactly sure what are you looking for .. but that response from your post you can get with my code ( it's tested ).
T
Edited by: ttt on 12.3.2010 5:10
My code is very "poor" , there is no error checks no header setup's no basic authentication no proxy settings ..... -
Update SAP BAPI already imported in XI Repository
Hello all.
I'm a XI beginner.
I use a specific R3 bapi in one of my namespaces. So this RFC is already imported in XI repository and the process is today implemented in my customer's production environnement.
Following a new need, I must add an importing field to this bapi.
So I do the following :
- in R3 (Developpment environnement), I added my new param to my bapi,
In XI, I want to update the rfc structure in order to be able to do the mapping update.
Must I import again the rfc ? (because I don't manage to change the structure manually)
What are the actions I must exactly do in both Integration Repository and directory ?
Thanks very much.hi Sylvian,
yes you must reimport the bapi again
and it will be: Updated this time
but first do: where-used on the old bapi
to see all the mapping programs etc. with which this bapi
was used - so you can update it after the BAPI structure update
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions">XI FAQ - Frequently Asked Questions</a> -
Not able to checkout Files using Java Code and SAP BAPI from DMSServer
Hi
Able to download / checkout the files using T-Code SE37 (BAPI_DOCUMENT_CHECKOUTVIEW2).
But when same RFC is executed from Java, it alsways says -
Message ::::::::Document LGL/10000000003/000/00 does not exist
My inputs in Java Code is as below -
import java.io.*;
import java.util.*;
import com.sap.mw.jco.*;
//CREATED ON - 10-APRIL-2010.
public class BapiDocCheckOutview {
public static void main(String args[]){
try{
if(mConnection!=null){
JCO.Repository repository=new JCO.Repository("AraSoft",mConnection);
JCO.setMiddlewareProperty("jco.middleware.allow_start_of_programs", "SAPFTPA");
JCO.Function function=repository.getFunctionTemplate("BAPI_DOCUMENT_CHECKOUTVIEW2").getFunction();
//End of get function.
System.out.println("Before execution1");
if(function !=null){
JCO.Field DOCUMENTTYPE = function.getImportParameterList().getField("DOCUMENTTYPE");
DOCUMENTTYPE.setValue("LGL");
JCO.Field DOCUMENTNUMBER = function.getImportParameterList().getField("DOCUMENTNUMBER");
DOCUMENTNUMBER.setValue("10000000003");
JCO.Field DOCUMENTPART = function.getImportParameterList().getField("DOCUMENTPART");
DOCUMENTPART.setValue("000");
JCO.Field DOCUMENTVERSION = function.getImportParameterList().getField("DOCUMENTVERSION");
DOCUMENTVERSION.setValue("00");
JCO.Field GETSTRUCTURE = function.getImportParameterList().getField("GETSTRUCTURE");
GETSTRUCTURE.setValue("1");
JCO.Field GETCOMPONENTS = function.getImportParameterList().getField("GETCOMPONENTS");
GETCOMPONENTS.setValue("X");
JCO.Field ORIGINALPATH = function.getImportParameterList().getField("ORIGINALPATH");
ORIGINALPATH.setValue("C:
TEMP
DMS_");
JCO.Field GETHEADER = function.getImportParameterList().getField("GETHEADER");
GETHEADER.setValue("X");
JCO.Field PF_FTP_DEST=function.getImportParameterList().getField("PF_FTP_DEST");
PF_FTP_DEST.setValue("SAPFTPA");
//JCO.Field PF_HTTP_DEST=function.getImportParameterList().getField("PF_HTTP_DEST");
//PF_HTTP_DEST.setValue("SAPHTTPA");
System.out.println("Here Setting Values Inside Structure ::DOCUMENTFILE");
JCO.Structure DOCUMENTFILE=function.getImportParameterList().getStructure("DOCUMENTFILE");
DOCUMENTFILE.setValue("1","ORIGINALTYPE");
DOCUMENTFILE.setValue("WWI","WSAPPLICATION");
DOCUMENTFILE.setValue("ZHCL_CS","STORAGECATEGORY");
DOCUMENTFILE.setValue("E0DF7893E2BD5DF19C07001517B4A299","APPLICATION_ID");
DOCUMENTFILE.setValue("E0DF7893E2BD5FF19C07001517B4A299","FILE_ID");
DOCUMENTFILE.setValue("X","CHECKEDIN");
DOCUMENTFILE.setValue("X","ACTIVE_VERSION");
//DOCUMENTFILE.setValue("LGL","DOCUMENTTYPE");
//DOCUMENTFILE.setValue("10000000003","DOCUMENTNUMBER");
//DOCUMENTFILE.setValue("000","DOCUMENTPART");
//DOCUMENTFILE.setValue("00","DOCUMENTVERSION");
//JCO.Field GETCOMPONENTS = function.getImportParameterList().getField("GETCOMPONENTS");
//GETCOMPONENTS.setValue("X");
//JCO.Field GETHEADER = function.getImportParameterList().getField("GETHEADER");
//GETHEADER.setValue("X");
mConnection.execute(function);
If anyone have an Idea on what I have missed out...
Please do advice me.
Thanks
PrashantHi
To update in the initial requirement, I have added (prefixed, zeroes) in Document No., doing that, now the application is able to find the document, but not able to transfer the same from DMS Server to my local Machine, always giving the following error -
Type ::::::::E
Message ::::::::File d:\dms\z_IPI_PRASHANT01.doc cannot be created
Please let me know, if some services needed to checked in SAP System or some more information to be provided in RFC.
Thanks
Prashant
Dear Experts
Any advice on this. Still not able to download the documents from DMS Server.
I have also added few more code in my Java program -
private int use_sapgui;
public void setSapGui(int use_sapgui){
use_sapgui = 2;
PLease help !!
Regards
Edited by: Prashantroy on Sep 26, 2011 12:49 PM
Hi,
Further to my earlier Mail, while checking the Trace suing SM59 in ECC System I got the following Error -
Trace file opened at 20111010 142232 India Standard Time, SAP-REL 701,0,134
======> cannot open SAPGUI
ABAP Programm: SAPLSYSE (Transaction: )
User: IPI_PRASHANT (Client: 220)
Destination: SAPFTP (handle: 3, , )
SERVER> RFC Server Session (handle: 1, 43220900, {5D1DF3E0-ACBD-F11F-8EA0-00A0D1
SERVER> Caller host:
SERVER> Caller transaction code: (Caller Program: java)
SERVER> Called function module: RFC_START_PROGRAM
Error RFCIO_ERROR_SYSERROR in abrfcpic.c : 1742
FUNCTION: 'exec_sapgui'
cannot open SAPGUI
PROG =sapftp erpdev sapgw00 43232164 IDX=4
Can someone help me in getting this sorted out.
Thanks N Regards
Edited by: Prashantroy on Oct 10, 2011 2:32 PM -
Oracle equivalent of SAP BAPI/RFC? Stored Procedures?
Hello all.
I am looking at the development of integrating our desktop application with Oracle. We would like to upload/download objects from Oracle EAM such as Assets, Work Orders, etc using ODP.NET.
We already have a similar connector to SAP. In this system, we use SAP RFCs in combination with the SAP .Net Connector. SAP RFCs are like a middleware layer that carries out similar functions to the GUI and can be called from .Net. EG you might have an RFC named RFC_CREATE_EQUI, which matches Create Equipment in the GUI. SAP contains many default RFCs covering most of its functions.
I would like to know if there is anything similar to SAP RFCs in Oracle? I believe that stored procedures could be similar, but there are no defaults stored in Oracle.
Or do we just have to access the DB directly with SQL? If so, how do we go about data verification? EG So that I cannot upload an Asset without an Asset Number.
Thanks in advance for your help!I think I've found out what I need - Oracle Open Interfaces / APIs.
Could someone explain to me the easiest way of calling these from .NET?
Thanks!
Maybe you are looking for
-
How can I turn off over the air sync settings on my Mac iPhone
Hi, For some reason I am attempting to sync my iPhone with my laptop as usual but now in the iTunes app when I attach my iPhone and go to Info, it reads: Your contacts are being synced with your iPhone over the air from MobileMe. Over the air sync se
-
HP Laserjet Pro 200 Printer Not Responding Wirelessly to Macbook Pro 13 Using Mavericks OS
My printer has worked fine wirelessly since upgrading to Mavericks in Jan 2014. Last week my printer stopped responding both wirelessly and with the cable. I can print wirelessly from my I-Phone and I-Pad. I have reset the printers (deleted them)
-
White space between header and main content
Hello all! I have a 25-27px white space between my header and main content. I read through fixes in the forum and took out any height that would effect this gap. I still can't get rid of this white space. Your help is greatly appreciated! Here's the
-
Usage Decision IP address / Terminal Number
How to get Usage Decision IP address / Terminal Number?
-
when I go to add an account it only gives me options of FB, twitter, google, Samsung Microsoft exchange. If I go into 'email' it asks for POP3 server and port. I don't understand these things, would like to get emails on my phone.