|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre actif
![]() ![]() Inscription : avril 2006 Messages : 212 ![]() |
Bonjour,
J'ai developpe une appli Delphi qui pilote un rapport crystal 10 en fonction de parametres selectionnes par l'utilisateur. J'ai entre autre parametre un alias de base de donnees. Je transmet apres recherche le nom de la BD correspondante a mon rapport. Lors de la conception de mon rapport, j'ai cree une connection ODBC sur une base (Mabase1) afin d'acceder a ma table de travail. Si par malheur mon utilisateur, se connecte avec l'alias de la base Mabase2 (alors que ma table de travail existe aussi dans la base Mabase2), j'ai un super message d'erreur "Erreur 535 : parametres de connection incorrectes". Apres de mutiples essais, je n'arrive pas a trouver la syntaxe qui me permette de gerer dynamiquement ma connection au rapport. Si vous avez des idees, merci a vous de m'apporter vos lumieres. Oncle Pete |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() |
tu utilises quoi comme composant pour piloter CR?
je travailles avec CR et C++Builder et j'ai rencontré le même problème. Résolu avec deux fichiers DSN que je passes à mon compo crystal en fonction du besoin. A priori, ton message vient d'un problème lié à l'utilisateur. Ton user existe-t-il sur les deux bases? c'est quoi le sgbd?
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain) _ _ _ _ _ _ _ _ _ La planète ne nous appartient pas, elle nous a été prêtée par nos enfants _ _ _ _ _ _ _ _ _ Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres |
|
|
00
|
|
|
#3 |
|
Membre actif
![]() ![]() Inscription : avril 2006 Messages : 212 ![]() |
SAY,
J'utilise sous Delphi le composant TCrpe en rapport avec l'API crpe32.dll, ainsi qu'un driver ODBC pour acceder a mes bases SQL server. J'ai essaye de passer par un fichier DSN comme tu le preconise. Mon server (SERVER=) est toujours le meme, mon user (UID=) de connection idem. D'apres ce que j'ai pu voir, seule la ligne DATABASE= est a modifier. J'ai donc modifie le nom de celle-ci, mais Crystal m'affiche toujours les données de la table que je lui ai declare lors de la conception du rapport. Lorsque je regarde la propriete de ma table dans la fenetre "definition de l'emplacement de la source de donnees" de Crystal, la valeur de la propriete "Catalogue" est toujours la meme. Il me manque donc visiblement quelque chose, mais quoi !! Merci Oncle_Pete |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() |
alors, moi j'ai fait une classe qui me manipule le TCrpe.
et dans ma fonction d'Init, j'ai : Code :
en espérant t'aider
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain) _ _ _ _ _ _ _ _ _ La planète ne nous appartient pas, elle nous a été prêtée par nos enfants _ _ _ _ _ _ _ _ _ Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres |
||
|
|
00
|
|
|
#5 |
|
Membre actif
![]() ![]() Inscription : avril 2006 Messages : 212 ![]() |
Bon ca y est, j'ai fini par trouver une autre solution.
Je recupere finalement le string de la requete SQL, lui modifie le nom de la base par programme et roule ma poule. Il reste neamoins que plein de choses m'echappent sur le sujet. Notamment, pourquoi lorsque on affecte une nouvelle connexion par programme au niveau de l'etat, celui-ci ne propage pas les proprietes de cette nouvelle connection a la (ou les) table(s) de travail ?. La fonction tables.propagate n'a aucun effet sur les modifs apportees. En tout cas, merci SAY pour ton aide. @+ Oncle_pete |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com