Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member
0 Kudos
1,662

Although it pretty straight-forward scenario, no content is present on SCN as a one-stop solution.

Business Requirement: Send an email to the customer with a body like with:

<<Dear Customer,

Click here to accept.

… >>

Clicking the hyperlink, the input parameter (Order ID) will be populated into the URL, and sent to the RFC in SAP ECC:

“htts://<server_pi>:<port>/…/zwebservice?p_order=123”

Solution: A simple HTTP to RFC scenario can help here.

Step 1: Create a HTTP_AAE sender channel in PI with ASMA properties and URL parameters checked. Since we have all our client's scenarios based on ICOs, I opted for the HTT_AAE channel.

Provide a name for the URLParamOne.


Step 2: Create a test dummy sender interface which could have a simple structure like

Step 3: Create a mapping between the dummy sender interface and receiver RFC. This message mapping will read the URL parameter and send it into the Order_ID field in the RFC.

For this purpose develop a UDF with no input parameters and one output parameter

String orderId = new String();

DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);

DynamicConfigurationKey urlParameter = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System", "URLParamOne");

orderId = conf.get(urlParameter);

return orderId;

Step 4: Create a RFC receiver channel for the SAP ECC system.

Step 5: Provide the URL to be inserted in the email to be sent to the customer.

http://<pi_server>:<port>/HttpAdapter/HttpMessageServlet?interfaceNamespace=<sender_namespace>&inter... interface>&senderService=<>&qos=EO&<nameofmainpayload as configuredin_HTTP_channel>=%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Cns0%3AMT_HTTP_Req%20xmlns%3Ans0%3D%22http%3A%2F%2F<interfaceNS>%2FCRM_ADAPTER%22%3E%0D%0A%20%20%20%3Cdata%3Etest%3C%2Fdata%3E%0D%0A%3C%2Fns0%3AMT_HTTP_Req%3E&<nameProvidedToURLParaminHTTPChannel=<order_id>

Note: Ideally, this URL will have the web-dispatcher/proxy server URL and not the actual PI server URL.

1 Comment
Labels in this area