on 06-07-2005 11:52 AM
Hi everyone,
I have a real strange problem trying to call custom RFC via WebDynPro.
If I call for example the BAPI_HELPVALUES_GET passing table and structure...everything works.
But if I call a simple custom RFC, it seems that the RFC gets emty tables...
Can someone help with this issue....
Thanks in adavnce for any help.
Hi David,
After the execute function invalidate the output node as given below
wdContext.nodeOutput.invalidate();
Check for syntax.
Do get back for further clarifications.
Regards,
Vijith
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vijith,
I did write the wdContext.nodeOutput.invalidate();
after the execution.
Here is the description of this simple RFC :
- <b>import</b> : 2 parameters ->
sname1 type char6 (pass by value checked)
sname2 type char10 (pass by value checked)
- <b>export</b> : 1 parameter ->
ex_msg type text100 (pass by value checked)
- <b>tables</b> : 1 parameter ->
mytable like mytype
where mytype is a type that I created which is composed of 2 fields : fname type char6 and lname type char10.
I repeat that any other standard BAPI, I success calling them.
Do you see something wrong with that ?
Thanks for the help.
Hi David,
I think problem is lying here only.
I m guessing that you want to pass some values in the table.And depending upon these table values you are giving some response.
You have to use table from the RFCInput node and outside the Output node.
Let me know that which are the mendatory parameters to get some output?
Regards,
Bhavik
Hi everyone,
We solved the problem.
The problem was on the ABAP side.
In fact, I was sending the tables right but the person who wrote the code did a wrong checking about the tables.
He wrote in the RFC :
if table is initial.
return a wrong message.
exit.
etc.
He was only looking at the header of this table and of course when you send a table via RFC, the header is empty.
Notice that this RFC works good when you execute it from SAP/R3.
Thanks to everyone.
Hi David,
Is ur RFC alone working (ABAP side or not)..
If ur RFC is taking any Input and r u supplying all the fields properly with correct types means check for type compatablility. so please just check and let me know if everything is correct.
Thanks & Regards,
Sirisha.R.S
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi David,
Is ur RFC alone working (ABAP side or not)..
If ur RFC is taking any Input and r u supplying all the fields properly with correct types means check for type compatablility. so please just check and let me know if everything is correct.
Thanks & Regards,
Sirisha.R.S
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi David,
Is ur RFC taking any Input and r u supplying all the fields properly with correct types and all.. so please just check and let me know everything is correct and ur RFC alone is working on ABAP side or not..
Thanks & Regards,
Sirisha.R.S
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi David,
As you said that the RFC is working on the R/3 side check out with the input parameters you are providing to the RFC from Dynpro.I mean are you binding the input values to the node.
Check out if you are invalidating the required output node.Do check that the input you are setting are correct.
Regards,
Vijith
Hi Vijith,
The invalidate is done after the execution methode.
In my wdDoInit() method, I wrote :
RFC1Input input = new RFC1Input();
wdContext.nodeRFCInput().bind(input);
input.setSname1(new String());
input.setSname2(new String());
Maybe something must be define in the ABAP code in order to receive tables.... ???
Hi
If you are doing a invalidate after the execute method please do the invalidate() statement outside the Catch Block. My guess is that you are doing it immediately after the execute. Do the invalidation outside and see. You will get the data :).
Apart from that your code seems fine.
You dont have to do anything for tables until and unless you want to pass some data to the tables as input.
regards
ravi
User | Count |
---|---|
85 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.