You need to convert to Unix format, because you are on a Unix/Linux OS. I doubt that it would work on that other machine if your would use the same input file there (with the carriage return characters).
The carriage return characters are usually there because a file originated on Windows platform and was transferred to Unix without properly converting first...
You are right. it works on the other machine because i have done a copy/paste of the content of DetailsWorkers.txt and not scp the file.
But,
i haven't used windows platform at all. The file DetailsWorkers.txt is generated by a script shell on linux
i think that there is a hidden charactar in the file DetailsWorkers.txt!!! not ?
Bests
Then have a look at that shell script and see if it explicitly inserts them into the output.
Or... if that shell script itself uses another input file that happens to contain carriage returns, then they may stem from there...