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

BIRT Discussion :

Utilisation Data Set - SQL Stored Procedure Query


Sujet :

BIRT

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 229
    Points : 137
    Points
    137
    Par défaut Utilisation Data Set - SQL Stored Procedure Query
    Bonjour,

    Je tente en vain d'utiliser un DataSet dont la source est une procédure stockée SQL Server.
    Via SQL Server aucun problème de lancement les données ramenées sont correctes.
    Via Birt impossible de récupérer mes enregistrements j'ai systématiquement le message m'indiquant "SQL Statement does not return a ResultSet Object"

    J'avoue je cale.

    Merci d'avance

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Est ce que la procédure stockée renvoie un DataSet ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 229
    Points : 137
    Points
    137
    Par défaut
    si pour toi un data set est un ensemble de lignes colonnées alors oui ma procédure stockée renvoie un data set

    Sortie de ma procedure stockée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    EXECUTE ('select objet ,numcoupure,min(datemin) as DateDeb ,max(datemin) as DateFin,(datediff(minute,min(datemin),max(datemin))+15) as Diff from RPT_MAG_COUPURE group by objet,numcoupure order by objet ,numcoupure')

  4. #4
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Select est un affichage et ne renvoie rien.

    Il faut donc récupérer le SELECT dans une variable que tu renvoies.

    PS : Me demande pas comment, je ne m'en rappelle plus

    Mais je crois qu'il y a une histoire de fetch dans la procédure stockée.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 229
    Points : 137
    Points
    137
    Par défaut
    Bonjour,

    A la lecture de ta reponse j'imagine que tu proposes de placer le contenu de ma table sur laquelle je pratique mon select final dans un curseur (utilisation du fetch).

    Bon je tente cela.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 229
    Points : 137
    Points
    137
    Par défaut
    Sans succès, j'ai toujours ce foutu message d'erreur comme quoi je ne renvoie pas un ResultSet Object.

    Le principe d'un procedure stockée est bien de ramener un lot de lignes via un select final. Pourquoi Birt ne prend-il pas en charge ce retour fait par les procs stockées ?

    Help !!

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 229
    Points : 137
    Points
    137
    Par défaut
    Bonne nouvelle !!

    Visiblement le fait de passer via birt pour le lancement de ma proc stockée provoquait une erreur dans l'execution de celle-ci (declaration d'une variable stockant le code de construction d'un curseur).

    Bref j'ai directement construit mon curseur sans passer par cette variable et miracle les données renvoyées par ma proc stockée sont bien lues par Birt et affichées par mon rapport.

    Je confirme donc que le select final renvoyé par une proc stockée sert bien à alimenter un data set birt.

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

Discussions similaires

  1. [XL-2010] Appel d'une SQL Stored Procedure par UF
    Par moi244 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/03/2013, 15h19
  2. sql stored procedure
    Par windows2056 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 13/01/2012, 11h37
  3. Optimisation du SQL stored procedure
    Par ttttnht dans le forum Sybase
    Réponses: 1
    Dernier message: 23/06/2008, 13h57
  4. [SQL] stored procedure
    Par gregorian dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/11/2005, 14h08
  5. Query data set
    Par Sandra dans le forum JBuilder
    Réponses: 3
    Dernier message: 20/01/2003, 10h08

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