[VBA] Lancer un Access Report basé sur une table SQL Server

Lancer un Access Report basé sur une table SQL Server [VBA] - VB/VBA/VBS - Programmation

Marsh Posté le 03-11-2003 à 14:49:12    

Bonjour,
 
Je souhaite dans mon appli utiliser un Etat Access (un "report" ) basé sur une table temporaire SQLServer! Dans mon code, j'utilise beaucoup la bibliothèque ADO, pour le reste de mon appli.
 
Seulement, pour mon report, j'ai pas l'impression de pouvoir utiliser ADO(et ses RecordSet)! Qu'est ce que je pourrais utiliser d'autre, qui soit efficace?
 
Merci,
 
:hello:

Reply

Marsh Posté le 03-11-2003 à 14:49:12   

Reply

Marsh Posté le 03-11-2003 à 15:17:28    

tu lies tes tables SQL Server en Access via ODBC, ça devrait marcher.  Pour cela tu dois définir un datasource ODBC (à implanter sur chaque machine qui devra remplir cette fonction) puis dans Access, tu fais un import de données (via le menu fichier) mais tu choisis Liaison tables.  Enfin les libellés dépendent un peu de ta version d'Access :D
 
A la fin, tu auras un lien logique vers les tables désirées et tu pourras les utiliser comme sources pour faire ton rapport.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 03-11-2003 à 16:16:36    

D'accord... Utiliser une table liée!
Je suis vraiment étonné que ADO ne puisse pas fournir ce genre de fonctionnalité, alors qu'il vt supplanter les technos DAO, et que les rapports sont quand meme l'une des fonctionnalités de base avec Access.
 
En fait, pour le moment, je vois trois solutions :
- utiliser une table liée
- utiliser une requete PassThrough
- utiliser mon recordset ADO, le sauver dans un fichier, et réouvrir le fichier pour l'importer dans une table Access (avec un ADO connecté à ma base Access cette fois cià
 
Je n'aime pas trop les deux premières méthodes, car elles m'obligent à ouvrir un autre connection en plus de la connection ADO (et en plus, on ne pt fermer ces connections)! Et je ne parle meme pas de la troisieme qui est bancale lol...
 
Si vous avez d'autres idées, n'hésitez pas  
 
Merci :)

Reply

Marsh Posté le 08-11-2003 à 12:30:22    

drasche a écrit :

tu lies tes tables SQL Server en Access via ODBC, ça devrait marcher.  Pour cela tu dois définir un datasource ODBC (à implanter sur chaque machine qui devra remplir cette fonction) puis dans Access, tu fais un import de données (via le menu fichier) mais tu choisis Liaison tables.  Enfin les libellés dépendent un peu de ta version d'Access :D
 
A la fin, tu auras un lien logique vers les tables désirées et tu pourras les utiliser comme sources pour faire ton rapport.


 
OLE DB s'kand même plus simple, plus propre et plus mieux...

Reply

Marsh Posté le 08-11-2003 à 12:40:08    

ça implique un travail de programmation, alors que ma méthode n'impose aucune contrainte du genre [:spamafote]
 
edit: cela dit il vrai que les données SQL server n'ont pas l'air de se présenter de la même façon :/ (j'ai déjà vu des points à la place des virgules comme séparateur décimal :o)


Message édité par drasche le 08-11-2003 à 12:41:05

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 08-11-2003 à 12:45:50    

faut faire gaffe paske point de vue sécu (pour un site wouaib par ex), travailler en ODBC nécessite de configurer sons SQL Server en mode de sécurité mixte.
C'est beaucoup moins sécurisé que le mode d'Authentification Windows pur, disponible uniquement avec OLE DB.

Reply

Marsh Posté le 08-11-2003 à 12:56:02    

on utilise l'authentification Windows et ODBC et ça marche :heink:
 
mais je m'occupe pas du serveur donc je sais pas t'en dire plus :o


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 08-11-2003 à 12:59:49    

drasche > dans le cas d'un site web et d'une connec en ODBC, tu stockes forcément les passwords dans tes fichiers quelque part.
Ca veut donc dire que les pages web vont se connecter en mode mixte --> pas secure

Reply

Marsh Posté le 08-11-2003 à 13:04:12    

ah ouais en web :D
 
non ici c'est réseau interne avec client Access ou écrit en VB6 ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 08-11-2003 à 13:07:37    

Ouais ok.
Mais même comme ça le client se connecte pas en authentification Windows pur...
 
Pas trop grave si le serveur n'est pas ouvert sur le web.


Message édité par LToPiQ[PPC] le 08-11-2003 à 13:08:04
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed