You are using cross-database joins, correct?
If yes - you need to connect to Excel file in a way that it is available from the Tableau Server (file share or, perhaps, Google Sheets).
Basically when Tableau Server tries to refresh an extract it tries to find an Excel file via it's original path (whatever it was on your machine prior to publishing) and is unable to do so.
Thanks for your reply.
I am publishing the package from the same server box and the refresh is happening on the same server. The refresh is being done using the run-as user which has access to the shared path of the excel.
When i manually convert the extract to live connection, The data is getting refreshed with out asking me to point to the file location.
I have a single connection , which has both SQL Server and an Excel data and then I am doing a Left outer join and then doing the extract.
When i republish the data source and refresh the extract on the server, the data source is getting refreshed. but from then on it is trowing me an error to republish the data source.