Skip to Content

SAP PO backup communication channel.

Dear Community,

I am still learning the PO system, currently I am trying to set up configuration with backup's communication channel. What I mean is, when the main communication channel is not avaiable (e.g. the SFTP server is down), the backup communication channel should be used (backup SFTP server). Is there any possibility to achieve such a scenario on the PO?

Currently I am thinking about writing Java module which will be executed in Sender Communication Channel after CallSapAdapter, and the module will check if the timeout has been reached, based on this, the message will be put to the "Error" directory.

There will be another communication channel which will read the "Error" directory and will forward the messages to the backup SFTP sever.

What do you think about this? Is there any simplest way to achieve this?

Best regards,

Artur

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

4 Answers

  • Best Answer
    Aug 08, 2017 at 11:37 AM

    Hi Artur!

    Maybe you could take a look at sendNoOp() method of Apache Commons FTPClient class.

    For example, in Extended Receiver determination you use this method in java code to "ping" the server and set receiver accordingly. And for each receiver you set its own communication channel.

    It's just a thought at first sight.

    Regards, Evgeniy.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 08, 2017 at 12:05 PM

    I 'm aligned with Evgeniy that it would probably be a better idea to check availability of the endpoint before finalizing the receiver determination step so that the final receiver can easily be determined from your monitoring tools. Besides the option to ping the receiver from an enhanced receiver determination step, you could think of doing it straight from your sender system. We've had a scenario at one of my previous clients where we implemented a ping functionality in ECC to determine whether the main endpoint was up and raised an alert to support in case it wasn't. Instead of raising and alert, the message could automatically be flagged with a routing criterion that would prompt PI to select an alternate receiver.

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 08, 2017 at 10:54 AM

    Hi Artur!

    Wouldn't you please clarify how will your module check for timeout? And what do you mean saying "timeout" when the target server is down?

    Regards, Evgeniy.

    Add comment
    10|10000 characters needed characters exceeded

    • Hi,

      This is just my idea, so far I have no idea if there is a possibility to check the communication channel timeout from the Java.

      That is why I am searching for some better idea :)

      Best regards,

      Artur

  • Aug 16, 2017 at 09:12 AM

    Hello Patrick and Evgeniy,

    Many thanks both of you for the advises, I have used enchanced receiver determination. I have created message mapping from IDoc to message type "Receivers" from Basis 7.50, and as a "Service" I am returning my Business Component which is related with correct Communication Channel.

    In the UDF I have used the SocketAddress class, and then socket.connect to check if the IP:PORT is reachable.

    Best regards,

    Artur

    Add comment
    10|10000 characters needed characters exceeded