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

MS SQL Server Discussion :

[LOT DTS] 2 flux sur un lot


Sujet :

MS SQL Server

  1. #1
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 154
    Points : 110
    Points
    110
    Par défaut [LOT DTS] 2 flux sur un lot
    Bonjour,

    Je m'arrache un peu les cheveux depuis hier sur le problème suivant :

    Voici mon lot actuel :



    1 - "Test de connexion" permet de tester si le serveur distant est UP.

    En cas de "success", on passe à l'étape suivante pour le chargement de la première application.

    L'étape "Is Load CDI..." permet de savoir si l'application "CDI Auto. Dep." a déjà été chargée.

    Le problème est ici :

    Comment le faire passer à l'étape "Is load effet" dans tous les cas, c'est à dire, en cas d'échec pour le "Is Load CDI" et/ou en cas d'achèvement pour "IsloadUpdate CDI" ?

    Le schéma actuel ne fonctionne pas car l'étape "is Load Effet" n'est jamais exécutée

    Merci d'avance


    Portekoi

  2. #2
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Votre schéma est bon.

    Votre étape "Is Load CDI.." appelle un autre lot je suppose.
    Est ce que ce lot vous renvoie une erreur si votre "application" n'est pas chargée ?

    ++

  3. #3
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 154
    Points : 110
    Points
    110
    Par défaut
    Bonjour,

    Merci pour la réponse.

    Si le lot est déjà chargé, il renvoi une erreur.

    Si le lot n'est pas encore chargé, il poursuit son chemin vers CDI Auto. Dep.

    Mais le soucis est que Sql Server attend que le Isload soit en échec ET IsLoadUpdate soit achvé pour lancé la suite et là ça coince car c'est soit l'un, soit l'autre


    Portekoi

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Ok.. Oui effectivement en testant chez moi, les 2 conditions n'étant pas rempli ca ne fonctionne pas.

    Une autre idée cependant :

    - Passer par un script active X avec 2 variables globales que vous paramétrer à vos différentes étapes. Vous pouvez ainsi contrôler à un niveau plus fin vos conditions pour la suite de votre package... Si j'ai un moment j'essairais de vous montrer un exemple.

    ++

  5. #5
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 154
    Points : 110
    Points
    110
    Par défaut
    Bonjour,

    Je vous remercie par avance et effectivement, cela m'aiderait très certainement.

    Je ne sais comment faire en ActiveX (VB) pour lui dire :

    Si "Success" alors tu passes par telle étape sinon, tu passes par l'autre étape.

    J'ai trouvé cette page mais je ne m'en sorts pas

    http://www.sqldts.com/218.aspx

    Il y a forcément une solution...

    Le but du lot est de lancer tout ce petit monde l'un derrière l'autre et que, en cas de relance, un même lot ne soit pas exécuter 2 fois le même jour.

    Merci d'avance


    Portekoi

  6. #6
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 154
    Points : 110
    Points
    110
    Par défaut
    Bon, je pense avoir réussi mais y a juste un truc qui me gêne :

    Avec ma solution, lorsque l'étape mentionnée dans l'activeX est exécutée avec succès, il me dit qu'elle n'a pas été exécutée. Mais si elle renvoie une erreur, il me met bien l'erreur...

    Ma solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    Function Main()
     
    	Dim Step
     
    	Set Step = DTSGlobalVariables.Parent.Steps("DTSStep_DTSExecutePackageTask_1")
     
    	Step.Execute
    	'Ne change rien :(        
    	step.ExecutionStatus = DTSTaskExecResult_Success
     
    	Main = DTSTaskExecResult_Success
    End Function
    Schéma :



    Si quelqu'un a la solution....


    Portekoi

Discussions similaires

  1. SQL Server 2000 Lots dts sur un réseau
    Par LupusCramus dans le forum Administration
    Réponses: 2
    Dernier message: 28/10/2009, 17h01
  2. Lancer un lot DTS dans une prodédure stockée
    Par Guizz dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 24/04/2007, 10h03
  3. Probleme sur l'execution d'une Tâche LOT DTS
    Par SILO dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/08/2006, 16h04
  4. [MaxDB] travaux et lots DTS
    Par nic_moq dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 19/03/2004, 09h47
  5. travaux et lots DTS
    Par nic_moq dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 17/03/2004, 18h00

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