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 appreciated

    Hi 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

  • Error in SAP BAPI

    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,
    Deepak

    This 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

  • SAP BAPI ActiveX Interface

    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, Mirko

    No, 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,
    Vikas

    The 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 Thanks

    Hi 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
    null

    Hi,
    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,
    Sreekanth

    Hi !
    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
    Prashant

    Hi
    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