Bonjour,
j'ai voulu modifier la configuration de ma fiche Datamodule appelée uSQLmodule de la manière suivante :
Au départ y était placée uniquement la chaîne SQLitexxx, la chaîne de connexion mySQL étant placée sur la Form fELV. Cela fonctionnait.
J'ai voulu intégrer la chaîne mySQL initialement posée sur la Form fELV dans le DataModule. Je l'ai déplacée d'une fiche à l'autre par copie/coller puis supprimer de la Form fELV.
J'ai placé dans les uses de fELV : uSQLmodule.
Le codede fELV a été modifié ainsi :Le code appelé dans le DataModule est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 { mySQL identification : Connexion} //if not mySQLConnect() then begin <- Initialement if not SQLmodule.mySQLConnect() then begin [...] end;Et j'obtiens le magnifique plantage visible sur l'image. Alors je me pose plusieurs questions :
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
19
20
21
22
23
24
25
26 function TSQLmodule.mySQLConnect() : Boolean; begin Result := True; with mySQLConn do begin if Connected then Connected := false; with Params do begin Values['Server'] := gServer; Values['Database'] := gDatabase; Values['user_name'] := gUserName; Values['password'] := gPassword; end; try LoginPrompt := False; Connected := True; except {$IFDEF DEBUG} on E: EFDDBEngineException do begin Result := False; Showmessage(E.Errors[0].Message); end; {$ELSE} Result := False; {$ENDIF} end; end; end;
- Peut-on implanter plusieurs connecteurs dans un DataModule ?
- Un seul TFDGUIxWaitCursor suffit-il ou en faut-il 2 ? (A priori cela ne change rien)
- Faut-il implanter ce TFDGUIxWaitCursor uniquement dans le DataModule ?
- Faut-il implanter les FireDac.xxx dans la Form fELV ?
FireDAC.Stan.Intf, FireDAC.Stan.Option,
FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def,
FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.SQLite,
FireDAC.Phys.SQLiteDef, FireDAC.Stan.ExprFuncs, FireDAC.VCLUI.Wait,
FireDAC.Comp.UI, FireDAC.Comp.Client, Data.DB, FireDAC.Stan.Param,
FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt, FireDAC.Comp.DataSet,
VCL.Dialogs, FireDAC.Phys.MySQL, FireDAC.Phys.MySQLDef;
J'ai pensé que le problème était le TFDGUIxWaitCursor car au départ avec Firedac, j'oubliais ce composant et j'avais une erreur qui court circuitait mes exceptions. Et c'est le cas ici.
Merci.
Partager