Forum Discussion

MikeP's avatar
MikeP
New Contributor II
4 years ago

How do we check if NO DATA in a CSV file after filtering out headers

Hello, I need to check if there is no actual data after reading and parsing a CSV file, I am using the CSV Parser and have checked the ‘Contains Header’ (as we will always have a row with headers), I then follow it with a Mapper. If we have no data at this point we need to stop processing and go down a different route. I’m struggling with how after the Mapper, I check if no data is present in my document ($). We have a router snap next and have tried the following options, but none seem to work in the expression window:-

$ == null
$.isEmpty()

Any help appreciated.
Thanks
Mike

6 Replies

  • Hi @MikeP,

    After the CSV parser, are your headers with empty values like "" ? Or simply there’s no data after after the csv parser ?

    • MikeP's avatar
      MikeP
      New Contributor II

      hi j.evegelvski, the files will always have header text values like “Emp_ID”, the rows after this will be empty. I cant identify if we have any data for this file situation - no data. My dev head is saying maybe a ‘row count’ property (if data in any rows) after header row filtered out, this would be handy, but doesn’t seem to exist. Then just check if this value > 0.

      Addendum: After the CSV Parser snap, then the next snap is a straight mapper snap for the document ($) the output view is

      Hence why I thought the expressions I mentioned initially would work.

      • j_angelevski's avatar
        j_angelevski
        Contributor III

        Hi @MikeP,

        In that case your expression should work because $.isEmpty() should return true. Not sure why it doesn’t work for you, but you can also try with the following: $.values().length == 0. Can you also share your settings in the router snap ?