if(App.ActiveCellar == null) { MessageBox.Show("Aucune cave ouverte"); return; } App.SetCursor(true); // // Modifiez ici le titre du report // string reportName = "Liste des vins"; // // Creation entete report // ReportTable rt = new ReportTable(reportName); // // Région // ReportColumn rcArea = rt.NewColumn("Région"); rcArea.Size = 100; // // Appellation // ReportColumn rcApp = rt.NewColumn("Appellation"); rcApp.Size = 140; // // Classement // ReportColumn rcCl = rt.NewColumn("Classement"); rcCl.Size = 100; // // Nom // ReportColumn rcName = rt.NewColumn("Nom"); rcName.Size = 215; // // Couleur // ReportColumn rcColor = rt.NewColumn("Couleur"); rcColor.Size = 60; // // Année // ReportColumn rcYear = rt.NewColumn("Année"); rcYear.Size = 40; rcYear.ContentAlignment = ReportContentAlignment.Right; rcYear.DataType = ReportColumnType.Numeric; // // Nombre bouteilles // ReportColumn rcBottles = rt.NewColumn("Btles"); rcBottles.Size = 40; rcBottles.ContentAlignment = ReportContentAlignment.Right; rcBottles.DataType = ReportColumnType.Numeric; // // Prix // ReportColumn rcPrice = rt.NewColumn("Prix"); rcPrice.Size = 55; rcPrice.ContentAlignment = ReportContentAlignment.Right; rcPrice.DataType = ReportColumnType.Numeric; IWineListWindow listWindow = (IWineListWindow)App.GetWindow(WindowType.WineList); if(listWindow != null) { listWindow.Show(); BindingList list = listWindow.Wines; for (int i = 0; i < list.Count; i++) { Wine wine = list[i]; ReportRow row = rt.NewRow(); int colorIndex = 4; row[0] = wine.Area.Name; row[1] = wine.Appellation.Name; row[2] = wine.Classification.Name; row[3] = wine.Name; row[colorIndex] = "Champ"; if(wine.WineColor == ColorType.Red) { row[colorIndex] = "Rouge"; } else if(wine.WineColor == ColorType.White) { row[colorIndex] = "Blanc"; } else if(wine.WineColor == ColorType.Rosy) { row[colorIndex] = "Rosé"; } else if(wine.WineColor == ColorType.Yellow) { row[colorIndex] = "Champ"; } else if(wine.WineColor == ColorType.LiqueurLike) { row[colorIndex] = "Liq"; } else if(wine.WineColor == ColorType.Misc) { row[colorIndex] = "Autre"; } if(wine.Year != 0) { row[5] = wine.Year.ToString(); } // // Gestion manuelle // if(wine.ManualManagement) { row[6] = wine.Bottles.ToString(); } else { row[6] = wine.RackItems.Count.ToString(); } row[7] = wine.BuyPrice.ToString("f"); } } // // Tri des elements // rt.Sort("0-0;1-0"); // // Génération // System.Collections.ArrayList list2 = new System.Collections.ArrayList(); list2.Add(rt); IReport report = App.ReportEngine.GetSystemReport(PredefinedReport.Grid); string destFileName = App.Path + "Cache\\UserReport2.pdf"; bool success = false; try { report.Create(list2, destFileName); success = true; } catch(Exception ex) { MessageBox.Show("Erreur (1)"); } // // Affichage du report // if(success) { IShellWindow shellWindow = (IShellWindow)App.GetWindow(WindowType.Shell, null); if(shellWindow != null) { shellWindow.Start(destFileName); } } App.SetCursor(false);