Partager via


Annulation de commandes (XMLA)

Selon les autorisations administratives dont dispose l'utilisateur qui émet la commande, la commande Cancel de XMLA (XML for Analysis) lui permet d'annuler une commande sur une session, une connexion, un processus serveur ou une session/connexion associée.

Annulation de commandes

Un utilisateur peut annuler la commande en cours d'exécution dans le contexte de la session explicite active en envoyant une commande Cancel sans aucune propriété spécifiée.

[!REMARQUE]

Une commande en cours d'exécution dans une session implicite ne peut pas être annulée par un utilisateur.

Annulation de commandes Batch

Si un utilisateur annule une commande Batch, toutes les commandes qu'il reste à exécuter dans la commande Batch sont annulées. Si la commande Batch était transactionnelle, les commandes qui ont été exécutées avant l'exécution de la commande Cancel sont annulées.

Annulation de sessions

À condition de spécifier un identificateur de session pour une session explicite dans la propriété SessionID de la commande Cancel, un administrateur de base de données ou de serveur peut annuler cette même session, y compris la commande en cours d'exécution. Un administrateur de base de données ne peut annuler les sessions que pour les bases de données pour lesquelles il dispose d'autorisations administratives.

Un administrateur de base de données peut récupérer les sessions actives pour une base de données spécifiée en récupérant l'ensemble de lignes de schéma DISCOVER_SESSIONS. Pour récupérer l'ensemble de lignes de schéma DISCOVER_SESSIONS, l'administrateur de base de données utilise la méthode XMLA Discover et spécifie l'identificateur de base de données approprié pour la colonne de restriction SESSION_CURRENT_DATABASE dans la propriété Restrictions de la méthode Discover.

Annulation de connexions

À condition de spécifier un identificateur de connexion dans la propriété ConnectionID de la commande Cancel, un administrateur de serveur peut annuler toutes les sessions associées à une connexion donnée, y compris toutes les commandes en cours d'exécution, et annuler la connexion.

[!REMARQUE]

Si l'instance de MicrosoftSQL ServerAnalysis Services ne peut pas localiser et annuler les sessions associées à une connexion, comme c'est le cas lorsque la pompe à données ouvre plusieurs sessions en fournissant une connectivité HTTP, l'instance ne peut pas annuler la connexion. Si ce cas est rencontré pendant l'exécution d'une commande Cancel, une erreur se produit.

Un administrateur de serveur peut récupérer les connexions actives pour une instance Analysis Services en récupérant l'ensemble de lignes de schéma DISCOVER_CONNECTIONS à l'aide de la méthode XMLA Discover.

Annulation de processus serveur

À condition de spécifier un identificateur de processus serveur (SPID) dans la propriété SPID de la commande Cancel, un administrateur de serveur peut annuler les commandes associées à un SPID donné.

Annulation de sessions et de connexions associées

Vous pouvez définir la propriété CancelAssociated à true pour annuler les connexions, les sessions et les commandes associées à la connexion, à la session ou au SPID spécifié dans la commande Cancel.