具体情况是这样的,winform程序里边使用ReportViewer控件显示报表,一共做了十几个报表,其中有几个,在XP系统下边,首次使用的时候,一绑定数据就会在无任何的异常提示下自动跳出程序,这个程序的线程都被kill了,前提是我有做异常捕捉。在调试的环境下也是,数据绑定到viewer控件的时候没任何问题,但到最后一步,RefreshReport的时候也是会无异常提示地自动退出程序。真心崩溃啊,求大虾帮忙告知是什么问题!private void ShowReport(List<PayRecord_prd_Info> infoList)
{
ReportDataSource rds = new ReportDataSource("PayRecord_prd_Info", infoList); reportViewer1.LocalReport.ReportPath = DefineConstantValue.ReportFileBasePath + @"CostBalance_report.rdlc";
//reportViewer1.LocalReport.ReportPath = DefineConstantValue.ReportFileBasePath + @"CostBalanceDetail_report.rdlc"; reportViewer1.LocalReport.DataSources.Clear(); reportViewer1.LocalReport.DataSources.Add(rds); this.reportViewer1.RefreshReport();
}
public class PayRecord_prd_Info : Model.IModel.IModelObject
{ public PayRecord_prd_Info()
{
this.prd_cRecordID = Guid.Empty; this.prd_cPayType = string.Empty; this.prd_fPayMoney = 0; this.prd_cDepartmentID = Guid.Empty; this.prd_cCertificateID = string.Empty; this.prd_cAdd = string.Empty; this.prd_cLast = string.Empty; this.prd_cPayTypeName = string.Empty; this.prd_cDepartmentName = string.Empty; this.prd_cCertificateDate = string.Empty; this.RecordID = 0; this.prd_dStartDate = null; this.prd_dEndDate = null;
} /// <summary>
/// 记录ID
/// </summary>
public Guid prd_cRecordID { get; set; } /// <summary>
/// 支出类型
/// </summary>
public string prd_cPayType { get; set; } /// <summary>
/// 支出类型描述
/// </summary>
public string prd_cPayTypeName { get; set; } /// <summary>
/// 支出金额
/// </summary>
public decimal prd_fPayMoney { get; set; } /// <summary>
/// 部门ID
/// </summary>
public Guid prd_cDepartmentID { get; set; } /// <summary>
/// 部门名称
/// </summary>
public string prd_cDepartmentName { get; set; } /// <summary>
/// 凭证编号
/// </summary>
public string prd_cCertificateID { get; set; } /// <summary>
/// 凭证日期
/// </summary>
public DateTime prd_dCertificateDate { get; set; } /// <summary>
/// 凭证日期 格式化输出
/// </summary>
public string prd_cCertificateDate { get; set; } /// <summary>
/// 新增人
/// </summary>
public string prd_cAdd { get; set; } /// <summary>
/// 新增时间
/// </summary>
public DateTime prd_dAddDate { get; set; } /// <summary>
/// 最后修改人
/// </summary>
public string prd_cLast { get; set; } /// <summary>
/// 最后修改时间
/// </summary>
public DateTime prd_dLastDate { get; set; } /// <summary>
/// 开始时间
/// </summary>
public DateTime? prd_dStartDate { get; set; } /// <summary>
/// 结束时间
/// </summary>
public DateTime? prd_dEndDate { get; set; } #region IModelObject Members public int RecordID
{
get;
set;
} #endregion
}
public interface IModelObject
{ /// <summary>
/// 对象ID
/// </summary>
int RecordID
{
get;
set;
}
}异常报表
{
ReportDataSource rds = new ReportDataSource("PayRecord_prd_Info", infoList); reportViewer1.LocalReport.ReportPath = DefineConstantValue.ReportFileBasePath + @"CostBalance_report.rdlc";
//reportViewer1.LocalReport.ReportPath = DefineConstantValue.ReportFileBasePath + @"CostBalanceDetail_report.rdlc"; reportViewer1.LocalReport.DataSources.Clear(); reportViewer1.LocalReport.DataSources.Add(rds); this.reportViewer1.RefreshReport();
}
public class PayRecord_prd_Info : Model.IModel.IModelObject
{ public PayRecord_prd_Info()
{
this.prd_cRecordID = Guid.Empty; this.prd_cPayType = string.Empty; this.prd_fPayMoney = 0; this.prd_cDepartmentID = Guid.Empty; this.prd_cCertificateID = string.Empty; this.prd_cAdd = string.Empty; this.prd_cLast = string.Empty; this.prd_cPayTypeName = string.Empty; this.prd_cDepartmentName = string.Empty; this.prd_cCertificateDate = string.Empty; this.RecordID = 0; this.prd_dStartDate = null; this.prd_dEndDate = null;
} /// <summary>
/// 记录ID
/// </summary>
public Guid prd_cRecordID { get; set; } /// <summary>
/// 支出类型
/// </summary>
public string prd_cPayType { get; set; } /// <summary>
/// 支出类型描述
/// </summary>
public string prd_cPayTypeName { get; set; } /// <summary>
/// 支出金额
/// </summary>
public decimal prd_fPayMoney { get; set; } /// <summary>
/// 部门ID
/// </summary>
public Guid prd_cDepartmentID { get; set; } /// <summary>
/// 部门名称
/// </summary>
public string prd_cDepartmentName { get; set; } /// <summary>
/// 凭证编号
/// </summary>
public string prd_cCertificateID { get; set; } /// <summary>
/// 凭证日期
/// </summary>
public DateTime prd_dCertificateDate { get; set; } /// <summary>
/// 凭证日期 格式化输出
/// </summary>
public string prd_cCertificateDate { get; set; } /// <summary>
/// 新增人
/// </summary>
public string prd_cAdd { get; set; } /// <summary>
/// 新增时间
/// </summary>
public DateTime prd_dAddDate { get; set; } /// <summary>
/// 最后修改人
/// </summary>
public string prd_cLast { get; set; } /// <summary>
/// 最后修改时间
/// </summary>
public DateTime prd_dLastDate { get; set; } /// <summary>
/// 开始时间
/// </summary>
public DateTime? prd_dStartDate { get; set; } /// <summary>
/// 结束时间
/// </summary>
public DateTime? prd_dEndDate { get; set; } #region IModelObject Members public int RecordID
{
get;
set;
} #endregion
}
public interface IModelObject
{ /// <summary>
/// 对象ID
/// </summary>
int RecordID
{
get;
set;
}
}异常报表
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货