Bonjour,

Mon application en C#/WPF, tout fonctionne comme il faut sur WinXP et Win7.

Je souhaite faire un test sous Windows 8 Release Preview.

Mon application utilise les outils SAP Crystal Report pour faire des rapports en lien avec une BDD sous SQL Server 2008 R2.

Lorsque je lance mon rapport comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
private void Window_Loaded(object sender, RoutedEventArgs e)
{
 
 
                crystalReportsViewer1.Owner = Window.GetWindow(this);
 
                ReportDocument report = new ReportDocument();
 
                // Le fichier doit exister !
                if (File.Exists("SAPMonRapport.rpt"))
                {
 
                    report.Load("SAPMonRapport.rpt");
 
                    CrystalDecisions.Shared.ConnectionInfo connnexionInfo= new ConnectionInfo();
 
                    string connectionString = "server=" + ConfigurationManager.AppSettings["SQLServerName"] + ";database=MaBDD;Trusted_Connection=True";
 
                    connnexionInfo.ServerName = ConfigurationManager.AppSettings["SQLServerName"];
 
                    if (connnexionInfo.ServerName == ".\\SQLEXPRESS")
                    {
                        using (SqlConnection connection = new SqlConnection(connectionString))
                        {
                            string s = ConfigurationManager.AppSettings["SQLServerName"];
                            s = s.Replace(".\\", "\\");
                            connnexionInfo.ServerName = connection.WorkstationId + s;
                        }
                    }
 
                    connnexionInfo.DatabaseName = "MaBDD";
 
                    connnexionInfo.IntegratedSecurity = true;
 
                    Tables tables = report.Database.Tables;
 
                    foreach (CrystalDecisions.CrystalReports.Engine.Table table in tables)
                    {
                        TableLogOnInfo tableLogonInfo = table.LogOnInfo;
                        tableLogonInfo.ConnectionInfo = connnexionInfo;
                        table.ApplyLogOnInfo(tableLogonInfo);
                    }
 
                    report.SetParameterValue(0, MonParametre.ToString());
 
                    crystalReportsViewer1.ShowToggleSidePanelButton = false;
 
                    crystalReportsViewer1.ViewerCore.ReportSource = report;
 
                }
                else
                {
                    Global.DivaShowMsg("Report File 'SAPMonRapport.rpt' not found !");
                }
}
Ou le paramètre "MonParametre" est au forma GUID pour sélectionner les données a afficher dans le rapport.


J'ai l'erreur suivante :

App::OnDispatcherUnhandledException _ System.Windows.Markup.XamlParseException: L'invocation du constructeur sur le type 'SAPBusinessObjects.WPF.Viewer.ViewerCore' qui correspond aux contraintes de liaison spécifiées a levé une exception. ---> System.TypeInitializationException: Une exception a été levée par l'initialiseur de type pour 'CrystalDecisions.Shared.SharedUtils'. ---> System.IO.FileLoadException: Impossible de charger le fichier ou l'assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' ou une de ses dépendances. La définition trouvée du manifeste de l'assembly ne correspond pas à la référence de l'assembly. (Exception de HRESULT : 0x80131040)
J'ai chercher des informations sur log4net, sans trop de succès...

Merci de votre aide.

NahMean