Thanks.
I'm using a table variable rather than a # table. I have bcp working with a stored proc that uses a table variable, but for that file the first row was the column names. I think this is to do with the file format above not having column headers.
I am using a cursor in the sp though - do you know if that would cause a problem?