1 Reply Latest reply: May 15, 2014 10:04 AM by Olly Bond RSS

    Problems with PDF file / column width

    tampa-user _



      We currently use Monarch Pro 8.0 in my company, and we have a problem with reading a PDF file that is created by one of our vendors through their web site.


      Here is what the file looks like:




      On the report, the column only shows:


      "Deposit - Cash depo" - however, when we read the file with Monarch, there is some hidden information in the column that shifts the column to the right. So Monarch picks up "Deposit - Cash deposit only etc. etc".   So when we create a model, we're not able to capture the data in the proper column. 


      We would like to pick up the data exactly as it appears on the report, and not the hidden data.


      Is there any way to do this?


      Any help would be greatly appreciated.



        • Problems with PDF file / column width
          Olly Bond

          Hello Larry,


          One thing you could try is to vary the PDF input scaling. Increasing the scaling essentially injects more white space in between the fields. This might help Monarch fit in the "hidden" text without making the rest of the line vary from the rest of the report.


          A second approach would be to keep the scaling, keep the trap characters as they are, but to highlight the whole line as a field (call it Blob), and then use calculated fields  to chop the line into sections.


          If the Transaction Type field is the only one that varies, then the fields reading across would be extracted from Blob with:


          FIELD1=lsplit(intrim(Blob);2;" ";1)


          FIELD3=rsplit(intrim(Blob);7;" ";6)

          FIELD4=rsplit(intrim(Blob);7;" ";5)

          FIELD5=rsplit(intrim(Blob);7;" ";4)

          FIELD6=rsplit(intrim(Blob);7;" ";3)

          FIELD7=rsplit(intrim(Blob);7;" ";2)

          FIELD8=rsplit(intrim(Blob);7;" ";1)



          Intrim() removes extra spaces, lsplit and rsplit chop the line up into sections based on each " ", extract() selects the area between one string and another.