Simply put, a logical cannot be based on a flat file. You have to change the flat file to a proper Physical file.
With the file, record and field name all being the same it sounds like it may be a work file. Check to see when the file was last updated. If it’s been a while, try and find what created it. Make this a file using source code and separate names. A work around would be to create a new file and logical and copy that data into this file and use the new file.