We need a utility that will substitute field names that are in the first line of a .CSV file.
For example a source file with data:
First, Last, Company, Contact ID, Phone
Henry, Smith, Smith Investments, 1234, 555-111-2222
Joe, Peterson, ABC Company, 2345, 444-111-3333
Mary, Anderson, XYZ Consulting, 3456, 333-555-5433
With mapping:
First -> FirstName
Last -> LastName
Company -> CompanyName
Contact ID -> Customer Number
Phone -> Phone Number
might become:
FirstName, LastName, CompanyName, Customer Number, Phone Number
Henry, Smith, Smith Investments, 1234, 555-111-2222
Joe, Peterson, ABC Company, 2345, 444-111-3333
Mary, Anderson, XYZ Consulting, 3456, 333-555-5433
The only thing that changes is the field names in the first line. It is important that the substitution is only made on the first line even if the field name appeared further down in the file.
This needs to be run as a batch file on Windows PC's.
It needs to be easy to change the File Name, File Path, and Field Mapping.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows XP and newer