1,水晶報表從資料庫中讀取的資料,當欄位內容比較長時,很影響美觀,需要設定它為自動換行來顯示。
2.開啟欄位的「設定物件格式」屬性,將其「公用」標籤下的「可以擴大屬性選上,*該設定可以使邊框自適應寬度
3.開啟節專家,將詳細資料中的「延伸到後續節」選中,如果有多個節點的話可以把多個節點全部選中;
4.將報表中線條控制項的「設定物件格式」中「列印時擴充套件到節的底部」屬性勾選上,這樣線條也會根據每行的資料高度自動向下移動。
1,建立dataset.xsd 增加表,然後在表中增加若干列
2,增加水晶報表,畫**,將dataset中的列顯示到水晶報表中,並增加引數,(p1.p2.p3.p4.p5)
3 通過**將datatable轉換為xml,dataset
using crystaldecisions.crystalreports.engine;using dbhelper;
using productsys;
using system;
using system.data;
using system.data.oledb;
using system.windows.forms;
class clsdycrystalreportcore
}return dtx1;
}/// /// 獲取reportdocument
/// 使用獲取到的物件對reportview設定
/// crystalreportviewer1.reportsource = myreport;
/// crystalreportviewer1.refreshreport();
///
///
/// 表標題
/// 資料來源
///
public reportdocument getreportsource(string titile, datatable dtsource)
myreport.setparametervalue("titile", titile);
}else
myreport.setparametervalue("titile", titile);
}return myreport;
}}
//控制項呼叫方法clsdycrystalreportcore cls = new clsdycrystalreportcore();
reportdocument rd = cls.getreportsource(reportname,source);
crystalreportviewer1.reportsource = rd;
以上方法是通過1個dataset.xsd來完成多個報表的列印,
下面是自己通過抽象工廠來做的乙個呼叫多個模板的方法
//直接通過datatable顯示到 crastalreportviewer1中string sqlstr="select * from userinfo";
datatable dt = dbhelper.dbhelpersql.dataquery(sqlstr).tables[0];
reportclass reportclass = reportfactory.getinstance(reportname);
reportclass.setdatasource(dt);// 設定資料來源crystalreportviewer1.reportsource = reportclass;
using crystaldecisions.crystalreports.engine;using system;
using system.collections.generic;
using system.linq;
using system.text;
namespace productsys.class
public static reportclass getinstance(string reportname)
}}
什麼push和pull的分不清,反正就是乙個通過xsd乙個不通過xsd檔案進行顯示的。。。。。。
c 水晶報表總結
1,水晶報表從資料庫中讀取的資料,當欄位內容比較長時,很影響美觀,需要設定它為自動換行來顯示。2.開啟欄位的 設定物件格式 屬性,將其 公用 標籤下的 可以擴大屬性選上,該設定可以使邊框自適應寬度 3.開啟節專家,將詳細資料中的 延伸到後續節 選中,如果有多個節點的話可以把多個節點全部選中 4.將報...
水晶報表 建立報表
水晶報表是乙個優秀的報表開發工具,本人在開發通用管理系統的時候,所有報表都使用水晶報表,其簡單 易用和強大的功能令筆者倍加喜愛,現將水晶報表使用手記呈現給大家。一 在使用自帶的水晶報表時,請註冊,否則只能使用30次 二 使用crystalreportviewer進行預覽 crystalreportv...
水晶報表 子報表
經過了一段時間對水晶報表的操作,我對其稍稍了解了一點點。這兩天,一直在為資料量太大而煩惱,我有六張表,其中一張關聯剩餘的五張表。想要顯示資料,結果,顯示不出來,即使我已經在鏈結裡面設定了左外連線。我知道這個是按照笛卡爾積相乘,所以資料會成倍的增加。所以,即使我改用直接連線資料庫的方式也行不通。就是p...