Calling RFC from VB
Hi,
I'm trying to call an RFC enabled function module from excel. My code in VB is:
Set theFunc = sapConn.Add("ZGETREVENUE")
theFunc.Exports("VBELN") = strSalesOrder
ResultsOk = theFunc.imports("OK_CODE")
Set objSalesOrder = theFunc.Tables("TBL_RETURN")
The table TBL_RETURN is coming back fine but the return code OK_CODE is always 0. Can someone point out what I'm doing wrong?
Thanks,
Gill
Sorry Gill, Dinesh is right.
The call method returns a true/false condition (true indicates a correct execution)
The code should look something like
Set theFunc = sapConn.Add("ZGETREVENUE")
theFunc.Exports("VBELN") = strSalesOrder
If theFunc.Call Then
ResultsOk = theFunc.imports("OK_CODE")
Set objSalesOrder = theFunc.Tables("TBL_RETURN")
else
msgbox "Call error"
end if
Cheers,
Michael
Similar Messages
-
Call RFC from DELPHI Windows Services Program
Hi all,
Are there any way to call RFC from DELPHI Windows Services Program?
Best regards.
Munur EBCIOGLUHi again Bhagat,
1. Yes, it's included on 7.4 ABAP Stack (SAP NetWeaver 7.4 SP8 - Optimized for SAP HANA, Cloud and Mobile - Service Release 2 available now!). In a recent customer, SAP licences GW by user but there are other license model like session licensing: https://store.sap.com/sap/cp/ui/resources/store/html/SolutionDetails.html?pid=0000009470&catID=&pcntry=US&sap-language=EN&_cp_id=id-1385059687642-0
2. You could install as an AddOn on your 7.3 system, there are many options depending on your desired infrastructure: SAP Gateway deployment options in a nutshell For example our customer have deployed Central Hub Gateway in a standalone stack ABAP to act as an standalone oData bridge between ABAP/nonAbap systems.
3. You could deploy SAPUI5 apps in 7.x, Java Web Servers or HTTP Web Servers. You must consider your SSO scenario:
- SSO Logon Tickets. You will need to configurate SSO Logon Tickets between SAP NW Portal & SAP NW Gateway & your backend (ECC, etc). In order to pass SAP session cookie you will need setup SAP Web Dispacther and access portal & gateway throught SAP WD with the same domain.
- SAML2 Tickets. This scenario lets you provide portal & gateway on different domains enabling SSO. You could configure SAP NW Portal as an Identity Provider and other systems must trust SAP Portal as IdP.
Cheers -
How to call RFC from Power Builder
Hi,
I am using Power Builder Tools and I want to know how can i call RFC from Power Builder
Thanks for ur replyHi,
Although I have not worked with Powerbuilder, I am sure if you have a certain level of proficiency with it, you will be able to code your logic that will call your wrappers written in VB/C/.NET etc. Check out the wonderful weblog by Thomas Jung on integrating ActiveX controls with ABAP Control Framework at https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/995. [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
Do get back if you have further queries.
Regards
Message was edited by: Shehryar Khan -
Example-- Call RFC from external Java Application
Update: I need code example to call RFC from External Java application. Can onybody help me?
RGDS
RP
hi all.
i want to create my own log for each interface.
i saw this blog:
/people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
my doubt is how to catch the error that i see in SXI_MONITOR y put it in a Sub-Objetc.
For example: in sxi_monitor i get the error for my interface NMUCustomer: "No receiver could not be found" or "Error Mapping Traformation".
I created an Object called ZNMUCUSTOMER and a Sub-Objetc called ZERROR.
what i must do to get the error I see in monitor and assign it to Sub-Object??
Rgds.
Message was edited by:
Rodrigo Pertierra
Message was edited by:
Rodrigo Pertierra
Message was edited by:
Rodrigo PertierraHi,
Oh, you are using ABAP mapping ......
then use the following in ABAP mapping ..
TRACE1,TRACE2,TRACE3.... for trace level 1,2,3......
http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/866ce290-0201-0010-338f-b8c3553aaa0f
Regards
Chilla -
Calling RFC from custom connector
Hi,
I am developing a custom connector for UWL to get tasks from 3rd party system.
I need to call a RFC from backend SAP system to complete Input data for this 3rd party provider.
I assume that I have to make an RFC call from getItems() method of connector.
Any idea how to call a RFC from UWL custom connector code?
Please help.
Thanks & Regards,
AmeyHello Karri,
Yes, I am aware of two ways of calling RFCs from Java code.
Normally, I use following approach to call RFCs from my other Portal Components (JSPDynpages): -
IPortalComponentRequest request = (IPortalComponentRequest) this.getRequest();
IPortalComponentContext myContext = request.getComponentContext();
IPortalComponentProfile myProfile = myContext.getProfile();
String sapSystem = myProfile.getProperty("SystemIdentifier");
ISystemLandscapeWrapper landscapeWrapper = (ISystemLandscapeWrapper) UMFactory.getSystemLandscapeWrappers().get(0);
ISystemLandscapeObject systemLandscapeObject = landscapeWrapper.getSystemByAlias(sapSystem);
IJCOClientService clientService = (IJCOClientService) PortalRuntime.
getRuntimeResources().getService(JCO_CLIENT);
request.getNode().putValue(LOCALE_NODE_KEY, Locale.ENGLISH);
IJCOClientPoolEntry poolEntry = clientService.getJCOClientPoolEntry(sapSystem,request);
JCO.Client client = poolEntry.getJCOClient();
client.connect();
IRepository repository = JCO.createRepository("repository", client);
IFunctionTemplate functionTemplate = repository.getFunctionTemplate(Z_BAPI_EMP_GBU_GET);
JCO.Function function = new JCO.Function(functionTemplate);
JCO.ParameterList importList = function.getImportParameterList();
importList.setValue("US", "OBJTYP");
importList.setValue(request.getUser().getUniqueName(), "USRID");
client.execute(function);
JCO.ParameterList outputList = function.getExportParameterList();
gbuCountryBean.setGbu(outputList.getString("GBU"));
gbuCountryBean.setCountry(outputList.getString("COUNTRYCODE"));
gbuCountryBean.setPersArea(outputList.getString("PERS_AREA"));
gbuCountryBean.setCompanyCode(outputList.getString("COMPANYCODE"));
When I tried implementing same in UWL custom connector, I am not able to get instance of 'request' object.
Any hints/ideas on this?
Hence as an temporary alternative, I wrote following to successfully execute RFC.
mConnection = JCO.createClient(sapclient, sapuser,
sappassword, "EN", saphost, sapsysnumber);
mConnection.connect();
mRepository = new JCO.Repository("GetLeaveRequestFlag", mConnection );
IFunctionTemplate ftemplate = mRepository.getFunctionTemplate(Z_BAPI_CHECK_LR_TO_APPROVE);
myFunction = new JCO.Function(ftemplate);
JCO.Field OBJECT_TYPE = myFunction.getImportParameterList().getField("OBJECT_TYPE");
OBJECT_TYPE.setValue("US");
JCO.Field USERID = myFunction.getImportParameterList().getField("USERID");
OBJECT_TYPE.setValue(p_userID);
mConnection.execute(myFunction);
JCO.Field leaveRequestFlag = myFunction.getExportParameterList().getField("FLAG_LEAVE_REQUEST_RECORD");
mConnection.disconnect();
But only catch here is that I need to create & maintain SAP logon credentials for a particular user manually.
It is not possible to single sign on connector user into SAP system (like its done above).
Any thoughts on this?
Thanks & Regards,
Amey -
Calling RFC from JSP : development component
Hi everyone,
I created JSP that call RFC from SAP/R3.
I have problem with the DestinationService.
Without DCs, it worked very good.
But since I created a DC for my JSP project, I have exception at run time regarding
the java.lang.NoClassDefFoundError: com/sap/security/core/server/destinations/api/DestinationService.
Eventhough I add the specific jar, I get an excpetion.
Thanks for the help.
DavidGo to the application-j2ee-engine.xml file and add following reference:
<reference
reference-type="weak">
<reference-target
provider-name="sap.com"
target-type="interface">tcsecdestinations~interface</reference-target>
</reference> -
Calling RFCs from Webdypro application!!!!
Can anybody show me a suitable example for calling rfc from webdynpro application.
Hi steve,
Look at this tutorial..
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/tutorial on accessing abap functions in web dynpro - 4.htm
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/tutorial on handling transactions with bapis in web dynpro - 5.htm
Follow the steps provided in those documents.
You can easily understand how to access ABAP functions from WebDynpro.
Let me know if you need more help on this.
Regards,
Karthick -
Calling RFCs from Web through XI
We have used SAP.NET connector in the past to call RFCs from ASP.NET pages from our public website. We have now decided to use XI as the enterprise integration engine going forward.I am interested to know whether anybody has used XI to call RFCs from ASP.NET webpages. I do know that the XI to SAP calls would be made through RFC adapter.Will the communication from ASP.NET page to XI be thourgh the HTTP adapter ? or is there any other smarter way. Can somebody point me to sample code for the calls through http adapter or a how to guide?
cheers
RameshHi
U have scenario like this ASP.NET->XI->RFC, that means u will send a value from the ASP.NET page to RFC thru XI and then this RFC will give result which will come to ASP.NET frontend.
For this go thru this blog it will help u to understand how to communicate from ASP.NET to XI
<b>https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1442</b [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]> [original link is broken]
Code Sample is provided in the blog.
Hope it helps.
Regards
Arpit Seth -
Sample Java code and detail to call RFC from Java clas developed in Eclipse
Hi All,
I am new to Java. I have downloaded Eclipse IDE and planning to use for developing Java application to send data to SAP by calling RFC JCO Interface.
I need a sample java code/tutorial step by step to create Java class for simple example to call RFC from Java.
I have downloaded SAPJCO3 from service market place.
Kindly help me to send steps involved to configure for JCO with my Eclipse with JCO.
Thanks in advance.
SharmaHi Sharma,
Please have a look at [Example: Using Generated Proxies to Call Function Modules |http://help.sap.com/saphelp_nw04/helpdata/en/b6/55e3952a902447847066a0df27b0d6/content.htm]
JCo Exceptions : http://help.sap.com/saphelp_nw70ehp1/helpdata/en/f6/daea401675752ae10000000a155106/content.htm
Hope it will helps
Regards
Arun -
Calling RFC from Adobe Interactive Form
Hello,
After creating and calling Adobe Interactive form from ABAP web dynpro, within the form designer is it possible to call RFC or Business Object method from the form script to get the data back from SAP for specific Click events?Yes,
this is possible, but not through pure RFC, but using webservices and webservice enabled function modules within SAP.
Technically it is quite simple. Create a functionmodule, and create a webserve from that (all SE37 or SE80 but from WAS 6.40). Generate a WSDL (with the Java tool) and import that into the form that you are designing. From there you can bind the data from the dataset (as defined in the WSDL) to screenfields or treat the data any other way Javascript can.
BTW. I only managed this so far by using anonymous logins, so with a password and username bound to the webservice (in SICF).
Hope this helps, regards, Hans Gmelig Meyling -
Hi
Is possible call a RFC (R3 SAP) from procedure/package ?
TiaHi,
Yeah, it is possible to call a RFC from Oracle Procedures with the user
of proper supplied packages rfcsdk or by use of Java Connector. -
Call RFC from java (j2ee) / call to j2ee from R/3
hello
i´ve browsed the forum for some time to find how to:
1.) call ejb from r/3 system via rfc
2.) call rfc enabled function modules on r/3 from within an j2ee enviroment
but i didn´t quite get it, because i was a bit confused about all the mentionend techniques
what i found out about
1.) use ejb (session bean) and jndi; configure RFC-Engine Service (we use sap webas)
2.) use jco / jca
(or all rfc enables rfm´s are available as web service, but didn´t find anything about this)
so my question:
are these the preferred techniques to connect j2ee (webAS) <-> r/3; if not are there any others, maybe easier methods?
and last but not least: are there any good online tutorials for this topic?
thanks in advance
franzJust as a short partial reply.
The generic Java --> RFC method is JCO (it will work on older versions as well), you can think of it as a JDBC driver where R/3 is the database, it behaves very similar in many ways.
EJB development on SAP WAS is really not any different from EJB development on any other J2EE server. The deploy tool is superb. very easy to use and the JNDI registry, etc. are standard stuff...
ABAP to EJB calls, haven't looked at this in over a year now, but back then we did a Proof Of Concept based on information at http://help.sap.com and it did work indeed. The only thing was back then that you needed to do a few tweaks to get it to work properly.
As mentioned above, look at the JCO examples and then you can ask more specific questions once you get stuck.
Good Luck!
Cheers,
Kalle -
Hi Everybody, i have some question:
Its Possible from PL / SQL, call RFC Functions?...
Please can you give me some examples or tell me if is technicaly impossible to do that?..
Thanks a lot.
Greattings
Wilmer FigueroaHey,
It is not that easy,
SAP didn't published an package to link PL/SQL to RFC,
however, it is possible with some work:
the PL/SQL can execute command on operation system of the DB
for example 'dir' in windows or 'ls' in unix,
instead of running dir/ls you can execute a program that will execute an RFC in the SAP system.
the program can be developed by .Net connector, see:
NW RFC SDK - is there a guide somewhere? -
Not able to call RFC from webdynpro
Dear Experts , I want to call a rfc from my webdynpro application , but its not working
I have a function module in my ECC system , that I want to call from webdynpro application of SRM system but its not working , it is not showing any error also
I called the function module like
CALL FUNCTION 'ZFM_SR_GET_PLANT_RFC' DESTINATION lv_logsys
TABLES
it_plant = lt_pr.
the control is just passing thru this function call but not going inside it,
at the same time when I call this function module from my report program in SRM it's working fine , is there anything else i have to specify to call it from webdynpro application ?
Please helpHi thomas ,
I have added the exception for my function module , but they didnt triggered ,while debugging I have observed that no exception occured at the point of call , and my sy-subrc eq 0 ,
se I did like this
CALL FUNCTION 'ZFM_SR_GET_PLANT_RFC' DESTINATION lv_logsys
TABLES
it_plant = lt_pr
EXCEPTIONS
system_failure = 1 MESSAGE msg
communication_failure = 2 MESSAGE msg
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID 'ZMSG01' TYPE 'E' NUMBER '00' WITH msg
INTO ls_message-message.
CALL METHOD wd_comp_controller->gref_message_manager->report_error_message
EXPORTING
message_text = ls_message-message.
ENDIF.
AT CALL FUNCTION statment the control is just passing thru it , and not going inside function module -
I would like to call an RFC from XI. I know technically how it works.
Here is the actual question. After the successful completion of the call I would like to call again.I am getting data from an external Oracle database using JDBC Adapter that polls every 15 seconds. I would like to see that data to be sent and processed in order.
Any suggestons welcome.Yes that is correct. How do you implement the part where you say after successful acknowledgement Send again.
In BPM we can have the following steps:
1.receive step to get data from the Ordacle database.
2.Send step to call the RFC.
3.Check the resonse. If the reponse is good and go to the Receive step again.
Means Receive step and send step have to be in a loop with the condition being the Acknowledgement good right. -
hey,
can someone please help me ?
I have a requirement where i need to pass a list of values like an ITAB from R/3 program to XI. How do i do that ? No file interface. RFC adapter is used.
Shud I write an RFC enabled function module in R/3 and call it from my main program ?During call function should I specify the destination as that of XI ?
Also some data will be returned by XI based on that ITAB and I need to use that in my main program in R/3. How do I handle that ?
kindly help.Elaborate more on the error. If possible try to provide the complete trace.
Pradeep
Maybe you are looking for
-
I am writing a paper and cant open it. I can only find it from file on the top on my screen > open recent... and then a message pops up saying thatI couldn'y open "CSI Milton" because the volume "untitled" couldn't be mounted and it says that I shoul
-
I'm referring to ANY part of the url. It just shows a blank page. Running Win XP Pro
-
Workflow runtime error because of terminating event
Hi all, In one of the workflow template, in one step, the Standard Task is having Terminating Event. At the runtime, at the particular step, when it was in process, the terminating event is triggered. The step got completed, But the workflow is not p
-
Hi how do I de enable an auto launch of iPhoto when a memory card is plugged in to Mac book pro
Hi can anyone help to stop iPhoto launching directly into the memory card or camera import utility when either is plugged in. Greatful
-
BC: How to set an attribute in the validateEntity method
Hi All, a little question that hopefully someone knows the answers to. We override the validateEntity() method in our Entity Objects to perform validation. During our validation based on the value of a (bound to a database column) attribute, we concl