on 08-19-2015 7:15 AM
Dear experts,
Currently i am working on RFC- HTTP_AAE Sync scenario. The busniess requirement of this interface is we pass the EMP id from RFC to Web application system using HTTP_AAE adapter then Target application will provide the employee details.
My challenge part of this design is even though we requested one employee details , Target application will provide all employee details in the response. I need to filter my requested Emp details at Message mapping . Please advise
Thanks,
Pavan T
Hi Pavan,
I think GetPayloadvalue bean, removepayload value bean, putpayload value bean could help you in this regard.
For this, in the http_aae channel, before sending the request message to server, use GetpayloadValue bean such that you will store the required emp number at the adapter level.
And after the standard module present in the http_aae channel, use putpayloadvalue bean to put the stored emp number in the above step in the response structure. Make sure you edit the response message structure such that you deliberately add a variable to hold the value of the requested emp number. This doesn't affect the interface funtionality as the http server sends the message and at PI level you are deliberately adding the requested emp number at the adapter level to achieve the interface functionality.
And in the mapping level, you can put certain conditions to filter out the details of the requested emp number from the ample details sent out by the server and according do the transformation.
Refer the below links for getpayloadvalue & putpayload value bean:
Let me know if you struck anywhere.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Dear Experts,
I am passinf all the data to target application. We are filtering the required data at target side. Hence closing this thread
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Pavan,
I don't think you can do the filtering using normal scenario. But you can check and use the following tricks if it works for you -
Make sure that when you get the response regarding all employee detail from target side you are getting the employee details what was sent through request parameter first and then the rest of the employee detail what you have not requested.
If this thing is ensured then You can make the root node of the RFC response parameter occurrence 0.1 , so it will always take the first record and your work will be done.
Thanks and Regards,
Apu Das
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Apu Das,
Thanks for the response. I am not so sure whether target application will send the emp details which requested. If it's not sending then setting RFC response parameter occurrence to 0.1 will won't work.
My target application will work such a manner like no matter which Emp ID details you requested for, It will give all the employee details it has. In PI response mapping stage you need filter the response based on your input request.
Thanks,
Pavan T
Its unreasonable on the target application part to send details of all employees than you can go for the HTTP_AAE -->RFC asynch scenario RFC can itself filter the records.
As for your current scenario the problem is that we can never know which employee_id RFC asked for once the request mapping is over
when the target application(HTTP_AAE) sends the response back then in the response mapping i hope it will be something like
Record 0 to unbounded
EMP_ID 1-1
etc
there it self you need to poppulate only that record which has the EMP_ID which RFC asked for to get the EMP_ID from ecc/RFC you can use a RFC lookup
but again it doesn't make sense to overload the channels in PI with the huge amount of data for all the employees so if target is adamant on sending all the details than it has to be filtered in PI to avoid overloading of the RFC channel too
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vinay,
Thanks for the quick response, I can't change the scenario to HTTP_AAE ----> RFC Because of technical limitations. HTTP_AAE (Web application ) don't have the functionality to trigger the data on his own, It's is kind of portal it contains all the details, If you need some details you need to initiate the call the and get the response.
I need to filter the requested emp details at response mapping level.
Thanks,
Pavan T,
Hi Vinay,
Thanks for the quick response, I can't change the scenario to HTTP_AAE ----> RFC Because of technical limitations. HTTP_AAE (Web application ) don't have the functionality to trigger the data on his own, It's is kind of portal it contains all the details, If you need some details you need to initiate the call the and get the response.
I need to filter the requested emp details at response mapping level.
Thanks,
Pavan T,
User | Count |
---|---|
88 | |
23 | |
11 | |
9 | |
8 | |
5 | |
5 | |
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.