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 :

dtser_failure à l'appel d'un package dtsx


Sujet :

MS SQL Server

  1. #1
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 27
    Points : 62
    Points
    62
    Par défaut dtser_failure à l'appel d'un package dtsx
    Bonjour,

    Je développe une application en c# dans laquelle j'utilise un package dtsx. Lorsque je lance mon package en mode débug dans SSIS ou manuellement, je n'ai pas d'erreur et ma BDD est correctement remplie.
    Par contre quand j'appelle le fichier depuis mon code le résultat de l'opération est à DTSER_FAILURE et aucune ligne n'a été insérée dans la table.

    Mon package prend simplement un fichier texte en Input et intègre les lignes dans une BDD SQL compact.

    Voici la fonction que j'appelle pour exécuter un package :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
     private string executePackage()
            {
     
     
                Package pkg;
                Microsoft.SqlServer.Dts.Runtime.Wrapper.Application app = new Microsoft.SqlServer.Dts.Runtime.Wrapper.Application();
                DTSExecResult pkgResults;
     
     
     
                pkg = (Package)app.LoadPackage(pkgLocation,true, null);
                pkgResults = pkg.Execute();
                Console.Write(pkgResults.ToString());
                return pkgResults.ToString();
     
     
            }
    Je ne vois pas vraiment si l'erreur viens du code ou du package en lui-même.
    J'espère avoir été clair ; merci d'avance.

  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
    Bonsoir,

    Pouvez nous fournir la descrription de l'erreur dans vos log .. on aura un peu plus de précision ...

    ++

  3. #3
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 27
    Points : 62
    Points
    62
    Par défaut
    Je n'ai pas d'erreur à proprement parlé : Mon programme tourne sans renvoyer d'erreur. Simplement la fonction sensée appeler mon package l'exécute, et renvoie en résultat l'erreur dtser_failure.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    pkgResults = pkg.Execute();
                RETURN pkgResults.ToString();
    C'est dans pkgResults que je me rends compte que ma fonction n'a pas eu le résultat escompté. Ce qui me laisse assez perplexe puisqu'en exécutant le package manuellement, la tâche est effectuée correctement.

  4. #4
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 27
    Points : 62
    Points
    62
    Par défaut
    Problème résolu : Le problème venait du fait que mon programme écrivait dans le flat file alors que mon package essayait d'y accèder : (swL est le StreamWriter utilisé pour écrire dans le txt.)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    executePackage();
    swL.Close();
    swL = new StreamWriter(filenameL);//flushes location.txt
    J'ai simplement changé l'ordre des lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    swL.Close();
    executePackage();
    swL = new StreamWriter(filenameL);//flushes location.txt
    Et dire que ca m'a bloqué durant trois jours...

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

Discussions similaires

  1. C# : appel de packages dtsx
    Par zalalus dans le forum C#
    Réponses: 1
    Dernier message: 07/07/2010, 10h40
  2. Réponses: 0
    Dernier message: 12/05/2009, 16h34
  3. appelle d'un package pm
    Par vince2005 dans le forum Modules
    Réponses: 8
    Dernier message: 06/09/2006, 17h27
  4. [PL/SQL-VB.Net] Comment implémenter l'appel d'un package ?
    Par pennylanesworld dans le forum Accès aux données
    Réponses: 3
    Dernier message: 27/08/2006, 22h08
  5. Appel d'un package avec DBLink variable ?
    Par zorglob dans le forum Oracle
    Réponses: 2
    Dernier message: 17/02/2006, 17h11

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