Can't get _DataFile$ to work with Openlab CDS (version: C.01.07 SR2)


Openlab CDS version: C.01.07 SR2

With the variable _DataFile$ (or _DataFile1$...), we are trying to get the path to the file REPORT01.CSV put automatically in the correct folder (of the name of the sample .D e.g. 'HELTACBB DA 151220.D')

We always get the path (with the '_DataPath$' variable) correctly up to the name of the directory of the sample (.D) for a reason I ignore.

It has always worked with many many users of OPENLAB we have...

In RUN.LOG we obtain an Error 41304 due to the fact it doesn't find the file since the full path given in the log is:

C:\Chem32\1\Data\141216\no sample Name (front) 2020-12-16 00-56-30.D\REPORT01.CSV

Everything seems configured ok in the Sequence Table with the Sample Name defined as well as the Data File (see below). We have tried even with a simple name - thinking that special characters could make the error...

Any ideas to solve this problem?


PS: we are testing it in Reprocessing mode to test faster (just trying to give as many details as possible :))

  • Hello,

    I updated the tags on this post to increase its visibility. 

    I personally am not familiar with programming custom macros for OpenLab ChemStation, but hopefully someone who is will see this post and chime in.

  • Hi

    Are you able to share some of the macro code with us?

    Looks like the copy command is having problems finding the file or its destination.  Maybe edit the macro to "print" (print "The value of_DataFile$:   " + _DataFile$) some of the variables that you're using so that you can see them in the output window (type listmessages on in the command line at the bottom of the Chemstation window.

    That may help you to understand what's going wrong.

    If the processing method is creating the report file, I wonder if you're trying to copy it before it is written to disk.

    You can use the FileStat() function to check for the existence of a file.  If it doesn't exist, maybe use the sleep command before checking again.  You could do this in a While... Endwhile loop


  • Many thanks Andy!

    Everything you're saying makes sense and it's logical.

    But we tried this with the client this week without any success.

    It looks like there is a bug with their version...?

    Anyway we solved the problem by creating an exeternal EXE doing what the macro is supposed to do.

    Thanks again!


Was this helpful?