In a nutshell, the problem is that SQL bcp accepts column skipping for import operation, but not for export (this is true at least since SQL 2000 up until now) .These are the errors you get:
Error1 = [Microsoft][SQL Server Native Client 10.0]Host-file columns may be skipped only when copying into the Server
Error2 = [Microsoft][SQL Server Native Client 10.0]The number of fields provided for bcp operation is less than the number of columns on the server.
It’s important to note 1) there’s no public documentation explicitly stating what the first error reads, and 2) it has not been included in migration document from Sybase (even if there were documentation on this, spending more than 2 hours searching in BOL or bing does not qualify for “public documentation”). Finally, 3) Sybase’s bcp does support this so from the customer’s point of view (and honestly I don’t blame him) this is plain and simply a SQL bug (no, no design bug.. just bug). This issue simply appeared out of the blue. Simply put, there was no way of knowing this in advance for proper planning and estimation of migration efforts.
Customer understands that there's no standard for BCP, but he believes is completely counter intuitive to think that import works but not the export...