Basé sur une question similaire :"L'opération n'est pas autorisée lorsque l'objet est fermé" lors de l'exécution de la procédure stockée j'ai recommandé en commentaire :
La raison la plus courante de Operation is not allowed when the object is closed
est que cette procédure stockée ne contient pas SET NOCOUNT ON
commande, qui empêche les ensembles de résultats supplémentaires d'interférer avec SELECT
déclarations.
Pour plus d'informations, veuillez consulter :SET NOCOUNT (Transact-SQL)