on 12-19-2008 9:25 PM
Hey,
Is this possible ??
You import the RFC structure from 4.6 into PI where you have 3 tables defined xxx, yyy and zzz. All have been defined under the "tables" tab in SE37 for that function module. In PI, you use xxx as inbound parameter and again xxx as outbound parameter.
So u think when values are passed from PI back to 4.6 RFC, will the xxx get changed values ?
Is there any setting to be done for this ?
Or
should I have to define another table say mmm (just like xxx in 4.6 ) and the outbound in PI is mapped to this mmm ?
I suspect if ABAP is able to take back the changed value from PI. But i am not sure if PI can really use the same table as both inbound and outbound ??
Any idea ?
thks
Hi
Check your Response Payload in SXMB_MONI, might be corresponding value not exist in R/3 that passed by you.
Try to send value that already exist, so you can get response.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks to all for trying to help me resolve this issue. Yes I did check the payload response from PI , that XML file has exactly the values that are passed back to the RFC in 4.6 !! So PI is passing the values perfectly. But in 4.6 I am not getting the values !! Let me show u my code snippet...
Main program
Data declaration has declaration of internal tables as
DATA: BEGIN OF *inpdata OCCURS 0,
belnr LIKE bsid-belnr,
vbeln LIKE vbak-vbeln,
END OF *inpdata.
DATA: BEGIN OF *vbapdata OCCURS 0,
vbeln LIKE vbap-vbeln,
posnr LIKE vbap-posnr,
....
....
END OF *inpdata.
*inpdata is populated with just the belnr values...vbeln is empty. and this is what is passed from 4.6 to ECC 6.0 thru my RFC as shown below.. Also the abap proxy in ECC 6.0 returns values in *vbapdata as well fills the vbeln in inpdata and passes it back to PI and PI in turn passes it back to 4.6
CALL FUNCTION 'Zget_result_data' DESTINATION 'z_ecc_dest'
TABLES
INP_DATA = *inpdata
VBAP = *vbapdata
EXCEPTIONS
SYSTEM_FAILURE = 1 MESSAGE l_msg
COMMUNICATION_FAILURE = 2 MESSAGE l_msg.
COMMIT WORK.
In PI, INP_DATA is used in inbound message and both INP_DATA and VBAP are used in outbound.
I am able to receive values in *vbapdata. But *inpdata contains just those belnr values that were passed from 4.6 to ECC 6.0 and not teh vbeln that were populated by ECC 6.0.
I tested the proxy at ECC 6.0 independently, it retrieves the values...
I checked the response XMLs from PI to 4.6 and it contains the belnr and vbeln !!
So what is going wrong !!
I hope I have explained clearly what I have in hand...
any more suggestions ?
thanks
Hi all,
I tried my best to resuse the same internal table to receive the values from PI but that did not work and not able to figure out so far why !!
So I had to use the workaround of receiving the data back in another internal table in 4.6. This solved my problem as of now.
Hence closing this thread.
thanks to all for ur time.
So u think when values are passed from PI back to 4.6 RFC, will the xxx get changed values ?
Yes, it will get changed.
Is there any setting to be done for this ?
Just use the interface for sync scenario.
should I have to define another table say mmm
No need
Regards,
Prateek
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi,
>So u think when values are passed from PI back to 4.6 RFC, will the xxx get changed values ?
>Is there any setting to be done for this ?
this is how RFCs work in standard so with PI also
table parameters are passes in both directions
there are no settings for that the call just has to be synchronous
Regards,
Michal Krawczyk
http://mypigenie.com XI/PI FAQ
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.