Correct STDF Entries from a Script
DataFileFilter allows you to read an STDF file, apply a transformation to it, and save the transformed file with the same name. Transformations are currently defined by indicating the record type and field you want to change and the new value you want to use. This is most useful for correcting incorrect header data, for example the lotid, fab lotid or program name.
STDF QuickChange is published as a Windows installer, a Mac OS X installer or a gzipped tar file so that it can easily be installed on Linux servers. In the following instructions, the name of the downloaded file will vary slightly, depending on the actual version to be installed.
- Make sure you have Java 1.8 or newer installed and in your execution path. You can download the Java runtime here.
- On Mac OS X or Windows, download and run the STDF QuickChange installer. After you reboot, the STDF QuickChange tools should be in your path.
- On Linux, download the STDF QuickChange gzipped tar file. Then, run gunzip and tar -xf on the downloaded file. For ease of use, we recommend adding the directory into which you untarred the files to your path.
- Once you have installed the files, you can either build complete calls yourself using the commands described below for maximum flexibility or use the provided examples. For command line filtering of STDF files, the provided examples are filter.bash and filter.bat, depending on whether you are on Linux/Mac OS X or Microsoft Windows. The exact location of the files will depend on what you chose during the installation process, but the default location on Windows is AppData\Roaming\Spry Software\STDF QuickChange.
Often you can use the supplied filter script like this:
filter.bat lot_id mynewlot c:\work\test.stdf
This example uses a Windows batch file, but a Linux/Unix/Mac OS X equivalent is also available. If you look inside the script, you will see the underlying call to the DataFileFilter program. The filter.bat script uses a filter in the form –replace:MIR.lot_id=aaa to make the lotid aaa. To apply the same transformation to multiple files, you can list the files using * as a wild card. For example
filter.bat lot_id XYZ_COLD *.stdf would change the lotid to XYZ_COLD for all files ending in stdf in the current directory.
Complete usage looks like this:
java -cp stdfConverter.jar:guava-16.0.jar:commons-cli-1.2.jar:sqlitejdbc-v056.jar spry.stdf.converter.DataFileFilter --replace:MIR.lot_id=newlotid /tmp/myfile.stdf
-cp stdfConverter.jar:guava-16.0.jar:commons-cli-1.2.jar:sqlitejdbc-v056.jarindicates dependencies of the tool. All of these files are included in the install. Replace the : character with ; on Windows. You should not need to change the rest of this value, unless for some reason you installed different versions of the jar files.
spry.stdf.converter.DataFileFilterthis is the name of the executable class inside QuickChange Utilities. You should not need to change this value.
--replace:MIR.lot_id=newlotidThis indicates that the value in the lot_id field of the MIR (master information record) should be replaced with the value newlotid. The most common substitutions are for MIR values like
- but it can be used for other STDF fields too. For example, you could set the probe card name for all test heads in file /tmp/X123.stdf to prober_annie with the call
java -cp stdfConverter.jar:guava-16.0.jar:commons-cli-1.2.jar:sqlitejdbc-v056.jar spry.stdf.converter.DataFileFilter --replace:SDR.card_id=prober_annie /tmp/X123.stdf
- The WIR record wafer_id field and WRR record fabwf_id are also commonly changed fields.
- See the FAQ for the remaining of exit codes from the DataFileFilter call
Need More information?
You can contact us with technical questions, pricing questions and alternate payment mechanism questions.
Try it out!
Interested? Try DataFileFilter and the rest of STDF QuickChange for 15 days.
Ready to Buy?
Selecting Buy Now allows you to purchase one or more STDF QuickChange licenses via credit card or PayPal for USD 395 each. If you are interested in purchasing licenses but prefer to use a credit card without paying online, a purchase order or another payment mechanism, let us know by mailing email@example.com or clicking the Contact Us link. We are happy to accommodate any of those mechanisms. You can also contact us about volume license discounts.