I\'m getting the following error when calling a stored procedure:
Cannot find the object \"XXX\" because it does not exist or you do not have permission.
I\'
If in your stored procedure there are the SET IDENTITY ON & OFF statements, so you need ddl_admin rights added to the user login. This was my solution.
Using the 'GO' fixed the issue for me as well. This was driving me crazy, after multiple drops and checking permissions for users and schema, this is what finally helped.
As well as other answers about schema/security etc:
The scheme may be different. If there is a different scheme, add it in front of it.
Always use the dbo.
(or other schema) prefix both when creating and when accessing objects.
I wrote about this very topic recently:
I discovered that I had left off the "GO" word after "END" in my stored proc. Altering the Proc and adding back GO fixed this issue for me.