In previous post Async/Sync bridge is established via modules at sender file adapter. This post will perform Async/Sync bridge via modules at receiver RFC adapter.
The high level overview still the same:
async_sync_simple_overview
Detailed overview:
Now the modules is configured at receiver RFC communication channel.
async_sync_2_detail_overview_ok
Explanation on above flow with focus on CC_RFC_ER1_RCV:
a) First module RequestResponseBean change the message type from asynchronous to synchronous by changing the message header.
c) The ReqRespBean parameter “passThrough” value “true” will pass the message to next module chain, which is RfcAFBean.
d) RFC synchronous call to get RFC response and return to third module ResponseOnewayBean.
f) Module ResponseOnewayBean change the message type from synchronous back to asynchronous.
g) Module ResponseOnewayBean also have parameter “interface” and “interfaceNamespace” and “replaceInterface”. So far tested on RFC receiver adapter, the interface seem is not replaced to “SI_FULLNAME_OUT_ASYNC”. The sender agreement at second scenario still required to use interface “SI_FNAME_LNAME_IN_SYNC”. However end result is working fine, able to translated to target MT and generate output file. See the sender agreement below for workaround solution.
h) Finally, the message go through second OM, mapped to MT_FULLNAME and output to receiver file.
 
Module configuration at CC_RFC_ER1_RCV:
async_sync_2_cc_rfc_rcv
List of ESR objects:
async_sync_2_esr_objects
Imported RFC function module:
async_sync_esr_objects_rfc
List of ID objects:
async_sync_2_id_objects
 

Enterprise Service Repository Objects:

Operation Mapping (FILE2RFC):
async_sync_2_om_file_2_rfc
Operation Mapping (RFC2FILE):
async_sync_2_om_rfc_2_file
For both message mapping and imported RFC is same like previous post. Please refer previous post.
Service Interface (1 of 4) for first OM, Outbound Async from File
async_sync_si_out_async
 
Service Interface (2 of 4) for first OM, Inbound Sync to RFC and Sync from RFC
async_sync_si_in_sync
Service Interface (3 of 4) for second OM, Outbound ASync from RFC
async_sync_2_si_fullname_out_async
Service Interface (4 of 4) for second OM, Inbound Async to File.
async_sync_2_si_fullname_in_async
 

Integration Directory Objects:

CS for first scenario from FILE2RFC:
async_sync_2_cs_file2rfc
CS for second scenario from RFC2FILE:
async_sync_2_cs_rfc2file
ID objects for first scenario from FILE2RFC:
async_sync_2_id1_sender_agreement
async_sync_2_id1_receiver_determination
 
async_sync_2_id1_interface_determination
async_sync_2_id1_receiver_agreement
 
ID objects for second scenario from RFC2FILE:
CC_DUMMY_BRIDGE_FILE_SND is just an empty File adapter, not used. Tried if I deactivate this adapter, still working fine.
Logically the interface should be SI_FULLNAME_OUT_ASYNC, but the module processing will try to find matching “SI_FNAME_LNAME_IN_SYNC” at sender agreement step. As a workaround, I changed to “SI_FNAME_LNAME_IN_SYNC”. Need maintain virtual receiver using original sender from first scenario which is “BC_Sender”, the sender agreement is try to find matching “BC_Sender” and will failed if it is not “BC_Sender”.
async_sync_2_id2_sender_agreement
Here specify the actual receiver “BC_Receiver”:
async_sync_2_id2_receiver_determination
Map RFC message to MT_FULLNAME:
async_sync_2_id2_interface_determination
Write to output file at CC_FILE_RCV:
async_sync_2_id2_receiver_agreement
 

Message monitoring:

Message log for CC_FILE_SND and CC_RFC_ER1_RCV:
async_sync_2_rwb_cc_file_snd_log1 async_sync_2_rwb_cc_file_snd_log2 async_sync_2_rwb_cc_file_snd_log30
 
Message log for CC_FILE_RCV:
async_sync_2_rwb_cc_file_rcv_log1 async_sync_2_rwb_cc_file_rcv_log2
async_sync_2_rwb_cc_file_rcv_log3

Thanks for viewing. Give comment if you see something is not correct on my setup above. Thanks.

ASync/Sync Bridge File-RFC-File using Modules at Receiver Adapter
Tagged on:             

5 thoughts on “ASync/Sync Bridge File-RFC-File using Modules at Receiver Adapter

  • September 15, 2015 at 11:34 pm
    Permalink

    Nice article with screen shots. It really helped me to configure AyncSync bridge. Thanks a lot.

    Reply
  • December 9, 2015 at 6:14 am
    Permalink

    HI Yeeloonkhoo,
    First of all I would like to thank you for writting the below blog
    ,this is very very useful,I was trying to follow your blog to do my
    IDOC to REST Asy/Sync, like you mentioned in your blog for some reason
    in REST receiver it was not replacing module Interface parameter name
    ,as per your blog you mentioned to use Synchronous Interface name (as
    used in 1st scenario), but when I am using Synchronous Interfacename
    in sender agreeemnt ,in interface determination its not identifying
    operation mapping , I thought to take some advise from you on this.

    Reply
    • April 27, 2016 at 11:13 am
      Permalink

      Thanks Divya. 🙂

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *