最近制作做了几个简单的报表,写下主要的代码。以便各位参考。

  public void FillDW(DataTable dtbResult)
{
try
{
DataRow dtFr;
int row = ;
int i = , j = ;
int n = ;
int nowCount = ;
string tempName = null;
decimal num = ;
string temp = null;
string tt = null; ;
decimal max = ;
int count = ; m_objViewer.dwResult.SetRedrawOff(); for (i = ; i < dtbResult.Columns.Count; i++)
{
tempName = "name_" + i.ToString() + "_t.text=";
if (i % == )
{
temp = tempName + "\"" + dtbResult.Columns[i].ColumnName + "\"";
}
else
{
for (int k = ; k < dtbResult.Rows.Count; k++)
{
if (decimal.TryParse(dtbResult.Rows[k][i].ToString(), out num))
{
if (max < num)
max = num;
}
}
temp = tempName + "\"数量(" + max.ToString() + ")\"";
}
m_objViewer.dwResult.Modify(temp);
n = dtbResult.Columns[i].ColumnName.Length;
if (i % == && n>=)
{ if (n > )
{
tt = "name_" + i.ToString() + "_t.Width= '160'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '160'";
m_objViewer.dwResult.Modify(temp);
}
else
{
tt = "name_" + i.ToString() + "_t.Width= '120'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '120'";
m_objViewer.dwResult.Modify(temp);
}
}
else
{
tt = "name_" + i.ToString() + "_t.Width= '90'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '90'";
m_objViewer.dwResult.Modify(temp);
} //显示
tt = "name_" + i.ToString() + "_t.visible = '1'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".visible = '1'";
m_objViewer.dwResult.Modify(temp); count++;
max = ;
}
//for (i = dtbResult.Columns.Count; i <= 104; i++)
//{
// //隐藏
// tt = "name_" + i.ToString() + "_t.Width= '0'";
// m_objViewer.dwResult.Modify(tt);
// temp = "name_" + i.ToString() + ".Width= '0'";
// m_objViewer.dwResult.Modify(temp);
//} tt = "name_0_t.Width= '150'";
m_objViewer.dwResult.Modify(tt);
temp = "name_0.Width= '150'";
m_objViewer.dwResult.Modify(temp); nowCount = j;
for (int intI = ; intI < dtbResult.Rows.Count; intI++)
{
row = this.m_objViewer.dwResult.InsertRow();
dtFr = dtbResult.Rows[intI];
for (i = ; i < dtbResult.Columns.Count; i++)
{
temp = "name_" + i.ToString();
m_objViewer.dwResult.SetItemString(row, temp, dtFr[i].ToString());
}
} temp = "(" + this.dtDateFrom.ToShortDateString();
m_objViewer.dwResult.Modify("t_from.text='" + temp + "'");
m_objViewer.dwResult.Modify("t_from.visible='1'");
temp ="至"+ this.dtDateTo.ToShortDateString()+")";
m_objViewer.dwResult.Modify("t_to.text='" + temp + "'");
m_objViewer.dwResult.Modify("t_to.visible='1'"); m_objViewer.dwResult.SetRedrawOn();
m_objViewer.dwResult.Refresh(); }
catch (Exception objEx)
{
MessageBox.Show(objEx.Message);
} }

dw.LibraryList="XX.pbl"

dw.DataWindowObject="XXX";

datawindow 创建操作报表。的更多相关文章

  1. DevExpress XtraReports 入门四 创建 Web 报表

    原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...

  2. [原创]Devexpress XtraReports 系列 2 创建表格报表

    昨天发表了Devexpress XtraReports系列开篇,今天我们继续. 今天的主题是创建表格报表. 首先我们来看看最后实现的效果.Demo最后附上. 接下来开始讲解如何一步一步做出这个报表: ...

  3. [原创]Devexpress XtraReports 系列 3 创建主从报表

    昨天写了系列的第二篇Devexpress XtraReports 系列 2 创建表格报表 . 今天我们来继续系列 3 创建主从报表 首先我们来看看最后实现的效果.Demo最后附上. 开始吧. 第一步, ...

  4. [原创]Devexpress XtraReports 系列 5 创建交叉报表

    昨天我们已经介绍了如何创建多栏报表,详见:[原创]Devexpress XtraReports 系列 4 创建多栏报表 今天我们继续我们的XtraReports系列.Demo和数据库文件最后会附上. ...

  5. [原创]Devexpress XtraReports 系列 6 创建并排报表

    昨天我们已经介绍了如何创建交叉报表,详见:[原创]Devexpress XtraReports 系列 5 创建交叉报表 今天我们继续我们的XtraReports系列.Demo和数据库文件最后会附上. ...

  6. [原创]Devexpress XtraReports 系列 8 创建Drill-Through报表

    哎,今天公司工作忙了一天,一直没有时间写写东西.所以只能昨天晚上加班写咯.苦逼啊...... 昨天发表了Devexpress XtraReports系列第七篇[原创]Devexpress XtraRe ...

  7. [原创]Devexpress XtraReports 系列 10 创建标签报表

    今天这篇是Dx Reports 基础初级系列的最后一篇了.以后如果有什么高级的应用,应该另开一个中级使用系列. 昨天发表了Devexpress XtraReports系列第九篇[原创]Devexpre ...

  8. Java中创建操作文件和文件夹的工具类

    Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...

  9. SSRS (一)创建基础报表

    ReportService创建基础报表 1.数据库SQL Server2012选择SQL Server Data Tools 2.创建商业智能(BI)项目 选择报表服务器项目 ReportServic ...

随机推荐

  1. 关于Extjs MVC模式上传文件的简单方式

    Extjs新手研究上传文件的事情估计是件很头痛的问题,毕竟,我就在头痛.最近两天一直在忙文件上传问题,终于小有收获. 用的是Extjs+MVC3.0+EF开发,语言为C#.前台window代码显示列内 ...

  2. 开发板A/D转换原理

    A/D转换器(Analog-to-Digital Converter)又叫模/数转换器,即使将模拟信(电压或是电流的形式)转换成数字信号.这种数字信号可让仪表,计算机外设接口或是微处理机来加以操作或是 ...

  3. 文件上传和下载(可批量上传)——Spring(三)

    在文件上传和下载(可批量上传)——Spring(二)的基础上,发现了文件下载时,只有在Chrome浏览器下文件名正常显示,还有发布到服务器后,不能上传到指定的文件夹目录,如上传20160310.txt ...

  4. Java开发中经典的小实例-(能被3整除,并且十个数换一行)

    import java.util.Scanner;public class Test15 {    public static void main(String[] args) {        // ...

  5. 如何设置WIN10任务栏

    1.鼠标右键点击任务栏 然后点击锁定任务栏,去掉前面的钩 2.然后鼠标右击任务栏 选择工具栏 点击新建工具栏 3.打开后点击新建文件夹,可以重命名,然后选择刚才新建的文件夹 4.此时任务栏就有了 5. ...

  6. SQL*Loader实验笔记【二】

      所有SQL*Loader实验笔记 实验案例总结(1-7):     SQL*Loader实验笔记[一] 实验案例总结(8-13):   SQL*Loader实验笔记[二] 实验案例总结(14-19 ...

  7. javasrcipt中的for in 循环

    function myFunction(){ var x;  //声明变量x: var txt="";  //声明变量txt并赋值为空: var person={fname:&qu ...

  8. Hibernate 测试分析 好多题都是没认真看题错了。

    此题目考查的是对Hibernate中交叉连接的理解.HQL支持SQL风格的交叉连接查询,交叉连接适用于两个类之间没有定义任何关联时.在where字句中,通过属性作为筛选条件,如统计报表数据.使用交叉连 ...

  9. 如何在MapControl界面添加双击事件实现标绘及符号样式更改

    private void axMapControl1_OnDoubleClick(object sender, ESRI.ArcGIS.Controls.IMapControlEvents2_OnDo ...

  10. Java小bug

    1.使用split函数,将字符串按"."分开,写法如下: String str = "a.b.c"; String[] items = str.split(&q ...