Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports > SDK
SDK Forum sur l'utilisation de Crystal Reports par des API (VB, C++, Delphi, Java, etc.)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/01/2007, 15h52   #1
Invité de passage
 
Inscription : octobre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 11
Points : 2
Points : 2
Par défaut Crystal IX avec java

En V 10 voici mon code de création d'un document issue d'un report. Il ne marche plus en V IX car je pense que je ne me suis pas authentifier. cet authentification auprès du CMS n'était pas necessaire.
Comment s'authentifier en tant que "Administrator" ?

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
String servRAS = Config.getProperty(Config.RAS);                                                         
String logDB = Config.getProperty(Config.USERID_DB2);                                                    
String passDB = Config.getProperty(Config.PASSWORD_DB2);                                                 
 
ReportClientDocument reportClientDocument = new ReportClientDocument();                                  
reportClientDocument.setReportAppServer(servRAS);                                                        
reportClientDocument.open(nomMaquette,OpenReportOptions._openAsReadOnly);                                
reportClientDocument.getDatabaseController().logon(logDB, passDB);                                       
 
PrintOutputController lePrintOutputController = reportClientDocument.getPrintOutputController();         
ReportExportFormat aReportExportFormat = getReportExportFormat(format);                                  
ByteArrayInputStream byteIS = (ByteArrayInputStream)lePrintOutputController.export (aReportExportFormat);
writeFile(nomFichierSortie,byteIS);
gerard_martin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2007, 15h13   #2
Invité de passage
 
Inscription : octobre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 11
Points : 2
Points : 2
En V XI
1/ les reports sont stockés dans la base de données.
2/ Il faut s'authentifier.

Il s'agit donc de faire une requete afin de récupérer l'objet...
Voici un code testé
Code :
1
2
3
4
5
6
7
 
IEnterpriseSession oEnterpriseSession = CrystalEnterprise.getSessionMgr().logon("administrator", "", servRAS, "secEnterprise");;
		IInfoStore oInfoStore = (IInfoStore)oEnterpriseSession.getService("InfoStore");
		IInfoObjects oInfoObjects = oInfoStore.query("Select * from CI_INFOOBJECTS where SI_PROGID = 'CrystalEnterprise.Report' and SI_INSTANCE = 0 and SI_NAME = '" + reportName + "'");
		IReportAppFactory oReportAppFactory = (IReportAppFactory)oEnterpriseSession.getService("", "RASReportService");
		ReportClientDocument oReportClientDocument = oReportAppFactory.openDocument((IInfoObject)oInfoObjects.get(0), 0, java.util.Locale.ENGLISH);
		oReportClientDocument.getDatabaseController().logon(logDB, passDB);
NB : j'ai galérer sur le type d'authenfication, l'authentification "Enterprise" s'écrit "secEnterprise" (sic!)
gerard_martin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h55.


 
 
 
 
Partenaires

Hébergement Web