The activated proc [dbo].[storedprocedure_name] running on queue [QUEUE_NAME] output the following: 'The server principal "sa" is not able to access the database "AnotherDBName" under the current security context.'
The problem is that the activation execution context is trusted only in the database, not in the whole server, like other stored procedures or DB. So when the activated SP calls another SP located in the other DB, the above exception will occur.
The simplest solution is to mark the database [SERVICE PROGRAM RUNNING ON IT] as trustworthy.
ALTER DATABASE [DBNAME] SET TRUSTWORTHY ON