RFC-Call using dynamic Parameters

Dear Forum!
I'd like to call a RFC function module using a dynamic parameter list.
I can either call
CALL FUNCTION bapiname DESTINATION fsystem.
or
CALL FUNCTION bapiname
        PARAMETER-TABLE lt_param
        EXCEPTION-TABLE lt_excep.
but not both combined!
The ABAP docu says, both should work together. If using DESTINATION the same options as for standard FM calls are allowed... (seen at: Transaction ABAPHELP, search for CALL FUNCTION, choose topic 4 for RFC)
Who is wrong? The docu or me? How can I combine both?
Cheers
Torsten

Hi Abir,
thanks for your helpful answer.
But I don't understand this:
For calling a remote enabled FM, it needs to be released which means the parameters would be fixed and thus the RFC layer does not allow using parameter table in such cases.
The FM resides on a remote system. It does not matter me, whether the FM is released, fixed or done with something other. As long it is reachable, I'm fine.
I am wondering about the fact, that I can call a local FM dynamically, but cannot do so for a remote call.
In the online documentation you can read, that a remote call function (with parameter destination ) has the same options like a standard call function. Actually this statement seems to be wrong. Right?
Best regards
Torsten

Similar Messages

  • Prompting for password and username only when using dynamic parameters

    Post Author: Co3023
    CA Forum: Crystal Reports
    How do I stop CR XI prompting for password and username only when using dynamic parameters. When no dynamic parameters are used CR XI isn't prompting for the DB user name and password. The report is run from an application which passes the user name and password. I am using Oracle and the problem is both with the native oracle driver and the ODBC RDO driver.

    Post Author: jehanzeb
    CA Forum: Crystal Reports
    I didnt ask you to change it to static I said I took the parameters totally out of the report. Saved it. Then re-enter the dynamic parameters into the report and it worked for me. That might have worked for you, not sure why you changed it to static.
    Ok I have just created a quick report using dynamic parameters, it didnt ask me for the username password.
    Can you create a sample report - just to test the db? and see if it works? add only 1 or 2 fields in the report, create parameters (dynamic) and see if it works
    why don't you embed the username and password in your application, it won't ask for username password then.

  • Problem passing a table parameter in rfc call using the function control

    I try to pass a Table as parameter to a Function Module using the SAP.Functions library (part of SAP frontend controls) from a Visual Basic (VBA) program.
    The function module has been verified to work when invoked from SAP FrontEnd Function Builder.
    The SAP RFC Control is created with
    Set sapFunctions=CreateObject("SAP.Functions")
    Following code snippet shows how I attempt to set exports and add a table row before calling the function module:
    sapFunctions.Connection = sapConnection
    Set sapMaterialUpd = sapFunctions.Add("Z_SD_BAPI_SALES_DATA_UPD")
    With sapMaterialUpd
    <i>'set exports</i>
         .Exports("PA_GLPUPDLEVEL") = "S"
         .Exports("PA_VKORG") = "FI14"
    <i>'append table row</i>
         .Tables("IT_SALES_DATA_UPD").AppendRow
         .Tables("IT_SALES_DATA_UPD")(1, "VKORG") = "FI14"
         .Tables("IT_SALES_DATA_UPD")(1, "MATNR") = "W_3100"
         .Tables("IT_SALES_DATA_UPD")(1, "DATBI") = "99991231"
         .Tables("IT_SALES_DATA_UPD")(1, "DATAB") = "20041231"
         .Tables("IT_SALES_DATA_UPD")(1, "KBETR") = "2222"
         .Tables("IT_SALES_DATA_UPD")(1, "KONWA") = "EUR"
    End With
    <i>'call the function module</i>
    If sapMaterialUpd.Call() = True Then
        <i>'do something with the return tables here...</i>Else
        Debug.Print sapMaterialUpd.Exception
    End If
    The Call() returns <b>FALSE</b> and the exception is <b>"SYSTEM_FAILURE"</b>. The connection also resets.
    The local logfile that the control generates shows that an exception occurs at the point of the call:
    <i>10.02.2005  17:54:20.766 Packing Parameters for Z_SD_BAPI_SALES_DATA_UPD
    Packing Parameter PA_GLPUPDLEVEL.
    Packing Parameter PA_VKORG.
    Packing Table 0.
    Packing Table 1.
      10.02.2005  17:54:20.766 *** Calling  RFC Function 'Z_SD_BAPI_SALES_DATA_UPD'
      10.02.2005  17:54:20.986 RFC CALL status = RFC_SYS_EXCEPTION
      10.02.2005  17:54:20.986 RFC Error: RFC_IO27
      -Status:CODE=CM_DEALLOCATED_NORMAL STATUS=CM_NO_STATUS_RECEIVED DATA=CM_COMPLETE_DATA_RECEIVED ID=69415076
      -Message:connection closed
      -Internal Status:IO HANDLE=23 DRV=EXT LINE=1420 CODE=27 : GET ID=ffff LINE=861 CODE=7
      10.02.2005  17:54:20.986 Function call finished.</i>
    Seen next code snippet. If the Table object is not touched, the function call goes through without any problems:
    sapFunctions.Connection = sapConnection
    Set sapMaterialUpd = sapFunctions.Add("Z_SD_BAPI_SALES_DATA_UPD")
    With sapMaterialUpd
    'set exports
        .Exports("PA_GLPUPDLEVEL") = "S"
        .Exports("PA_VKORG") = "FI14"
        'do <b>not</b> append a table row, for testing only ;-)</b>
    End With
    <i>'call the function module</i>
    If sapMaterialUpd.Call() = True Then
    <i>    'do something with the return tables here...</i>
    Else
        Debug.Print sapMaterialUpd.Exception
    End If
    This code works perfectly when calling the function. It returns TRUE and behaves normally. The function module returns descriptive response text in a table telling that the table was empty, according to the BAPI implementation.
    So is there something special needed here <i>after</i> appending the table row and <i>before</i> making the Call to properly attach the table as a parameter for the function module?
    Can this be a bug in the SAP RFC Control? The version of the wdtfuncs.ocx is 6206.6.45.54.
    Any hints are welcome!

    hi All partner,
    who solved this problem , I meet it too and
    can't clear it.
    SAPfunc := sapfunctions1.Add('z_get_sfcs_dn_mo');    
    SAPitab := sapfunc.tables.item ('I_DNMO');
    SAPitab.appendrow;                                       SAPitab.value(1,'MANDT') := '220'; 
    SAPitab.Value(1,'VBELN') := '2150000001';
    SAPitab.Value(1,'POSNR') := '50';
    SAPitab.value(1,'MATNR') := '19-99999-00'; 
    SAPitab.value(1,'AUFNR') := '921241512001';
    SAPitab.value(1,'DEDAT') := '2005/09/09';
    SAPitab.value(1,'LFIMG') := '100';  
    IF  SAPfunc.call = true then
      begin
      end
    else
        begin
        showmessage('call fail!!') ;
        end;
    end;
    RFC source code as below
    FUNCTION z_get_sfcs_dn_mo.
    ""Local interface:
    *"  TABLES
    *"      I_DNMO STRUCTURE  ZDN_MO
      data: wa type zdn_mo.
      LOOP AT i_dnmo.
        wa-mandt = i_dnmo-mandt.
        wa-vbeln = i_dnmo-vbeln.
        wa-posnr = i_dnmo-posnr.
        wa-matnr = i_dnmo-matnr.
        wa-aufnr = i_dnmo-aufnr.
        wa-dedat = i_dnmo-dedat.
        wa-lfimg = i_dnmo-lfimg.
       modify  zdn_mo from wa.
        insert into zdn_mo values wa.  --dump at here
        commit work.
      ENDLOOP.
    T/C: ST22 error message say at
      insert into zdn_mo values wa. ---dump at here
    the sapfunc.call returns fail.
    Message was edited by: jorry wang

  • Problems using Dynamic parameters with Crystal Reports and SBO 8.8

    Has anyone been able to successfully use a dynamic parameter in Crystal Reports with 8.8 using the Business One connector? When we try we get an additional logon to the database that pops up and the logon fails.
    We need this because we want to return live lists of PO documents from the server for selection. We are also trying to use nested dynamic parameters, because we want to first return the PO document based on the PO number, and then chose specific rows based on a field value in POR1.
    It works if we don't use the Business One connector, but then the report doesn't function properly inside of SAP.
    Any ideas would be appreciated.

    I have tried using tokens but they are too simple. I need something like a subselect where you first select one value and then another that is a subset of those values. Apparently the tokens can't even use a "where" clause.
    SAP dances around Dynamic parameters, but won't come out and say that they can't be used with the B1 connector. If that is the case then they should just say so and stop wasting our time. Apparently Crystal is not truely interfaced with B1, just sort of hanging out with it.
    I don't really care other than I have to do this select, subselect. If someone has a way to do that with tokens I would love to hear it.
    Thanks,
    Roy

  • Problem passing an export parameters in rfc call using the function control

    Hello,
    I use SAP Remoute Function Control (wdtfuncs.ocx) in my C++ application. I can execute remote functions, if they don´t need any export parameters:
    CSAPFunctions m_Functions;
    CFunction f;
    f.m_lpDispatch = m_Functions.Add("RFC_CREATE_DOCUMENT_MASTER");
    f.Call();
    How can I set the export parameters?
    Any help appreciated.
    regards,
    Vladimir

    check out this thread
    Re: Sample code in ASP to connect SAP?
    Regards
    Raja

  • Consuming an RFC Call Using the BAPI eWay

    Greetings all,
    We are trying to set up a scenario in which we have a custom RFC function that we are calling synchronously using the BAPI eWay. Here, an ABAP program calls an RFC which is like a proxy on the JCAPS server. On the JCAPS side, we are wanting to map the RFC onto a Web Service call and pass the results back as the exporting parameters of the RFC. While the examples demonstrate the use of an asynchronous function module such as IDOC_INBOUND_ASYNCHRONOUS, it is not clear to me how to work with synchronous calls. Any information would be greatly appreciated. Thanks.
    Best Regards,
    James Wood
    Bowdark Consulting, Inc.
    [email protected]

    I have a similar (if not identical) problem. Chris, your reply to James is talking about the process originating within JCaps. In my scenario (and it sounds like James' too), the process is originating from SAP. What I'm trying to do is this:
    SAP calls to my JCD - this is the part that I'm having trouble with
    My JCD does something with the data sent to it from SAP (call a database or whatever)
    The JCD responds back to SAP so that the request/reply cycle can complete and the SAP program has what it needs
    When I create an OTD object in JCaps using my RFC, there doesn't seem to be a way to make the JCD that I want to create use that OTD as a source for the input message.
    James, if I'm way off base here, let me know and I'll go get my own thread. :)
    Any help or direction would be appreciated. I've Googled this to death and have come up short.

  • RFC call from XI, parameters trouble

    Hi,
    I have a BPM that makes a synchronous call to a BAPI, but the result is not the one expected:
    Using SXMB_MONI, I can see the request message send to the SAP system:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <rfc:BAPI_ADDRESSEMPGETDETAILEDLIST xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
      <EMPLOYEE_ID>00000179</EMPLOYEE_ID>
      </rfc:BAPI_ADDRESSEMPGETDETAILEDLIST>
    and the answer:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <rfc:BAPI_ADDRESSEMPGETDETAILEDLIST.Response xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
    - <RETURN>
      <TYPE>E</TYPE>
      <ID>PG</ID>
      <NUMBER>009</NUMBER>
      <MESSAGE>No data stored for Addresses in the selected period</MESSAGE>
      <LOG_NO />
      <LOG_MSG_NO>000000</LOG_MSG_NO>
      <MESSAGE_V1>Addresses</MESSAGE_V1>
      <MESSAGE_V2 />
      <MESSAGE_V3 />
      <MESSAGE_V4 />
      </RETURN>
      <ADDRESS />
      </rfc:BAPI_ADDRESSEMPGETDETAILEDLIST.Response>
    That would seem to be perfect if the employee 179 was not exisitng or had no addresses, but that's not the case.
    Using SE37 and the BAPI_ADDRESSEMPGETDETAILEDLIST function in the target system, and the same employeeID 00000179, I got the address as expected that is registered for that employee.
    Does anyone have any idea where the trouble can come from?
    Cheers,
    greg

    Ok,
    the point was on the name field for the Employee number !!!
    I used the same mapping from an other function, changed the function name, but didn't suspected the parameter had another name, it had !!!
    with
    <?xml version="1.0" encoding="UTF-8" ?>
    - <rfc:BAPI_ADDRESSEMPGETDETAILEDLIST xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
      <EMPLOYEENUMBER>00000179</EMPLOYEENUMBER>
      </rfc:BAPI_ADDRESSEMPGETDETAILEDLIST>
    I have the right answer !!!
    Thanks for the inputs and hope this would avoid somebody doing the same error

  • Asynchronous RFC calling using BPM

    Hi to all,
    I have this scenario:
    FILE -> XI -> RFC -> XI
    I want to use the BPM to do this, thus I have built this BPM:
    START -> RECEIVE -> BLOCK1(SEND) -> BLOCK1(RECEIVE) -> STOP
    My problem is that I want to use an asynchronous scenario and, thus, when XI sends message to RFC, BPM seems to become inactive and the BPM is not able to receive the RFC Response. How can I solve this problem? How can I mantain BPM active to receive the RFC Response?
    Thanks to all!

    Hey,
    I suppose you are trying to do a similar senario
    The scenario must be executed asynchronously, but there needs to be an automatic confirmation that the business data was successfully processed (this would be the equivalent of an applicationacknowledgement). Cross-component BPM (ccBPM) will be used to process the confirmation message.
    How To… Use BAPI wrappers in asynchronous scenarios with ccBPM
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/59ef6011-0d01-0010-bfb0-b51381e00509
    <b>Cheers,
    *RAJ*
    *REWARD POINTS IF FOUND USEFULL*</b>

  • Changing Dynamic Parameters Database Location

    The user creates a report using an access database called MyDatabase.MDB located in c:\MyFolder.
    The report uses a dynamic parameter from MyDatabase.MDB
    The user now wishes to run the report against MyDatabase.MDB located in Z:\SharedFolder
    I do the following
    crReport.DiscardSavedData
    crDBTable.SetTableLocation "Z:\SharedFolder\MyDatabase.MDB", "", ""
    The problem is the report correctly uses the data from Z:\SharedFolder\MyDatabase.MDB
    However the Dynamic Parameters is still built using the data from C:\MyFolder\MyDatabase.MDB

    What version of CR runtime are you using?
    If it's the RDC then there is no API to set location for Dynamic Parameters. RDC is old technology and has not been updated since version 9 to take advantage of any new functionality including those types of parameters.
    Only option is to alter your report to not use Dynamic Parameters or convert to CR .NET assemblies using RAS.
    Thank you
    Don

  • Dynamic parameters data source

    Database: Sybase ASA 9
    Crystal: Developer 11 SP4 , activex viewer
    Application: Powerbuilder 11
    I am embedding crystal reports into a powerbuilder 11 application. The crystal reports (.rpt files) are created in Crystal reports developer 11 sp4. The application programmatically change the DSN for the crystal reports to connect to the database that the customer is using. This works fine except when the report contains dynamic parameters (parameter select values from table in database to select from). The dynamic parameter(s) still references the DSN used in development as appose to the new (changed) DSN , although the rest of the report use the "new" DSN. I have spend many many hours on this and are at a lost on how to fix this ?
    Following is in short the code I use:
    FOR li_table = 1 TO iole_crx_report.database.tables.count
    // get connection properties collection for this table
    iole_crx_connection_info = iole_crx_report.database.tablesli_table.connectionproperties
    iole_crx_connection_info.DeleteAll()
    iole_crx_connection_info.add("DSN",itrx_database_info.Lock )
    iole_crx_connection_info.add("User ID",itrx_database_info.userid)
    iole_crx_connection_info.add("Password", itrx_database_info.dbpass)
    iole_crx_connection_info.add("UseDSNProperties",TRUE)
    iole_crx_connection_info.add("AllowCustomConnection", TRUE)
    NEXT
    iole_crx_Database.Verify()

    Hi Ludek,
    Thanks for the reply.
    The machine that I am testing on have an installed version of CR 11 SP4 development. I can change the report source for any report that does not have dynamic parameters. At the moment the reports that I am testing does not have subreports. It is a very simple two table report using dynamic parameters.
    Changing the datasoure programmatically with both data sources (DB servers) running on the machine eveything works fine. When I refer to the two data sources I mean the data source that was used to create the report and the datatsource that I want to change to in the application to retrieve data from.
    Does reports with dynamic parameters auto create subreports for the dynamic parameter(s) ?
    I have tested this and it does not seem so. That could have possibly explained this.
    I hope this gives you a clearer idea of what is happening?

  • RFC Call Missing

    I am a novice at this and would like to get some suggestions from the gurus in this forum. I am trying to integrate an RFC call CTS_API_CREATE_CHANGE_REQUEST. But I do not see this RFC call using SE37. So I have two basic questions.
    1) Is there a transaction that I can use to see a list of all RFC calls that are available in my R/3 system ?
    2) Do I have to do anything to enable RFC calls, to be invokable from outside the SAP system ?
    TIA
    Yogi.

    Ok, I am posting this for the benefit of everyone.
    I figured out a mechanism by which all RFC and BAPI calls within an R/3 system can be listed.
    1) Invoke Transaction SE37
    2) With the cursor on the 'Function Module' field press F4.
    3) In the popup that shows , press the 'Information System' button on the task bar at the bottom. Its the one with the 'Binocular' graphic.
    4) Another popup called "R/3 Repository Information System: Function Modules" opens up.
    5) The third icon from the right of the task bar at the bottom reads "All Selections". It is a white icon, with a green mark and a black down arrow. Click on that.
    6) You now get an advanced search screen with lots more options than the ones previously displayed.
    7) One of the radio's says "RFC modules", another checkbox says "Only modules for BAPI".
    8) Set whatever you are interested in and hit the "Check"
    Enjoy.
    Thanks,
    Yogi

  • RFC Call Timeout

    Hello,
    Is there any possibility to configure a timeout for an RFC call using .NET Connector 3.0?
    RfcDestination.Ping() throws an RfcCommunicationException in about 6..7 seconds if the backend system is not reachable:
    LOCATION    CPIC (TCP/IP) on local host with Unicode
    ERROR       timeout occured
    TIME        Tue Apr 15 15:37:18 2014
    RELEASE     720
    COMPONENT   NI (network interface)
    VERSION     40
    RC          -5
    MODULE      nibuf.cpp
    LINE        4795
    DETAIL      NiBufIConnect: route connect '/H/xxx.xxx.xxx.xxx/H/xxx.xxx.xxx.xxx'
                timeout
    COUNTER     2
    The same exception type thrown from the same RfcDestination.Ping() can originate from another cpp file:
    LOCATION    CPIC (TCP/IP) on local host with Unicode
    ERROR       partner 'xxx.xxx.xxx.xxx:xxxx' not reached
    TIME        Fri Mar 21 15:01:36 2014
    RELEASE     720
    COMPONENT   NI (network interface)
    VERSION     40
    RC          -10
    MODULE      nixxi.cpp
    LINE        3285
    DETAIL      NiPConnect2: xxx.xxx.xxx.xxx:xxxx
    SYSTEM CALL connect
    ERRNO       10060
    ERRNO TEXT  WSAETIMEDOUT: Connection timed out
    COUNTER     2
    But in the latter case the timeout is much longer, about 30 seconds.
    Is it possible to configure timeouts?

    Hi Hynek,
    I would like to make timeouts predictable. If I set the timeout to 10 seconds I would expect that the operation would succeed or fail not later than in 10 seconds.
    Time decorator approach could be one possibility, thanks for the hint! Unfortunately, that one is not a panacea because using another thread for functional module call would not be always desirable.
    Tweaking system settings would be the option I would try to avoid because of several reasons. E.g. because my process would not have full control over the settings and another process can easily change them. Or or because my process would not have enough permissions to change the settings. But thanks for that hint as well.
    Regards,
    Michail

  • Dynamic Parameters - DB Connections

    <p class="ssiBODYCOPY">Hello...<br /><br />I am using CR XI with Oracle 9i DB.<br />I have multiple reports using Dynamic parameters.<br />When i run the report it&#39;s creating separate DB <br />connections for each parameter. Is there anyway i can <br />setup the report so it will use only one connection for <br />all the dynamic parameters..<br />Appreciate your input!<br /><br />Thank you</p>

    If this is the same as the problem I had a few years ago, it was a parameter in the database setup rather than an option you could control from your client end.  Although it appeared that I was establishing multiple connections, the connections were actually being created inside the Oracle server.  The effect of the setting on the tables was to establish additional connections for processing transactions when it looked like parallel processing would speed up the system. I don&#39;t remember the full details, but I do remember it got very nasty between the DBA&#39;s and the application developers.

  • How to intialize to zero for dynamic parameters in crystalXIR2

    <p>Hi Guys,</p><p>I am new to crystal reports. I am using dynamic parameters in my reports. <br />1)Each report consists of 6 or more dynamic parameters. Can it possible to intailise to Zero(like in static parameters).<br />2) my main report consists of dynamic parameters. each parameter consists of three database columns.    i am selecting data by using SQL concatenation operator (data looks like 051012-1000-countryname)<br />and sub-report consists of static parameter ( data looks like 1000. it is middle column of dynamic parameter of  main report). Can it possible to link parameters of main report and sub report</p><p>Can anyone give me idea. <br />Thanks Guys.</p>

    Moderator message - Cross post locked
    Total Questions:  283 (131 unresolved)
    Please also close your old posts and assign po1nts to helpful answers.
    Rob
    Edited by: Rob Burbank on Jul 29, 2010 9:50 AM

  • How to create Dynamic Parameters for between dates

    Hi,
    I have a requirement to create a crystal report with between dates using dynamic parameters.
    I am getting data from 'BEx Query' where already filters were defined on Date field. So While I am creating a crystal report these filters are displaying under 'Parameter Fields' automatically as Static. When I execute the report I am getting these Date's as Dropdown box. But as per the 'help' in crystal reports, static values won't get updated if any changes were taken place in backend system.
    I have created a Dynamic parameter 'StartDate', but the values are not getting populated in Dropdown box.
    Please let me know how to achieve this requirement.
    Thanks in advance.
    cheers
    dev

    Please re-post if this is still an issue or purchase a case and have a dedicated support engineer work with your directly

Maybe you are looking for

  • Naming Services cannot work well!!!

    Hi, I have configured the AM2005Q4 and Policy agent with apache, apache http.conf file is like ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass /hzycportal http://exchange.hzliqun.com:8013/hzycportal ProxyPassReverse /hz

  • Failover is not working in clustering

    we installed infrastructure in the one system and added 2 instances app1.mycompany.com,app2.mycompany.com into it. for loadbalancing we r using webcache. we configured origin servers,site definitions,site-server mappings. in the cluster two instances

  • HD and DVD Drive failure

    I was on my computer when it froze. I tried to reboot it but I had the screen with the question mark/finder folder. I put in my install CD but it wouldn't boot from the CD. I tried to eject the CD: eject key, mouse button during startup, open firmwar

  • Metadata data missing

    The metadata folder in the library module is missing in the right panel. It was present when I first purchased Lightroom 3 but has since disappeared from view, but don't know exactly when. Thanks in advance Paul

  • HT5368 Why doesn't clicking on "Inactive Plug in" work after installing Java v10.6_35 update?

    I've been using a Java app to view Autodesk files on the City of Los Angeles NavigateLA site. Basically, you enter a street address and get a specialized map capable of retrieving land contours, Lot numbers, landslide areas, special zones, etc. I had