资源简介
2.5主要变动:
1.重要改进:新版本中Delphi下的VCL控件已经比较完善,封装良好,与Delphi无缝连接,改变了旧版中需要将Dataset中的数据复制到报表引擎中的实现方式,通过模拟ADO接口的方式直接支持BDE/ClientDataset/等非ADO方式的Dataset,不需要考虑太多的COM方面的因素,强烈建议Delphi的开发者直接使用该VCL控件。
使用VCL控件编译的程序发布时,将AcReport.dll和您的EXE放在同一个文件夹下一起发布即可,不需要运行RegSvr32来注册控件,VCL中的代码会自动注册该控件。
2.完善文本控制方式(在设计器界面上增加了此项菜单):
1).当文本控制设置为自动适应单元格(自动缩放字体)时,选择上对齐方式时,也能自动换行。
2)当文本控制设置为截断字符时,支持自动换行,保持单元格的高度不变,在某些特殊应用中,不管文本如何变化,可以保持表格的形状不变。
3.增加了OnSaveReport事件,当用户在设计器中点击“保存”按扭时,会触发此事件,程序可以响应此事件执行自定义保存,例如可以将报表保存到数据库中,或者返回一个信息给设计器用户。
4.直接支持ADO.net中的Dataset和DataTable对象,不需要再通过CustDataBuiler对象来转换,大大提高了在.net下的运行速度。(需要引用 AcNetUtils.dll,具体使用方法请参考Demo)
代码示例:
//Dataset:
//2.5以前的版本需要将Ado.net下datatable在AC中copy一个复本,速度比较慢
// AcReport.AcUtils.CopyDatasetToAcRptEngine(mDataset, mac, false);
//新版本的处理方式,通过ADO-ADO.net适配器的方式直接访问
DbAdapter.FillDatasetToAC(mDataset, mac);
//DataTable:
mDataset.Tables["zlemployee"].TableName = "雇员档案";
AcReport.AcUtils.CopyTableToAcRptEngine(mDataset.Tables["雇员档案"], mac, false); //重新加入一个表到AcReport (旧版本方式)
//在2.5以后的版本中,可以用如下的方式将ADO.net的DataTable对象通过AcRecordsetAdapter转换为ADO接口的方式直接加入到AcEngine,
//这样做就不需要在AC中复制一个复本,大大提高的速度。
AcRecordsetAdapter RecordAdp = new AcRecordsetAdapter(mDataset.Tables["雇员档案"]);
mac.AddNetAdoData("雇员档案", RecordAdp);
// 以上两行也可以直接调用 AcNetUtils 类库里提供的现成方法(效果是一样的):
AcNetUtils.DbAdapter.FillDataTableToAC(mDataset.Tables["雇员档案"], mac);
5.可拖动对象设计功能增强
6.支持 条码 Code128 Auto
ACReport简介
Anycell Report(简称AC Report)是一款中国式报表组件,是国内最早的基于表格,支持图文混排、公式和脚本的中国式报表工具之一。就如Anycell Report的名称那样,灵活强大的表格功能一直是AC Report区别于其它软件或控件最显著的特征之一,AC Report 表格取消了传统表格概念中“列”的概念,每一行上的单元格数量可以不等,且可以自由活动,勿须上下对齐,在制作复杂的中国式报表时可以避免很多不必要的合并拆分操作,制作表格更加方便和随心所欲,并且省时省力。AC Report单元格支持多种丰富的形态,例如格式化文本、图片、图表、条码、OLE容器等。
AC Report的一些基本特点:
1.独具特色的表格,风格与Word表格相似,但可以做出比Word或Excel更灵活的表格来。
2. 功能全面、专业的中国式报表设计器,中国用户更易于学习和接受。
3.支持多种单元格样式,可以打印图像、图表(直方图、折线图等)、Rich文本、
条形码、中式财务帐薄、支持在报表中嵌入Word、Excel文档等。
4. 强大的计算和合计功能。内置表达式解析系统和函数库。
5. 可扩充性,可以在应用程序中给报表引擎扩充函数库、报表样式和单元格样式。
6.支持多种报表样式,如清单式、分组、交叉表、以及子报表
代码片段和文件信息
using System;
using System.Data;
using System.Collections;
using System.Runtime.InteropServices;
using ADODB;
using AcReport;
///
/// Summary description for Class1
///
///
namespace AcNetUtils
{
public static class DbAdapter : object
{
public static void FillDataTableToAC(DataTable table IAcRptEngine Engine)
{
//在2.5以后的版本中,可以用如下的方式将ADO.net的DataTable对象通过AcRecordsetAdapter转换为ADO接口的方式直接加入到AcEngine,
//这样做就不需要在AC中复制一个复本,大大提高的速度。
//
AcRecordsetAdapter RecordAdp = new AcRecordsetAdapter(table);
Engine.AddNetAdoData(table.TableName RecordAdp);
}
public static void FillDatasetToAC(DataSet dataset IAcRptEngine Engine)
{
//在2.5以后的版本中,可以用如下的方式将ADO.net的DataTable对象通过AcRecordsetAdapter转换为ADO接口的方式直接加入到AcEngine,
//这样做就不需要在AC中复制一个复本,大大提高的速度。
//
for (int i = 0; i <= dataset.Tables.Count - 1; i++)
{
AcRecordsetAdapter RecordAdp = new AcRecordsetAdapter(dataset.Tables[i]);
Engine.AddNetAdoData(dataset.Tables[i].TableName RecordAdp);
}
}
}
public class AcPropAdapter : objectADODB.Property
{
#region Property 成员
public int Attributes
{
get
{
return 0;
}
set
{
}
}
public string Name
{
get { return ““; }
}
public DataTypeEnum Type
{
get { return DataTypeEnum.adInteger; }
}
public object Value
{
get
{
return 0;
}
set
{
}
}
#endregion
}
public class AcAdapterEnumerator : object System.Collections.IEnumerator
{
#region IEnumerator 成员
public object Current
{
get { return 0; }
}
public bool MoveNext()
{
return false;
}
public void Reset()
{
}
#endregion
}
[ClassInterface(ClassInterfaceType.None)]
public class AcFieldPropsAdapter : Properties _Collection IEnumerable
{
#region IAcDbProps 成员
public int Count
{
get { return 0; }
}
public System.Collections.IEnumerator GetEnumerator()
{
return new AcAdapterEnumerator();
}
public void Refresh()
{
// ADODB.InternalProperties ip = (InternalProperties)new object();
}
public Property this[object Index]
{
get { return new AcPropAdapter(); }
}
#endregion
}
public
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3531264 2011-10-11 10:42 AcReport报表引擎\AcReport.dll
文件 49 2011-01-08 00:39 AcReport报表引擎\注册ACReport引擎.bat
文件 3434496 2011-10-10 15:40 ActiveX控件\AcWebClient.ocx
文件 55 2010-10-21 15:39 ActiveX控件\注册ACReportActiveX控件.bat
文件 26173 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\AcDbInt.cs
文件 2652 2011-10-10 14:02 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\AcNetUtils.csproj
文件 5249 2011-10-10 14:01 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\AcReportUtils.cs
文件 32768 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\bin\Debug\AcNetUtils.dll
文件 65024 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\bin\Debug\AcNetUtils.pdb
文件 57344 2011-10-10 14:02 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\bin\Debug\Interop.AcReport.dll
文件 106 2011-10-10 14:00 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\Class1.cs
文件 265 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\obj\AcNetUtils.csproj.FileList.txt
文件 574 2011-10-10 14:02 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\obj\Debug\AcNetUtils.csproj.ResolveComReference.cache
文件 32768 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\obj\Debug\AcNetUtils.dll
文件 65024 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\obj\Debug\AcNetUtils.pdb
文件 57344 2011-10-10 14:02 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\obj\Debug\Interop.AcReport.dll
文件 1339 2011-10-10 13:59 Demos\AdoNetUtils\AcNetUtils\AcNetUtils\Properties\AssemblyInfo.cs
文件 919 2011-10-10 13:59 Demos\AdoNetUtils\AcNetUtils\AcNetUtils.sln
..A..H. 23552 2011-10-10 15:24 Demos\AdoNetUtils\AcNetUtils\AcNetUtils.suo
文件 32768 2011-10-10 14:03 Demos\AdoNetUtils\AcNetUtils.dll
文件 32768 2011-10-10 14:03 Demos\C#.net\AcNetUtils.dll
文件 32768 2011-10-10 14:03 Demos\C#.net\AcRptUtils\AcNetUtils.dll
文件 5241 2010-12-08 00:42 Demos\C#.net\AcRptUtils\AcReportUtils.cs
文件 4750 2011-01-12 22:09 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\ADOAppDemo.csproj
文件 453 2011-01-11 00:32 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\app.config
文件 40960 2011-09-22 17:45 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\bin\Debug\ADOAppDemo.exe
文件 453 2011-01-11 00:32 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\bin\Debug\ADOAppDemo.exe.config
文件 44544 2011-09-22 17:45 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\bin\Debug\ADOAppDemo.pdb
文件 5632 2005-12-08 14:51 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\bin\Debug\ADOAppDemo.vshost.exe
文件 453 2011-01-11 00:32 Demos\C#.net\应用示例(ADO)\ADOAppDemo\ADOAppDemo\bin\Debug\ADOAppDemo.vshost.exe.config
............此处省略1450个文件信息
评论
共有 条评论