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

Bases de données Delphi Discussion :

[Firebird & UIB] Requête paramétrée ?


Sujet :

Bases de données Delphi

  1. #1
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut [Firebird & UIB] Requête paramétrée ?
    Bonjour,

    Je n'arrive pas à faire une simple requête paramétrée à l'aide d'un TJvUIBDataSet...
    Par exemple si je veux récupérer toutes les images (stockées dans la table OBJET_IMAGES) de l'objet sélectionné dans la table OBJETS, je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT
      IMAGE
    FROM
      OBJET_IMAGES 
    WHERE 
      OBJET_IMAGES.K_OBJET= :K_OBJET
    et dans le OnDataChange de mon TJvDataSource "principal" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataSetImages.Params.ByNameAsInteger['K_OBJET'] := DataSetPrincipal.FieldByName('K_OBJET').AsInteger;
    Je me suis inspiré du tuto suivant :
    http://delphi.developpez.com/faq/?page=SQL#maitredetail

    L'image affichée ne change pas ; c'est quoi le souci ?
    Merci

  2. #2
    Membre émérite
    Avatar de skywaukers
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2005
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 215
    Points : 2 303
    Points
    2 303
    Par défaut
    Bonsoir,

    je pense qu'il faut fermer/re-ouvrir le DataSetImages pour que le nouveau paramètre soit pris en compte.

    @++
    Dany

  3. #3
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut
    Si je fais un Close avant de définir le paramètre j'ai une erreur.

    Si après avoir défini le paramètre je fais Close/Open ça marche mais ça me ferme le DataSet principal ?! Du coup les requêtes suivantes plantent (il y en a 4 ou 5). Comment ça se fait ?

    Si je fais un Close/Open de tous les DataSet "secondaires" à la fin (cad après avoir renseigné chacun des paramètres) c'est bon mais le DataSet principal reste fermé (données non affichées et DBNavigator désactivé) ; si je l'ouvre il s'ouvre/ferme indéfiniment
    Je suppose que ça provient d'un conflit avec l'évènement OnDataChange, dans ce cas que évènement utiliser ?
    Mais surtout pourquoi un Close/Open sur un autre DataSet me ferme l'ensemble de données maitre ?

    Merci...

  4. #4
    Membre confirmé
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Points : 632
    Points
    632
    Billets dans le blog
    4
    Par défaut requery
    pour Close/open

    et en essayant de paramétrer ta table enfant après l'évènement afterscroll de la table maitre

    1/ ouvrir table maitre ( open )
    2/ forcer l'événement de tri image table enfant
    3/ changer contenu table enfant quand la table maitre bouge (afterscroll de la table maitre)

    attention !!!!
    quand on ferme la table maitre, alors que les tables enfants sont filtrées sur la table maitre, ça provoque de vilaines erreurs. Donc bien gérer, le cas ou la table maitre est vide ou close.

    André ( Je me demande si je suis clair )

  5. #5
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut
    Je croyais avoir trouvé : dans d'autres tables détails je faisais appel dans ma requête SQL à la table maitre (OBJETS). Corrigé, mais ça ne marche pas mieux.

    J'ai donc "connecté" mes DataSet secondaires à un autre objet TJvUIBTransaction que celui utilisé par le DataSet principal et... ça marche mieux ! Il reste 2/3 comportements bizarres alors je ne mets pas tout de suite "résolu"...

  6. #6
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut
    Merci pour le AfterScroll, cet évènement semble en effet plus approprié pour la navigation.

    Sinon oui tu es très clair, merci de ton aide

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

Discussions similaires

  1. Requête paramétrée Firebird/SP
    Par micheln dans le forum NetBeans
    Réponses: 1
    Dernier message: 28/12/2008, 22h30
  2. Requête paramétrée
    Par lou.souleu dans le forum Access
    Réponses: 2
    Dernier message: 22/06/2005, 05h36
  3. [VB.NET] [ADO.NET] Requête paramétrée
    Par DotNET74 dans le forum Accès aux données
    Réponses: 2
    Dernier message: 11/03/2005, 08h39
  4. Requête paramétrée qui remplit une DBLookUpComboBox
    Par navis84 dans le forum Bases de données
    Réponses: 6
    Dernier message: 02/12/2004, 21h23
  5. VBA & Requête paramétrée
    Par gripoil dans le forum Access
    Réponses: 4
    Dernier message: 25/11/2004, 09h54

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