动态报表的创建 (XtraReport) 以及对字段的合计实现方法

本文介绍如何利用DevExpress的XtraReport组件动态创建报表,并展示如何实现字段的合计功能。通过实例展示了如何绑定数据源、设置数据项绑定以及添加总计,包括对金额和比例字段的求和展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using DevExpress.XtraReports.UI;
using yxgjjoracle2008.Entities;
using yxgjjoracle2008.Data;
using System.Data;
namespace FrameWork.web.Manager.Module.FrameWork.yxgjj.Report
{
    public partial class ZhuanChuList : DevExpress.XtraReports.UI.XtraReport
    {
        public ZhuanChuList()
        {
            InitializeComponent();
        }

       //下面的函数是自己定义的  (这里参数根据的需要进行设置)
        public ZhuanChuList(YxHuidan Huidan, TList<YxHuidanKhzyTemp> ZhuanyiList)
        {
            
            InitializeComponent();
            this.DataSource = ZhuanyiList;
           
            if (Huidan.SDwzh != null)
            {
                xl_ZcDwzh.Text = Huidan.SDwzh;
                xl_ZcDwmc.Text = DataRepository.DwgjjxxProvider.GetBySDwzh(Huidan.SDwzh).SDwmc;

            }
            if (Huidan.SDestDwzh != null)
            {
                xl_ZrDwzh.Text = Huidan.SDestDwzh;
                xl_ZrDwmc.Text = DataRepository.DwgjjxxProvider.GetBySDwzh(Huidan.SDestDwzh).SDwmc;
            }
            YxHuidanKhzyTemp dd = new YxHuidanKhzyTemp();
            //dd.
                // dd.DcLjye  DcRealLixi
            //绑定相关字段
           
            xl_grzh.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "SGrzh", "") });
            xl_grxm.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "SGrxm", "") });
            xl_sfzhma.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "SSfzhm", "") });
            xl_snbf.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcLjye", "{0:N2}") });
            xl_jnbf.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcJnhj", "{0:N2}") });
            xl_lx.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcRealLixi", "{0:N2}") });

            xl_total_snbf.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcLjye", "{0:N2}") });
            xl_total_lx.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcRealLixi", "{0:N2}") });
            xl_total_jnbf.DataBindings.AddRange(new XRBinding[] { new DevExpress.XtraReports.UI.XRBinding("Text", ZhuanyiList, "DcJnhj", "{0:N2}") });
            //对相关数据项进行合计
          
            XRSummary xrye = new XRSummary();
            //指定对该列进行什么操作
            xrye.Func = DevExpress.XtraReports.UI.SummaryFunc.Sum;
            //指定以什么方式显示结果
            xrye.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
            //显示格式
            xrye.FormatString = "{0:N2}";
            xl_total_snbf.Summary = xrye;

            XRSummary xrlx = new XRSummary();
            //指定对该列进行什么操作
            xrlx.Func = DevExpress.XtraReports.UI.SummaryFunc.Sum;
            //指定以什么方式显示结果
            xrlx.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
            //显示格式
            xrlx.FormatString = "{0:N2}";
            xl_total_lx.Summary = xrlx;

            XRSummary xrjnbf = new XRSummary();
            //指定对该列进行什么操作
            xrjnbf.Func = DevExpress.XtraReports.UI.SummaryFunc.Sum;
            //指定以什么方式显示结果
            xrjnbf.Running = DevExpress.XtraReports.UI.SummaryRunning.Report;
            //显示格式
            xrjnbf.FormatString = "{0:N2}";
            xl_total_jnbf.Summary = xrjnbf;

            
        }

    }
}
 


本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/xuzhuqing1234venture/archive/2008/12/28/3629108.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值