- You would like to implement AIF interface with automatic reprocessing of messages.
I would like to show you how to set up an automatic reprocessing for your AIF-interface.
I will use simplified interface BP_IN for business partner with the same SAP and RAW structures ZBPSTRUC:
For automatic reprocessing, we have to use a runtime group, created for our interface.
Use Tcode /n/AIF/PERS_CGR to create a runtime group, say RT1:
Don't remember about checkboxs "Runtime Configuration Group Active" and "Run Scheduled".
Then I create an Action...
...that uses a Function Module
First, we just use a Break Point to make sure our interface is working
Then I create a simple report to call AIF Interface:
ls_input type ZBPSTRUC. "our AIF structure
*Fill the structure with dummy data:
ls_input-BP-TITLE = 'Mr'.
ls_input-BP-NAME_FIRST = 'Mark'.
ls_input-BP-NAME_LAST = 'Levinson'.
is_any_structure = ls_input
IV_QUEUE_NS = 'BP'
IV_QUEUE_NAME = 'RT1' ).
I don't use AIF test tool because of Runtime Group specification in call.
Now let's try to check if all is Ok and run our report. Then check /n/AIF/ERR:
Yoo-hoo! It works!
Now lets try to setup an automatic reprocessing.
First, we need to define reprocessing action, using Tcode /n/AIF/REP_AC_DEF
Take a look, that we need to use a function module /AIF/RESTART_MSG and our Runtime Group created above.
Than, we need to assign a reprocessing action in Tcode /n/AIF/REP_AC_ASGN:
- You can select a special message class and message, so only messages with specified errors will be restarted
- You can define in what time period your message will be restarted. As shown, this message will be restarted in 5 minutes.
Also, you can define an intermediate status, for exapmle "In process", "Application error" and others.
Now you can have some experiments with your AIF message, for example with changing time or Intermediate Status.
Hope this blog was useful for you.