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

  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. JSON上

    关于JSON部分: 目录: 一:定义二:实例三:JSON的语法 一:什么是JSON? 1.JSON:JavaScript 对象表示法(JavaScript Object Notation). 2.JS ...

  2. Rmarkdown用法与R语言动态报告

    Rmarkdown用法与R语言动态报告数据分析用R语言非常便捷,因为R语言的社区强大,并且在不断更新和完善,提供了各种分析利器.Knitr和Rmarkdown包则是数据分析中的动态报告利器. 下面是一 ...

  3. python文件和目录操作方法大全(含实例)

    一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()2.返回指定目录下的所有文件和目 ...

  4. C语言面试题(二)

    上篇对嵌入式中C语言基本数据类型,关键字和常用操作进行了汇总,这篇我们将侧重字符串操作.请看下面的字符串处理函数:    a.库函数    1)将字符串src拷贝到字符数组dest内        c ...

  5. [bzoj1452][JSOI2009]Count(树状数组)

    1452: [JSOI2009]Count Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 2057  Solved: 1216[Submit][Stat ...

  6. hdu 5542 The Battle of Chibi(2015CCPC - C题)

    题目链接:hdu 5542 首届CCPC的C题,比赛时一起搞了好久,最后是队友A出的,当时有试过用树状数组来优化 dp,然后今天下午也用树状数组搞了一下午,结果还是踩了和当时一样的坑:我总是把用来记录 ...

  7. List怎么遍历删除元素

    public static void main(String[] args) {  List<String> list = new ArrayList<String>();   ...

  8. openssl evp 哈希算法(md5,sha1,sha256)

    1. 简述 openssl提供了丰富密码学工具,一些常用的哈希算法 比如md5,sha 可以直接用提供的md5.h ,sha.h 接口使用: 为了方便开发者使用,openssl 又提供了一个EVP, ...

  9. Cryptopp iOS 使用 RSA加密解密和签名验证签名

    Cryptopp 是一个c++写的功能完善的密码学工具,类似于openssl 官网:https://www.cryptopp.com 以下主要演示Cryptopp 在iOS上的RSA加密解密签名与验证 ...

  10. 1017作业:配置java环境,学习流程图