IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Lancement Agent SQL dans Procedure Stockée.


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Profil pro
    DSI
    Inscrit en
    Mars 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : DSI

    Informations forums :
    Inscription : Mars 2009
    Messages : 102
    Points : 73
    Points
    73
    Par défaut Lancement Agent SQL dans Procedure Stockée.
    Bonjour,

    J'ai écris une procédure stockée qui, à partir d'un ERP, génère tout un datamart et quand tout est terminé, lance un agent SQL pour le process d'un cube.
    J'ai intégré à ces process une historisation (Log) afin de suivre les temps et les volumes. Cette table de log est accessible par le biais du portail ReportService de mon serveur.

    Mon probleme:

    Je lance l'agent à partir de la proc sto en faisant un:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EXEC msdb.dbo.sp_start_job N'CalculCube' ;
    où calculCube est le nom de l'agent.

    L'agent est lancé correctement mais n'attend pas de finir pour rendre la main à la proc sto. De ce fait, je ne peux pas logguer:
    • Une éventuelle erreur de l'agent.
    • La durée du calcul de mon cube.

    Auriez vous une solution qui fasse que la proc sto attende la fin de l execution de l'agent avant de se remettre à tourner ?

    Merci d'avance !

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Attention : l'agent SQL Server est un service de planification de travaux, et CalculCube est un travail.

    Auriez vous une solution qui fasse que la proc sto attende la fin de l execution de l'agent avant de se remettre à tourner ?
    Je n'en connais pas. sp_start_job démarre un travail, c'est son rôle.

    J'ai intégré à ces process une historisation (Log) afin de suivre les temps et les volumes
    Pour le temps d'exécution d'un travail, vous pouvez le récupérer dans la table sysjobhistory de la base de données système MSDB (à lier avec la table sysjobs et éventuellement sysjobsteps).

    Les erreurs qui peuvent se produire durant l'exécution du travail sont également consignées dans cette table (colonne message et run_status).

    Pour le nombre de lignes traitées, si votre travail est en T-SQL, vous pouvez récupérer le nombre de lignes traitées après chaque exécution de commandes par la fonction @@ROWCOUNT ...

    @++

  3. #3
    Membre régulier
    Profil pro
    DSI
    Inscrit en
    Mars 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : DSI

    Informations forums :
    Inscription : Mars 2009
    Messages : 102
    Points : 73
    Points
    73
    Par défaut
    Bonjour,

    Merci d'excuser mon vocabulaire peu précis. Formation Initiale = IBM (AS400-RPG-DB2) et Formation Win+SQL = Livres Collection "Que Sais Je" ! Alors traduire ce que je pense en langage d'initié m'est parfois difficile.

    ==> Donc ce que je veux faire semble impossible !

    Alors peut on lancer un process cube (XMLA) dans une Procédure Stockée sans passer par l'agent SQL ?
    (Car on ne m'a indiqué que l'agent SQL pour processer le cube de manière automatique!)

    Merci à Tous et bonne journée.

  4. #4
    Membre régulier
    Profil pro
    DSI
    Inscrit en
    Mars 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : DSI

    Informations forums :
    Inscription : Mars 2009
    Messages : 102
    Points : 73
    Points
    73
    Par défaut
    Bon ben je m'en suis sorti en lancant une proc sto, qui écrit dans 1 table qui a un trigger qui lance active l agent qui execute le xmla.

    Si qqun a quelque chose de mieux, j accepte toute porposition.

    Je clos le post.

    Merci à tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [debutant][ASE 12.5]print dans procedure stockée
    Par sly33 dans le forum Sybase
    Réponses: 6
    Dernier message: 21/05/2007, 17h41
  2. sql ou procedure stockée ?
    Par jupierre dans le forum SQL
    Réponses: 1
    Dernier message: 15/03/2007, 18h02
  3. Réponses: 6
    Dernier message: 09/10/2006, 11h58
  4. Réponses: 3
    Dernier message: 19/04/2006, 18h44
  5. SQL dans Procédure stockée
    Par julure dans le forum Oracle
    Réponses: 13
    Dernier message: 02/11/2004, 16h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo