一. C# Pull 模式下加载数据
1. 建一个SqlTableAdapter,adapter的SelectCommand的Query的Row应该跟Report的Dataset的Column一样:
SqlTableAdapter tblAdapter=new SqlTableAdapter();
tblAdapter.SelectCommand = new SelectCommand([strQuery]);
tblAdapter.Connection = [DBConnection];
2. 用SqlTableAdapter的数据Fill到Dataset中去:
tblAdapter.Fill([dataset]);
3. 将Dataset绑定到报表中:
[Report].SetDataSource([dataset]);
说明:
在VS.net 中重载Crystal Report报表的时候,必须先将需要呈现的数据装入DataSet后,再用Report的实例载入数据。
二. 修改Report Title的问题
问题:需要动态改变Report的标题。
过程:用[Report].SetParameterValue([int],[value]),出现:
未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 CrystalDecisions.CrystalReports.Engine.dll 中。
其他信息: 无效索引。 (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))
错误,fixing....