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

Delphi Discussion :

XE7-Utilisation des Datamodules


Sujet :

Delphi

  1. #1
    Invité
    Invité(e)
    Par défaut XE7-Utilisation des Datamodules
    Bonjour,

    j'ai encore quelques difficultés avec les Datamodules.
    Sur mon DataModule (uSQLmodule), j'ai placé initialement 2 chaînes TFDConnection - TFDQuery (sans oublier TFDransaction et TFDGUIxWaitCursor), une pour une connexion SQLite:memory: et l'autre pour une mySQL classique.


    Premier problème rencontré avec la chaîne SQLite : je veux pouvoir ouvrir 2 instances "simultanées" de la fenêtre fELV contenant un dbGrid qui fait appel au même connecteur SQLite. J'aurais dû y penser plus tôt mais un seul TFDQuery est insuffisant ou plus exactement est mal placé. En ShowModal, il n'y aurait pas de problème. Mais en Show cela coince net. Comme ma base SQLite est définie :memory:, je ne dois disposer que d'un seul connecteur pour toutes les Forms.
    Alors compte tenu de la configuration, où faut-il placer les autres composants nécessaires, le TFDTransaction et le TFDGUIxWaitCursor ? Dans le DataModule ? Le DataSet et le DataSource vont dans fELV. Pour l'instant, je n'ai pas réussi à faire fonctionner simultanément et indépendamment les 2 instances de la Form fELV... mais j'ai remarqué que les copier/coller dans les DataModules sont euh... sensibles. Si je connaissais la bonne approche, cela m'éviterait de tester toutes les combinaisons... Aussi je sollicite vos avis.

    Deuxième problème rencontré : j'ai pratiqué plus classiquement avec ma deuxième connexion. "Tout" est dans le DataModule sauf le dataSource et le dbGrid qui sont dans fELV, ... Seulement dans fELV, jamais l'IO de DataSouce ne me propose le SQLQuery placé dans uSQLmodule même après reconstruction. Evidemment le uSQLmodule figure dans les uses de fELV.

    Troisième problème : Avec les connecteurs natifs de Lazarus, je réalise des requêtes d'Update ou d'Insert sur mes bases mySQL distantes dans des threads. La création des éléments nécessaires est intégrée dans le thread. Cela a l'avantage de fluidifier l'application. J'ai essayé de la même façon -donc sans poser un seul composant sur la Form et en les créant de manière dynamique- et systématiquement j'ai un plantage de l'application. Là, je suis très mal. En Lazarus seule une chaîne Connect->Trans->Query est threadable. Le DataSouce plante tout. Cela peut se comprendre. Mais ici je n'utilise pas non plus de DataSource. Reste la gestion de ce curieux TFDGUIxWaitCursor... Je crains que les composants FireDac ne soient trop sophistiqués pour permettre cette gymnastique étrange je l'entends bien...

    Ce n'est peut-être pas très clair ?

    Merci.
    Dernière modification par Invité ; 13/11/2014 à 18h04.

  2. #2
    Invité
    Invité(e)
    Par défaut
    ADD : 18:02

    Deuxième problème : Réglé -> Après fermeture puis réouverture de Delphi, je vois le connecteur de uSQLModule

    Premier problème : Cela fonctionne avec une instance en déplaçant simplement et uniquement le DataSet de uSQLmodule dans fELV... L'ouverture d'une deuxième instance de fELV entraîne encore pour l'instant un plantage -> Il y a du mieux.

    Troisième problème :-> ToDo List

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Premier point : c'est finalement très curieux. Dans certaines Forms utilisant uSQLmodule, l'Inpecteur d'Objet du TDFQuery posé sur ces Forms propose automatiquement le connecteur de USQLmodule, pour d'autres non. J'ai pensé un temps que cela pouvait être lié à l'ordre de déclaration dans les uses, mais je n'ai rien trouvé de logique.

    Deuxième point : c'est résolu.

  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 peut-être
    Bonjour

    Et en ouvrant la fiche uSQLmodule avant la fiche en designtime ca change qq chose ?

    cordialement

Discussions similaires

  1. XE7 Utilisation des DataModules
    Par Invité dans le forum Delphi
    Réponses: 4
    Dernier message: 15/11/2014, 11h04
  2. Puis-je vraiment utiliser XE7 avec des cibles Android ?
    Par Eric Beaumard dans le forum Composants FMX
    Réponses: 13
    Dernier message: 24/10/2014, 15h02
  3. utilisation des sockets sous windows
    Par Tupac dans le forum Réseau
    Réponses: 2
    Dernier message: 21/12/2002, 18h24
  4. [Crystal Report] Utilisation des vues de sql serveur
    Par Olivierakadev dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 15/11/2002, 17h44
  5. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01

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