Bonjourj

j'ai développer un objet de connexion a une bdd et j'utiliser un objet session que je crée dynamiquement et que je détruit à la fin.

cependant lorsque je je rappel ce même code qui marche la première fois, j'ai le message
nom de session manquant
sur l'instruction Session.open

voici le code:
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
 
     FBDDSESSION :=TSession.Create(Aowner);
     FBDDSESSION.Name :='SESSION';
     FBDDSESSION.close;
     FBDDSESSION.NetFileDir  := FREPERTOIRE_BDD;
     FBDDSESSION.PrivateDir  := FREP_PRIVATEDIR;
     FBDDSESSION.SessionName :='SESSIONS';
     FBDDSESSION.AutoSessionName := false;
     FBDDSESSION.open;
 
     FQUERY := TQUERY.create(Aowner);
     FQUERY.DatabaseName :=  FREPERTOIRE_BDD;
     FQUERY.Session :=FBDDSESSION;
     FQUERY.SessionName := 'SESSIONS';
     FQUERY.Close;
     FQUERY.SQL.Clear;
     blabal du select......
     FQUERY.Free;
 
     FBDDSESSION.Close;
     FreeAndNil(FBDDSESSION);

ensuite lorsque le je rappel ce code j'ai l'erreur à la ligne et pourtant il me semble que tout est detruit même les fichiers lck,net et autre n'existe plus.

NB : c'est par curiosite que je recherche une explication sur les raisons de ce dysfonctionnement car aujourd'hui que je ne fait appel qu'une seule fois à Session.open (lors de l'ouverture de l'application) et session.destroy à la fermeture de l'application.

PS : je constate que lorsque je lance l'application (en faisant le pas à pas)
je rentre dans le contructor de Tsession ( à l'initialise de l'application) alors que je ne fait pas appel au tsession c'est peut être normal.

merci de votre aide
Cordialement
Qays