I suspect you have a major permissions problem. When you run the sp in QA, you are running it using your permisisons, on your local workstation. When you run the job, it is using the login of whatever the SQL Server Agent is using on the server, also, the sp is then running on the server. I am sure whatever your login is for the SQL Server Agent does not have the proper permissions on the linked server.