logo
small logo
  • Produkty
  • Zamów
  • Wsparcie techniczne
  • About
  • Customer panel Wsparcie techniczne
    • en
    • de
    • JP
    • ZH
  • Glówna strona
  • /
  • Articles
  • /
  • Jak stworzyć własny pasek narzędzi dla raportu webowego FastReport.NET
  • Jak utworzyć raport w aplikacji ASP.NET MVC w Visual Basic

    3 marca 2022

    Język programowania VisualBasic.NET jest przez wielu postrzegany jako język dla początkujących. Ale to oczywiście

    read more
  • Dostosowanie paska narzędzi i ustawienia eksportu w FastReport.Web dla Core

    6 września 2021

    Nasi użytkownicy często potrzebują zmienić wygląd paska narzędzi lub dostosować menu eksportu, ale nie każdy

    read more
  • Jak utworzyć raport z kodu aplikacji internetowej

    16 lutego 2022

    Czasami tworzenie raportu może okazać się prawdziwym bólem głowy. Na przykład, gdy trzeba zarządzać zawartością

    read more
  • Rodzina generatorów raportów FastReport krótka recenzja

    23 marca 2020

    Bez raportowania nie da się prowadzić działalności w żadnej dziedzinie. Biurokracja jest nieodłączną częścią ludzkiego

    read more
  • Jak używać FastCube .NET w aplikacji ASP .NET Core

    6 maja 2021

    1. O FastCube Generator raportów FastReport .NET spełnia prawie wszystkie wymagania użytkowników w zakresie tworzenia

    read more

Jak stworzyć własny pasek narzędzi dla raportu webowego FastReport.NET

31 maja 2020

Wielu użytkowników generatorów raportów interesuje ustawienie paska narzędzi podczas przeglądania raportu. Takie pytania pojawiają się okresowo na forach i w ankietach. Podobnie jest w przypadku tego użytkownika generatora raportów DevExpress, który chce dostosować pasek narzędzi raportów webowych ASP.Net MVC.

Czasami użytkownikowi wystarczy po prostu ukrycie niepotrzebnych kontrolek. Ale co jeśli w ogóle nie będzie zadowolony ze standardowego paska narzędzi do przeglądania raportów?

Standardowy pasek narzędzi raportu webowego może nie odpowiadać użytkownikowi pod względem dizajnu lub zestawu narzędzi. W tej sytuacji, jedynym rozwiązaniem może być wdrożenie własnego paska narzędzi. Oczywiście, nie musi to być panel, kontrolki można umieścić na stronie internetowej w dowolny sposób. Wystarczy, że „pociągniemy raport za właściwe sznurki”, aby uzyskać to, czego potrzebujemy. Za przykład posłuży nam standardowa aplikacja ASP.Net MVC.

Metoda webowa przywraca wygląd raportu i własne kontrolki. Używamy statycznego obiektu raportu webowego, aby móc z nich korzystać w całej aplikacji. Na przykład, przewracając strony.

1
public static WebReport webReport = new WebReport();

Metoda webowa obejmuje kilka parametrów: rodzaj eksportu, wyświetlanie paska narzędzi, styl panelu, rodzaj przejścia na inną stronę.

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
 public ActionResult Index(string ExportType,string toolbar, string page)
 {
 SetReport();//Method of the loading template into the report object
 if (ExportType != null) Export(ExportType); //Report export method
 SetPage(page); //Go to the particular report page method 
 ShowToolbar(toolbar); //Hide/display toolbar method
 webReport.Width = Unit.Percentage(100);
 webReport.Height = Unit.Percentage(100);
 ViewBag.WebReport = webReport;
 return View();
 }
 
//Upload the report object method
 private void SetReport()
 {
 string report_path = GetReportPath();
 System.Data.DataSet dataSet = new System.Data.DataSet();
 dataSet.ReadXml(report_path + "nwind.xml");
 webReport.Report.RegisterData(dataSet, "NorthWind");
 webReport.Report.Load(report_path + "Master-Detail.frx"); 
 }
 
// Go to the particular report page method 
 public void SetPage(string page)
 {
 switch (page)
 {
 case "Next":
 NextPage();
 break;
 case "Prev":
 PrevPage();
 break;
 case "First":
 FirstPage();
 break;
 case "Last":
 LastPage();
 break;
 case "Print":
 Print();
 break;
 }
 }

Metoda ta zasadniczo wybiera czynność w zależności od tego, na którą kontrolkę klikamy. Oprócz czynności związanych z nawigowaniem po raporcie, dostępna jest również kontrolka do wydrukowania raportu.

1
2
3
4
5
//Next page 
 public void NextPage()
 {
 webReport.NextPage();
 } 

 Te i inne metody nawigacji po raportach wykorzystują standardowe kontrolki funkcyjne na pasku narzędzi raportu.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//Previous page
 public void PrevPage()
 {
 webReport.PrevPage();
 }
//First page
 public void FirstPage()
 {
 webReport.FirstPage();
 }
//Last page
 public void LastPage()
 {
 webReport.LastPage();
 }
//Print report
 public void Print()
 {
 webReport.PrintHtml();
 }

Druk raportu można również ustawić jako PrintPDF(). W tym samym czasie, raport zostanie wyeksportowany do formatu pdf.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//Report export nethod
 public void Export(string type)
 {
 switch (type)
 {
 case "pdf": 
 webReport.ExportPdf();
 break;
 case "csv":
 webReport.ExportCsv();
 break;
 case "doc":
 webReport.ExportWord2007();
 break;
 }
 }

Aby określić format eksportu ponownie użyliśmy instrukcji wyboru. W zależności od wyboru, format jest zgodny z metodą eksportu.

1
2
3
4
5
6
7
8
9
10
11
//Set the path of the report folder
 private string GetReportPath()
 {
 return this.Server.MapPath("~/App_Data/");
 }
 
//Hide/display the toolbar default method
 public void ShowToolbar(string toolbar)
 {
 webReport.ShowToolbar = toolbar;
 }

 Teraz spójrzmy na program. Jak wiadomo, naszym zadaniem jest stworzenie wydruku, eksport i nawigowanie po raportach.

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
@{
 ViewBag.Title = "Home Page";
}
<div style="float:left">
 <div align="left">
 @using (Html.BeginForm("Index", "Home"))
 {
 <table>
 <tr>
 <td>
 <input id="Print" type="submit" value="Print" onclick="document.getElementById('page').value='Print'" />
 </td>
 <td>
 @Html.DropDownList("ExportType", new List<SelectListItem>()
 {
 new SelectListItem(){ Text= "PDF", Value = "pdf"},
 new SelectListItem(){ Text= "CSV", Value = "csv"},
 new SelectListItem(){ Text= "Word", Value = "doc"},
 }, "Select export type", { @onchange = "this.form.submit()" } )
 </td>
 <td>
 @Html.CheckBox("Show toolbar", true, new { @onchange = "this.form.submit()" }) Toolbar
 </td>
 <td>
 <input id="first" type="submit" value="<<" onclick="document.getElementById('page').value='First'" />
 <input id="prev" type="submit" value="<" onclick="document.getElementById('page').value='Prev'" />
 <input id="next" type="submit" value=">" onclick="document.getElementById('page').value='Next'" />
 <input id="Last" type="submit" value=">>" onclick="document.getElementById('page').value='Last'" />
 <input id="page" type="hidden" name="page">
 </td>
 </tr>
 </table>
 }
 </div>
</div>
<div>
@ViewBag.WebReport.GetHtml()
</div>

Dodaliśmy kontrolkę drukowania, listę rozwijaną z rodzajami eksportu, pole wyboru ukrywające standardowy pasek narzędzi oraz przycisk przejścia stron (pierwsza, poprzednia, następna i ostatnia strona). Zobaczmy, co się stało:

 Własny pasek narzędzi aplikacji ASP. net MVC

Stworzyliśmy własny pasek narzędzi do interakcji z raportem. Pozwoli nam to na osadzenie tych elementów w dizajn strony internetowej i rezygnację ze standardowego panelu. W tym przykładzie nie wdrożyliśmy wszystkich funkcjonalności standardowego paska narzędzi, a jedynie podstawowe funkcje. Inne funkcje można łatwo zaimplementować analogicznie do przedstawionego wyżej przykładu.

about product zamów
avatar
Dmitriy Fedyashov
Technical Writer
Fast Reports Team: Dmitriy Fedyashov - Technical Writer at Fast Reports
.NET FastReport ASP.NET MVC Customization Toolbar

Add comment
logo
  • 800-985-8986 (English, US)
  • +4930568373928 (German)
  • +55 19 98147-8148 (Portuguese)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314
  • Zamów
  • Pobierz
  • Dokumentacja
  • Opinie użytkowników
  • Jak odinstalować nasze produkty
  • FAQ
  • Tutorial Video
  • Forum
  • Articles
  • Our News
  • Prasa o nas
  • Partnerzy
  • Extended licensing
  • Kontakty

© 1998-2023 by Fast Reports Inc.

  • Poufność