PDL Help

  • Creator
    Topic
  • #49418
    garry r fisher
    Participant

      Hi,

      I have the following ACK message coming back from my third party:

      ACK001381END0016. where the . represents .

      My PDL code to match this looks like:

      define phrase ack-msg;

         “ACK”;

         field data = variable-array( not ( ) );

         ;

      end phrase;

      But for some reason it errors saying there is no phrase match. This means that Cloverleaf waits until the timeout period to send the next record as I have await replies set. I do need to have the ACK before I can send the next message.

      Can anybody offer any advise/assistance on how to write my PDL phrase so it works?

      Thanks

      Garry

    Viewing 5 reply threads
    • Author
      Replies
      • #61879
        Charlie Bursell
        Participant

          My guess is you have simply modified something like the mlp_tcp.pdl script and do not have a routine to handle the ACK message.

          Run the process containing the DL with full EO or at least pdl EO and see what the full script looks like when it is expanded.

          Pay particular attention to the write portion. See how the continuations are set up.  For example in the tcp_acknak.pdl script, it looks something like:

          proc write.getResponse {info} {

             keylset continuations ack-msg               write.gotAck

             keylset continuations nak-msg               write.gotNak

             keylset continuations no-match      write.gotNak

             keylset continuations line-error    write.error

             keylset continuations timeout      

               hci_pd_receive $continuations

            }

        • #61880
          Russ Ross
          Participant

            FYI – modifying or creating a PDL will require that you complie it to create a whatever.pdo file.

            It has been so long since I complied a PDL I forgot the command but I’m sure others can post the command to compile a PDL.

            Plus you will have to call the new PDL from the NetConfig drop down.

            As obvious as this might seem, I have made all these mistakes and hope to help keep you out of the same bear traps.

            Russ Ross
            RussRoss318@gmail.com

          • #61881
            garry r fisher
            Participant

              Hi both,

              Thanks for your responses.

              Charlie – Where do I find the tcp_acknak.pdl script? Is it in the install?

              Regards

              Garry

            • #61882
              Charlie Bursell
              Participant

                I’m not sure Gary but if you send me an e-mail, I will send you a copy.

                charlie.bursell@quovadx.com

              • #61883
                Russ Ross
                Participant

                  I received an email today asking if I could remember how to compile a PDL file.

                  After lookign through some how to notes I found it.

                  # cd to where the pdl is locate for example

                  cd #HCISITEDIR/pdls

                  # or

                  cd $HCIROOT/pdls

                  hcipdc

                  # this will create a file

                  Russ Ross
                  RussRoss318@gmail.com

                • #61884
                  garry r fisher
                  Participant

                    Hi,

                    Sorry – I need to revisit this later. Tied up with some testing for now.

                    Thanks for your comments so far and I’ll try and use this thread when I get a minute to look at this again.

                    Regards

                    Garry

                Viewing 5 reply threads
                • The forum ‘Cloverleaf’ is closed to new topics and replies.