There may be more to it than this in the ful file but here are some ideas.
Make your template a 2 line sample. Trap on line one using "16" and 'paint' the fields you require from line one.
In the sample it seems that the fields you need are consistent in size. If that is not always the case define those fields at the beginning of the line that are consistent and grab any others as a single field.
On the second line do the same. If there are positional inconsistencies - take the whole line as a single field. If ever you need any data that is in line 3 or 4 or whatever you need to make the field a multi line field.
If you do take entire lines as a single large field you should be able to break it up again using the RSPLIT function and splitting on the "," then picking the part of the split you want to take. You may need the IF() function to specify when and how to make the change to select the appropriate part of the line from each record.
It looks like you only need the second line detail if the first line has a code of "108".
So you can use that as a "formula" for whether or not any data is required from line 2.
You can also make a filter skip any records you don't require - the "16,408," lines for example. I don't see any point in trying to use the trap to filter the 408 lines - just take them into the table and then use a filter to ignore them.
I hope this helps you to progress. If you want some worked examples let me know and I will try to provide something later.
[size="1"][ April 25, 2005, 05:04 PM: Message edited by: Grant Perkins ][/size]
Thanks for the tips... now I have a starting point... wish me luck... /b[/quote]Err, Good Luck!
Let us know if you get stuck. The sample looks fairly consistent but the full report may not be so kind.