FastReport实现预览

1.添加dll
  FastReport.dll,FastReport.Bars.dll,FastReport.Web.dll
2.在web.config-》system.webServer中添加配置

《httpHandlers》
《remove name="FastReportHandler"/>
《add path="FastReport.Export.axd" verb="*" type="FastReport.Web.Handlers.WebExport"/>
《/httpHandlers>

3.在包含views的文件夹中webconfig中加入以下信息:引用命名空间

《add namespace="FastReport"/>
《add namespace="FastReport.Web"/>

4.在_Layout.cshtml文件中

加入

@WebReportGlobals.Scripts() 

@WebReportGlobals.Styles()
这个我在做项目时无法识别,或识别时报错,因此未添加
5.用FastReport画好模板,放在指定位置:templatePath
6.控制器
 预览功能:
 public void PreviewReport(DiagnoseParams diagnose)
        {
            string templatePath = Server.MapPath(Server.UrlDecode(Server.UrlDecode(@"/TemplateFiles"))).TrimEnd('\\') + "\\";
            var diagnoseResult = listAllResult.Where(p => p.Diagnosises.FirstOrDefault().ID == diagnose.DiagnoseId).FirstOrDefault();
            string DiagnosisDoctorName = diagnoseResult.Diagnosises.FirstOrDefault().Doctor.UserName;
            string signPath = Server.MapPath(@"/Images/" + DiagnosisDoctorName + ".jpg");
            DataSet ds = new DataSet();
            DataTable dt = new DataTable();
           // dt.TableName = "Table1"; // 一定要设置表名称

            ds.Tables.Add(dt);
            dt.Columns.Add("Name");
            dt.Columns.Add("Sex");
            dt.Columns.Add("Age");
            dt.Columns.Add("HZHNumber");
            dt.Columns.Add("CheckDateTime");
            dt.Columns.Add("MirrorDescription");
            dt.Columns.Add("CheckProject");
            dt.Columns.Add("CheckItems");
            dt.Columns.Add("Department");
            dt.Columns.Add("DiagnosticHospital");
            dt.Columns.Add("DiagnosticDoctor");
            dt.Columns.Add("DiagnosticOpinion");
            dt.Columns.Add("ApplyHospital");
            dt.Columns.Add("PathologyNO");
            dt.Columns.Add("ImageRepresentation");
            dt.Columns.Add("InpatientNumber");
            dt.Columns.Add("ReportDateTime");
            dt.Columns.Add("ESign");
            dt.Columns.Add("Ward");

            // Add DataTable Row
            dt.Rows.Add(diagnoseResult.Patient.Name, diagnoseResult.Patient.Sex.ToString(), diagnoseResult.StudyAge.ToString() + " " + diagnoseResult.StudyAgeUnit, diagnoseResult.ID,
               diagnoseResult.CreateDate.ToString("yyyy-MM-dd HH:mm"), HttpUtility.UrlDecode(diagnose.MirrorDescription), diagnoseResult.StudyPart == null ? "" : diagnoseResult.StudyPart.Name.ToString(),
               diagnoseResult.StudyItem == null ? "" : diagnoseResult.StudyItem.Name.ToString(), diagnoseResult.StudyType == null ? "" : diagnoseResult.StudyType.Name.ToString(), diagnoseResult.Diagnosises.FirstOrDefault().Doctor.Organizations.Count == 0 ? "" : CommonController.GetRootOrganization(diagnoseResult.Diagnosises.FirstOrDefault().Doctor.Organizations.FirstOrDefault()).Name,
               DiagnosisDoctorName, HttpUtility.UrlDecode(diagnose.DiagnoseNote), diagnoseResult.ApplyDoctor == null ? "" : CommonController.GetRootOrganization(diagnoseResult.ApplyDoctor.Organizations.FirstOrDefault()).Name,
               diagnoseResult.PathologyNO, HttpUtility.UrlDecode(diagnose.DiagnoseSuggestion), diagnoseResult.HospitalizationNO, DateTime.Now.ToString("yyyy-MM-dd HH:mm"), "");//Esign need update


            Report report1 = new Report();
            report1.Load(templatePath + "CTMR.frx");
            report1.RegisterData(ds);
            report1.Show();
        }

 


技巧点:fastReport 的Tabel可以导入,View-》Data  Actions-》Open Dictionary

转载于:https://www.cnblogs.com/DoudouZhang/p/7159833.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值