Création d'état Crystal Report [Résolu]

Messages postés
28
Date d'inscription
mercredi 25 mars 2009
Dernière intervention
25 septembre 2012
- 10 juin 2009 à 19:01 - Dernière réponse :
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
- 18 juin 2009 à 17:23
salut!
je voudrais poser une question:
Est-il possible lier un état cristal report à un dataset sans passer par l'assistant de crystal report?
je m'explique:
au lieu de passer par expert base de données et créer une nouvelle liason, est -il pas possible de le faire par code?
Si oui quelqu'un peut -il m'aider?
je vous en prie c'est urgent!
Merci!

<<La cinnaissance est le seul bien qui s'acroît lorsqu'on le partage>>
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
13 juin 2009 à 23:34
3
Merci
bonsoir

cherches-tu à changer dynamiquement la connexion vers un autre serveur ou un autre base,
ou veux-tu changer la requête à executer ?

dans le premier cas c'est possible, je ne me rappelle plus très bien comment mais je peux chercher.
dans le second cas, je crois bien que c'est impossible, les requêtes sont codées en dur dans l'état.

C# is amazing, enjoy it!

Merci cs_Robert33 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de cs_Robert33
Messages postés
28
Date d'inscription
mercredi 25 mars 2009
Dernière intervention
25 septembre 2012
15 juin 2009 à 10:20
0
Merci
Bonjour Robert33!
Merci d'avance de t'être proposer pour m'aider. En fait j'aimerais changer dynamiquement la connexion vers une autre base de donner ou un serveur. Je te serai vraiment reconnaissant si vraiment tu pouvais m'aider. Merci
Commenter la réponse de THRILLERD
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
18 juin 2009 à 17:23
0
Merci
Bonjour

voici un petit exmple, c'est du code que j'ai utilisé avec une version 8 de crystal, mais je pense que la version actuelle doit être compatible

le code vient d'un formulaire ayant un bouton1, et un textbox qui contient la localisation du fichier rapport à charger.
le membre m_report est un membre de la classe de type ReportDocument, un doc Crystal en fait
change les valeurs en rouge avec tes propres données
l'exemple utilise SQL server comme source de donnée, pour les autres source il faudra peut être changer la syntaxe.
le mieux est de mettre en point d'arret dans la boucle foreach et de regarder la syntaxe employée par crystal avant de changer les valeurs. 
            privatevoid button1_Click(object sender, System.EventArgs e)<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

            {

                  if (m_report != null) // fermeture de l'état en cours
                        m_report.Close();

                  m_report = new ReportDocument();

                 

                  m_report.Load (textBox1.Text);

                  if (!m_report.IsLoaded)

                        return;

                  // change the database connection information

                 

                  // Set the logon information for each table.

                  foreach(Table table in m_report.Database.Tables)

                  {

                        TableLogOnInfo logonInfo = new TableLogOnInfo();

                        // Get the TableLogOnInfo object.

                        logonInfo = table.LogOnInfo;

                        // Set the server or ODBC data source name,

                        // user ID, and password.

                        logonInfo.ConnectionInfo.ServerName = "(local)";

                        logonInfo.ConnectionInfo.UserID = "user1";

                        logonInfo.ConnectionInfo.Password = "password";

                        // Apply the connection information to the table.

                        table.ApplyLogOnInfo(logonInfo);

                        if (!table.TestConnectivity())

                             table.LogOnInfo.ConnectionInfo.Password="password";

                  }

                  Report report = new Report(m_report);

                  report.ShowDialog();

            }

C# is amazing, enjoy it!
Commenter la réponse de cs_Robert33

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.