Skip to Content

So far, till we arrived at Java Single stack of PI, we have the luxury of scheduling most of the house keeping jobs on ABAP stack. One of the most important of those jobs is automatic message restarting. Let’s see how we can create our own Automatic Message Restart Job in PI (This blog is based on PI 7.3 EHP1, SP05).

To begin with, the default jobs that were provided on the AAE are

  1. Default Version Archive Job
  2. Default Delete Job
  3. Default Recover Job

Screenshot-1.jpg

Let’s consider a message that got failed (deliberately though) in the receiver file adapter. The message Id is ‘f1042b3f-b580-11e2-a376-000001ffb7ce‘.

Screenshot-2.jpg

Now, it’s time to create our own message restarting job. Go to Configuration and Monitoring Home -> Adapter Engine -> Background Job Processing Monitor -> Create Job . You will get the below screen.

Screenshot-3_1.jpg

In the Job Details tab, select the job type as Restart and fill the other attributes. The job name is given to be MyMsgRestartJob in this case. Move on to the Parameters tab.

Screenshot-4_1.jpg

In the drop down list, there are two options. Select MAX-RESTART and fill the parameter with the appropriate value.

Screenshot-5_1.jpg

Move on to the Rules tab.

Screenshot-99_1.jpg

Create a Rule Definition. This rule definition has various options. Few of them are Sender Component, Receiver Component, Interface, Interface Namespace etc. Based on the above combinations, you can create your own rule. This job restarts only those messages that are in NDLV state and that meet the rule created in this step.

Screenshot-6_1.jpg

Save and Activate the Job.

Screenshot-7.jpg

Now that our job is active, it will be executed in the next one hour (as per scheduled earlier). But, in order not to wait till the next run and at the same time to prove that the job works fine, we will execute the job manually by hitting the button Execute Now in the above image.

Execute the job and check the message log of the same message that we considered in the beginning.

Screenshot-8_1.jpg

Observe the time that we had executed our message restart job and the log version that shows that the “Message restart triggered by restart job: MyMsgRestartJob”.

Go ahead and create your own jobs… 🙂

To report this post you need to login first.

10 Comments

You must be Logged on to comment or reply to a post.

  1. Rahul Dutta

    Hi,

    I have created the Automatic Message Restart job with my own user id by following the steps mentioned in your blog. But when I am clicking the Execute Now button nothing happens. Also the job is not getting executed automatically at mentioned intervals (say in every 1 hour). The status is showing ‘Unknown’ with no green box.

    Is there anything I am missing?

    Thanks,

    Rahul

    (0) 
    1. Jochen Hätty

      Message in status “holding” will be re-send automatically.

      How often and how long that retries take place, is defined in the inbound communication channel of that specific scenario.

      Or are you referring to a different status?

      (0) 
      1. charan kumar

        H!,

        Thanks for reply.

        In my case messages are getting holding status even predecessor delivered successfully.Until re-send manually messages are not delivering. I want to create background job to resend holding messages.

        1) Is it possible to create background job to resend HOLD(Not System Error) message for particular channel?(without using EJB)

        2)I am using SOAP channel at receiver. How to configure inbound channel to resend holding messages.

        Thank you.

        (0) 
  2. Avinash Varma

    Hi,

     

    Could you please tell me if there is a way to resend the cancelled messages in SAP PI 7.31

    My requirement: Messages getting cancelled in SAP PI 7.31 as the target system is down and i need to resend them manually.

     

    Thanks,

    Avinash.

    (0) 
  3. Sampathi Geetha

    Hi,

    Using the above blog there is any way to cancel the error messages for a particular interface in adapter engine.

    could you please suggest any solution for this.

    (0) 

Leave a Reply