|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2003 Messages : 2 ![]() |
Bonjour,
je suis un débutant dans les 2, VB6 et CR9. Je voudrais faire une application VB6 qui demande à l'usager: IP du Server, et nom de la base de données (MS-SQL) Je dois alors transférer ces 2 paramètres au rapport de CR9. La raison est fort simple, le même rapport peut se brancher sur plusieurs BD et plusieurs server (puisque les structures des bd sont les mêmes, ça marche) Jusqu'à présent ça ne fonctionne que dans la bd connectée au moment de créer le rapport, si je change les 2 paramètres, le rapport m'affiche les données de la première bd Pourtant, depuis CR9, si je change les paramètres manuellement (en faisant une mise à jour de la connexion) , ça fonctionne, donc le rapport est bon. Dans VB, si je me sers de: strserver = Form1.Text1.Text strbd = Form1.Text2.Text Report.Database.Tables(1).SetLogOnInfo strserver, strbd, "", "" j'ai un message de login fail, mais pourtant mon nom de user de Windows me permet cette connexion, ou la seconde fois, les données de ma première génération du rapport, j'ai spécifié de ne pas sauvegarder les data avec le rapport... Besoin de vos idées lumineuses svp... De Montréal, avec 23 degrès sous zéro... |
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() ![]() Inscription : mai 2002 Messages : 377 ![]() |
Et bien il na fait pas chaud.
Alors avec CR9 il ne faut plus utiliser SetLogOnInfo c'est Deprecated. Elle existe toujours, mais comme tu as pu le voir elle n'a aucun effet. A la place il faut utiliser l'objet ConnectionProperty. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mars 2003 Messages : 2 ![]() |
Merci sur_uix!
Mais, eh oui, je l'ai essayé, même comportement, ou à peu près. Les données ne sont jamais refaraichies correctement, et si je ne mets pas "SA" comme user, pas de connexion. Le vrai problème reste le reffraichissement des data, as-tu une idée? Encore merci! Voici ce que j'ai utilisé: Dim Report As New CrystalReport1 Private Sub Form_Load() Dim strserver, strbd, strtable As String Dim CPProperties As CRAXDRT.ConnectionProperties Dim DBTable As CRAXDRT.DatabaseTable 'Getting the info strserver = Form1.Text1.Text strbd = Form1.Text2.Text Set DBTable = Report.Database.Tables(1) Set CPProperties = DBTable.ConnectionProperties 'DLL name DBTable.DllName = "crdb_ado.dll" 'Resetting values of properties CPProperties.DeleteAll CPProperties.Add "Provider", "SQLOLEDB" CPProperties.Add "Data Source", strserver 'Add the name value pair for the database. CPProperties.Add "Initial Catalog", strbd 'Add the name value pair for the user name. CPProperties.Add "User ID", "" 'Add the name value pair for the password. CPProperties.Add "Password", "" 'Set the table name. 'DBTable.Location = "MaTableSQL" Screen.MousePointer = vbHourglass CRViewer91.ReportSource = Report CRViewer91.ViewReport Screen.MousePointer = vbDefault |
|
|
00
|
|
|
#4 |
|
Membre éprouvé
![]() ![]() Inscription : mai 2002 Messages : 377 ![]() |
J'ai fais la même chose que toi et cela fonctionne.
Mais il faut encore le faire pour toutes tes tables pas seulement la 1er. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com