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

Bibliothèques et frameworks PHP Discussion :

Problème rapport Crystal Report PHP


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2013
    Messages : 38
    Points : 39
    Points
    39
    Par défaut Problème rapport Crystal Report PHP
    Bonjour à tous,

    J'ai un problème dans la génération de rapport en PHP. J'utilise dispose du logiciel Crystal Report XI Developer. J'essaie d'exécuter le code suivant dans mon navigateur :

    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
     
     createReport("J:/www/test/rapport.rpt", "J:/www/test/test.pdf");
     
     function createReport($reportName,$pdfName) {
     	$ObjectFactory= new COM("CrystalReports115.ObjectFactory.1") or die ("Error on load");
     	$crapp = $ObjectFactory-> CreateObject("CrystalRuntime.Application.11");
     	$creport = $crapp->OpenReport($reportName) or die("Couldn’t open report");
     	// j'utilise ici les mêmes infos que celles du rapport dans le client Crystal Report
     	$creport->Database->Tables(1)->SetLogOnInfo("DSN", "database", "user", "password");
     	$creport->FormulaSyntax = 0;
     	$creport->RecordSelectionFormula = '{'.'table.champchaine'.'}="'.'machaine'.'" and {'.'table.champdate'.'}='.'#01/01/2013#';
     	$creport->EnableParameterPrompting = 0;
     	$creport->DiscardSavedData;
     	$creport->ReadRecords();
     	$creport->ExportOptions->DiskFileName=$pdfName;
     	$creport->ExportOptions->PDFExportAllPages=true;
     	$creport->ExportOptions->DestinationType=1;
     	$creport->ExportOptions->FormatType=31;
     	$creport->Export(false);
     	echo '<br>Rapport généré !!!';
     }
    Mais après différents essais de code, j'obtiens toujours l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    PHP Fatal error:  Uncaught exception 'com_exception' with message '<b>Source:</b> Crystal Reports ActiveX Designer<br/><b>Description:</b> Impossible de démarrer la connexion.' in J:\www\test\index.php:19
    Stack trace:
    #0 J:\www\test\index.php(19): variant->Export(false)
    #1 {main}
      thrown in J:\www\test\index.php on line 19
    Je ne trouve pas de réponse à ce problème. Avez-vous la solution ?

    Merci d'avance,
    ________________________________________________________
    Ma config : Apache 2.4 - PHP 5.3 - MSSQL Sage x3

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    verifie tes fichiers et l'install de crystal report. je ne dirais jamais assez tout le mal que je pense de l'api COM.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2013
    Messages : 38
    Points : 39
    Points
    39
    Par défaut
    Bonjour gene et merci de ton aide,

    Crystal Report est correctement installé car j'arrive a générer des rapports en PHP sans connexion à la base de données. Pour son exploitation en COM, les Runtime que j'appelle sont bien présents dans la Base de Registre de Windows. Le problème ne vient donc pas de là.

    Peut-être un souci de configuration ODBC ? Ou quelque chose de mauvais dans mon code ?

    Merci,

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2013
    Messages : 38
    Points : 39
    Points
    39
    Par défaut
    Bon j'ai avancé, en fait j'appelais l'objet "CrystalRuntime.Application" au lieu de "CrystalDesignRuntime.Application", permettant de gérer les connexions base de données.

    Maintenant j'ai une autre erreur dû à ma connexion ODBC :
    PHP Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Crystal Reports ActiveX Designer<br/><b>Description:</b> Impossible de démarrer la connexion.
    Détails : IM002:[Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié' in J:\www\test\index.php:14
    Stack trace:
    #0 J:\www\test\index.php(14): variant->LogOnServer('odbc.dll', 'ADX_CS_X3V6P', 'X3V6P', 'V6LFD', 'tiger')
    #1 J:\www\test\index.php(3): createReport('J:/www/test/ZPL...', 'J:/www/test/tes...', Array)
    #2 {main}
    thrown in J:\www\test\index.php on line 14

    PHP Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Crystal Reports ActiveX Designer<br/><b>Description:</b> Echec du chargement des informations de base de données.
    Détails : Le connecteur de base de données crdb_crmsss23.dll n'a pas pu être chargé.' in J:\www\test\index.php:15
    Stack trace:
    #0 J:\www\test\index.php(15): variant->LogOnServer('CRmsss23.dll', 'ADX_CS_X3V6P', 'X3V6P', 'V6LFD', 'tiger')
    #1 J:\www\test\index.php(3): createReport('J:/www/test/ZPL...', 'J:/www/test/tes...', Array)
    #2 {main}
    thrown in J:\www\test\index.php on line 15
    Selon les différents paramètres dans le LogOnServer, j'obtiens les deux erreurs différentes. Je pense que mon pilote est en 64 bits alors que mon Apache est 32 bits. Est-ce un problème ? Y a t'il une solution ?

    Merci,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/10/2013, 03h20
  2. Réponses: 0
    Dernier message: 19/04/2010, 15h44
  3. Réponses: 4
    Dernier message: 03/02/2006, 12h48
  4. [VB.NET] [CR] Probléme avec Crystal Report.
    Par Silvia12 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/03/2005, 15h18
  5. [Crystal Reports][PHP] Projet ...
    Par Néo-Tony dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 17/02/2005, 11h55

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