kill message in translation / suppress

Homepage Clovertech Forums Cloverleaf kill message in translation / suppress

  • Creator
    Topic
  • #114925
    Stewart
    Participant

    In reviewing the cloverleaf documentation related translations it states that suppress will transmit the message.  I had a translation that sent a duplicate message when I had set it be suppressed.  What’s the best way to kill the message if you don’t want it to be sent?

Viewing 3 reply threads
  • Author
    Replies
    • #114926
      Paul Bishop
      Participant

      To me, the wording in the documentation is confusing.  SUPPRESS in a translate will prevent the message from going beyond the translation process.  It will still process the message through the translate so any coding you have will still be done (an email for example), but the message will not be sent to the output after the translate.

      To prevent a message from being translated, you can use a proc in either the Inbound/TPS Inbound Data UPOC which prevents the message from getting to any routing, or you can use Pre Procs UPOC on the Xlate routing setup which will be only for that particular route.

      • This reply was modified 4 years, 9 months ago by Paul Bishop.

      Paul Bishop
      Carle Foundation Hospital
      Urbana, IL

    • #114932
      Jim Kosloskey
      Participant

      The way I like to use SUPPRESS to filter messages is to use an IF  with ELSE Action:

      IF <cond>

      SUPPRESS

      ELSE

      Build the OB message…

       

      This way the Xlate tokenizes the OB message but does not populate anything IF the filter condition is true.

      If you are receiving duplicate OB messages, then I suspect you have a CONTINUE or SEND Action being executed.

      I had a situation where the requirement was to do a lot of filtering and it was required to be in Xlate. In that case I used specific Xlate(s) for filtering, named them appropriately so one could tell which Xlates filtered and chained them in front of the Xlates which were needed to build unfiltered messages.

      That worked quite well. I did not detect any significant performance issues.

       

       

      email: jim.kosloskey@jim-kosloskey.com 29+ years Cloverleaf, 59 years IT - old fart.

    • #114935
      Charlie Bursell
      Participant

      Why would you want to incur the overhead of translation if you will KILL the message within the Xlate?  Translation is the long pole in the overall message processing path.   As Paul said, write a filter pre-proc and kill before Xlate.  There are probably exceptions, but will be rare.

    • #114944
      Matthew Brophy
      Participant

      Just another perspective, IF you’re receiving multiple messages from an xlate it is likely because you’re using CONTINUE off an iterate.

       

      If you are qualifying a message off of values within a repeating group/segment (which would be difficult from a pre-proc), then you could use a garbage variable such as “@sendFlag”.  Populate @sendFlag with NO before the iterate. Populate the variable with something else (YES) if the condition is met.  Then CONTINUE if that variable is not NO.  This way you will only have a true or false condition rather than multiple CONTINUES of a message within an iterate.

Viewing 3 reply threads
  • You must be logged in to reply to this topic.

Forum Statistics

Registered Users
5,129
Forums
28
Topics
9,301
Replies
34,447
Topic Tags
288
Empty Topic Tags
10