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

SDK Discussion :

Appel état CR 8.5 sur Delphi 7


Sujet :

SDK

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    265
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 265
    Points : 117
    Points
    117
    Par défaut Appel état CR 8.5 sur Delphi 7
    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

    Nom : Message_erreur.jpg
Affichages : 226
Taille : 11,1 Ko

    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:
    Code Delphi : Sélectionner tout - Visualiser dans une fenêtre à part
    LogOnServer('PDSODBC.DLL', DsnName, DataBaseName, ServerUser, ServerPassWord);
    En ceci :
    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.

  2. #2
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    265
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 265
    Points : 117
    Points
    117
    Par défaut
    Bonjour,

    Toujours dans la recherche la solution, je me suis rendu compte que je n'ai pas de fichier PDSODBC.DLL dans mon ordinateur. Par contre j'ai retrouvé le fichier p2ssql.dll qui le répertoire
    C:\Windows\Crystal.

    Mais je tiens à signaler que l'un ou l'autre fichier, je reçois le même message d'erreur.


  3. #3
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    265
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 265
    Points : 117
    Points
    117
    Par défaut
    J'ai téléchargé le fichier p2sodbc.dll et je l'ai mis dans le dossier C:\Windows\Crystal créé automatiquement lors de l'installation de Crystal Report. Et j'ai mis ceci comme code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LogOnServer('p2sodbc.dll',DsnName,DataBaseName, ServerUser, ServerPassWord);
    et ça marche lorsque je ne modifie pas la requête.

    Mais lorsque j'ajoute cette ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLQuery :='select * from table';
    alors j'ai le message : Erreur détectéé par la DLL de base de données

    Merci de votre aide.

  4. #4
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    265
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 265
    Points : 117
    Points
    117
    Par défaut
    Bonjour à tous.
    Selon mes recherches sur différent forum, dans Crystal Report 8 ou 8.5 au niveau du menu Base de données -> Convertir le pilote de base de données vous avez le pilote pdsodbc.dll mais ce pilote aurait été changé en p2sodbc.dll. Avez-vous cette information ?

    Autre remarque en l'enregistrant avec regsvr32 /u p2sodbc.dll, j'ai le message d'erreur: point d'entrée DllUnregisterServer est introuvable

    Dans mon cas, la requête faite par SQLQuery comporte des sous-requêtes imbriquées, des calcul de date avec datediff et des instructions tel que if.
    A titre de rappel, ma bd est sur mysql. J'ai crée un lien odbc et l'application est sur Delphi 7.

    Merci beaucoup

Discussions similaires

  1. Recherche d'informations sur Delphi 2006
    Par MarcP dans le forum EDI
    Réponses: 2
    Dernier message: 01/10/2005, 19h30
  2. Problème de "cxControls.dcu" no found sur Delphi 5
    Par Clemsou dans le forum Langage
    Réponses: 2
    Dernier message: 16/08/2005, 12h50
  3. Comment lire du PDF sur Delphi ?
    Par nil dans le forum Composants VCL
    Réponses: 5
    Dernier message: 01/08/2005, 16h14
  4. Installation de composants Delphi 7 sur Delphi 2005
    Par Leobaillard dans le forum Composants VCL
    Réponses: 5
    Dernier message: 22/06/2005, 18h50
  5. cours directx francais sur delphi
    Par charly dans le forum DirectX
    Réponses: 2
    Dernier message: 28/05/2002, 17h29

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