Bonjour,
J’utilise Delphi 7, j’ai ce message d’erreur lorsque j’appelle un état fait sur Crystal Report 8.5: Impossible d'ouvrir une session sur le serveur
Ma base de données est MYSQL et j’ai créé un lien ODBC pour l’attaquer.
Je vous explique :
Dans mon application, je ne pose pas de composants (TViewer, ou TReport . . .) crystal report sur mes formulaires. J’ai créé une unité appelée Unit_Tools et dans les uses figure Crystal_TLB comme vous pouvez le voir :
Code Delphi : 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
27
28
29
30
31
32
33
34 UNIT Unit_Tools; INTERFACE USES ADODB,DB, SysUtils, RzButton, windows, Dialogs, DateUtils, ComObj, Classes,Controls, Forms, Unit_ExecSQL, Class_Transaction, Crystal_TLB, WinInet, IdMessage, IdSMTP; . . . . procedure Impression(sRptFileName, sQuery:string; sWindowTitle:string = 'Impression'); Var Save_Cursor:TCursor; begin Save_Cursor := Screen.Cursor; Screen.Cursor := crHourGlass; with TCrystalReport.Create(nil), HR do begin try LogOnServer('PDSODBC.DLL', DsnName, DataBaseName, ServerUser, ServerPassWord); ReportFileName := sRptFileName; SQLQuery := sQuery; WindowTitle := sWindowTitle; Destination := crptToWindow; DiscardSavedData := True; PrintFileType := crptCrystal; WindowState := crptMaximized; WindowMaxButton := false; WindowMinButton := false; WindowShowPrintSetupBtn := True; Action := 1; except on E: Exception do begin MessageDlg(E.Message, mtInformation, [mbOK], 0); Screen.Cursor := Save_Cursor; end; end; end; Screen.Cursor := Save_Cursor; end;
Dans n’importe quel formulaire pour afficher un état voici le code:
Code Delphi : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 uses Unit_Tools ; . . . . . //************************Appel du composant CrystalReport*********************77 sRptFileName := GetCurrentDir+'\'+'Reports\'+'Etat.rpt'; sWindowTitle := 'XXX 1.0 - IMPRESSION '; wQuery := select * from table1; Impression(sRptFileName, wQuery, sWindowTitle);
Dans le cadre de recherche de solution, j’ai saisi les paramètres de connexion au niveau de cette ligne:
En ceci :
Code Delphi : Sélectionner tout - Visualiser dans une fenêtre à part LogOnServer('PDSODBC.DLL', DsnName, DataBaseName, ServerUser, ServerPassWord);
Code Delphi : Sélectionner tout - Visualiser dans une fenêtre à part LogOnServer('PDSODBC.DLL', my_connection_ODBC,localhost, root, my_passord);
Toujours le même message d’erreur. Merci à vous.
Partager