2018/5/14~2018/5/18 周記
阿新 • • 發佈:2018-05-18
SQ C# win winform 類庫 ati created bject 過去
Fastreport是一個強大的報表控件,使用起來也很方便,有點類似於VS裏面winform的工具箱,都是直接拉控鍵到界面上,雙擊控鍵,輸入你想顯示在頁面的值。
首先是創建新的數據源,有兩種方式連接數據源,一種是連接到數據庫上,關聯數據庫的表,這樣就可以直接調用數據庫表裏面的數據。還有一個是連接一個空的數據庫,在輸入創建表的SQL語句,創建一個新的表,右擊表,增加新的列,在練習使用Fastreport過程,遇到了一個很奇葩的問題。在列的屬性裏面有一個Calculate,當把它設置成false時,我預覽就會報下面的錯:
但是另一個項目裏面我把Calculated設置false就沒有報錯,可以預覽。一直搞不懂這到底是為什麽。。
還有一個就是如何刪除掉Fastreport裏面那些表。找了很久一直找不到刪除這些表的方法。。
如何在C#中引用Fastreport的報表呢??
首先在要引用Fastreport,這樣才能使用Fastreport的方法。代碼如下所示:
private void button3_Click(object sender, EventArgs e) { string reportName = "Model.frx"; string path = Application.StartupPath + "\\" + "Model.frx"; FastReport.Report fr = new FastReport.Report(); if (File.Exists(path)==true) { fr.Load(reportName);//加載回執單表 DataTable dataTable = new DataTable(); SetModelInfo(); //創建一張信息表 CreateDataTable(dataTable, modelQr); fr.RegisterData(dataTable,"tt"); //fr.PrintSettings.ShowDialog = true; //fr.Print(); if (fr.Prepare()) fr.ShowPrepared(); }
frx文件一定要放在該類庫的bin文件下的debug裏面。不然讀取不到。
Fastreport裏面創建的表裏面的列名要和在C#代碼裏面字段Model的屬性字段一樣,這樣在打印報表時候才能把數據傳過去。
效果如下所示:
生成的二維碼,因為有之前的 項目在,所以我只是一直在copy代碼而已,雖然還不懂二維碼到底是怎麽生成的,但是起碼以後有碰到的話可以弄得出來一個二維碼。
2018/5/14~2018/5/18 周記