EasyReport新增功能

V2.5.02021年05月01日一、界面优化:
  1、新增了GridLines和FontSize配置,可以设置表格线表格样式和字体大小。
  2、除了下拉框以外,所有类型的参数控件都可以带有数据源,并通过Initialize=^0来指定数据源中某条记录作为参数的初始值。
  3、查询面板与登录面板的按钮文本可配置。
  4、独立报表行(Rows)可以配置独立的数据源(DataSource),同时可以配置数据源过滤器(DataFilger)和数据索引(DataIndex),为独立报表行提供灵活的数据来源。
  从本版开始,独立报表行中的数据行索引从原来的RowIndex改为DataIndex,以区别于报表配置同名元素。RowIndex表示报表的行号列。
  二、数据访问层优化:
  1、原生支持PostgreSQL数据库;(PostgreSQL既可原生驱动访问,也可通过ODBC访问。)
  2、支持配置默认数据库架构schema,通过连接串的DefaultSchema属性配置用户的默认架构;
  3、支持数据库连接后的自动执行语句,可用于对连接后的数据库环境进行配置。通过连接串的OnConnected属性配置SQL语句。
  三、数据源优化:
  1、数据源新增了简易ETL功能,可将外部数据引入到本地数据库后再生成报表;
  2、ETL功能由LoadDataSource, LoadFilter, WriteTo, WriteKeys, WriteCols等属性完成;
  3、LoadDataSource以数据源的形式装载外部数据,通过WriteTo写入到本地数据库。
  四、企业微信支持优化:
  1、企业微信登录后可自动保存用户信息及部门信息到本地数据库。
  2、本地数据库中必须按指定格式创建WeixinUser和WeixinDept表。
  五、底层类库全面优化:
  将json、jQuery以及mysql,oracle,postgre等类库全面升级到最新版本。
V2.4.02021年02月01日一、增加微信自定义分享功能。提供更好的微信分享体验,分享后的消息体有自定义的标题、摘要、图标和链接地址等。
  增加微信登录数据源插件"EasyReportPlugin,EasyReport.Plugin.WeixinAuthDAO",它可从企业微信获取用户信息,如果同时配置了ConnectionString,可将用户信息保存到本地数据库。
  二、增加了图表数据源的分页功能,结合数据源过滤器,可以灵活地将数据源中的部分数据显示在图表中,优化图表的展示能力和美观程度。
  三、报表目录插件增加了SQL语句配置。如果不配置SQL,默认是读取报表目录并展示;如果配置了SQL,则执行配置的SQL并展示为报表目录,扩展了目录的能力。要求配置的SQL语句返回以下字段:Url,Title,IconUrl,Remark,Tips,HitTimes
  四、数据源配置增加了Commands命令集,用于扩展CommandText的功能。规则如下:如果配置了CommandText,则执行CommandText;如果没有配置CommandText,则执行Commands集合中第一条Authorization表达式为True的语句.
  为了保持风格一致,从本版开始Commands,PrepCommands,PostCommands中的When改为Authorization,统一为授权表达式。
  五、日期型参数中的DataTextFormatString配置,允许使用yyyyMMdd这样非标准格式串。非标准的日期格式不影响查询面板上参数值的展示,但是在传入SQL语句执行时,按指定的格式。
V2.3.52020年12月20日一、增加了报表默认配置功能。
  在全局配置增加了ReportDefault配置项,该项的为所有报表的提供默认值。共提供了20多个默认配置项。
  二、增加了PageIconUrl配置项,可自定义报表页面图标。
  该项可配置两个图标的URL,用逗号分隔。分别表示报表页面的图标和登录页面的图标。
  如省略了第二项,则报表页面和登录页面使用同一个图标。
V2.3.42020年11月30日一、优化了样式表,默认使用微软雅黑字体。
  二、增加了自定义样式功能。开发者可自行开发报表的样式,然后通过配置文件将样式文件加载到报表上。每一个报表可以有单独配置样式文件,桌面端、移动端可以有不同的样式文件。
   1、StyleDesktop配置桌面端的样式表;
   2、StyleMobile配置移动端的样式表。
  三、修正了多选框参数的初始化表达式功能。多选框的初始化表达式可以有两种格式:
   1、选项值的列表,可以含有宏;
   2、以“^”开头的数字列表,表示选项的索引。如^0,1,2,-1,-2,表示选项的第1,2,3项和最后第1,2项默认选中;“^A”表示选中所有的选项;
  四、优化了排序功能。点击表格进行标题进行排序后,排序列显示高亮色,同时还显示一个三角形,表示排序的方向。
V2.3.32020年09月22日增加了水印功能
V2.3.22020年09月10日一、提供文本查询控件的AutoComplete功能
  二、提供有条件执行SQL语句功能
V2.3.12020年08月20日一、用户登录配置新增10个属性,用于指定用户自定义字段。
  二、优化了菜单,移动端菜单自动折叠
  三、修正了数据源缓冲机制的BUG
V2.3.02020年06月22日一、新增查询参数联动功能。查询面板中后面的查询参数可依赖于前面的查询参数。
  二、新增日期时间DateTime输入控件,原日期输入控件改名为Date。
  三、列定义中新增了Authorization属性,用于对列进行授权配置,无权访问的列不显示。
  四、宏可应用于各种格式化字串,初始化字串,独立报表行。
  五、优化程序结构,改正了已知BUG。
V2.2.72020年05月01日增加了对接中心验证服务CAS功能。
v2.2.62020年04月15日优化了EasyReport的服务功能,增加了从服务中获取数据的数据源插件ServiceDAO。通过此插件,可以实现从远端部署的EasyReport中获取数据的功能。
V2.2.52020年04月06日一、优化了报表自动目录功能及部门展示界面。
  二、当报表宽度超过浏览器宽度时显示横向滚动条。
  三、优化了独立报表行功能,可将报表的顶端、底部显示独立的行。
  四、内置了Oracle,MySql数据库支持。
  五、简化了报表链接功能。在超级链接列中配置rpt://ReportName,即可自动传递所有的SQL参数及指定的数据库字段。
  六、增加了AlternatingRow和HoverHighlight配置项,可配置启用或关闭间隔行样式和鼠标悬停高亮样式
V2.2.42019年11月28日数据导出支持Excel2007格式
V2.2.32019年04月28日一、取消了微信认证模式下的密码登录界面
  二、用户登录界面出错后屏蔽错误信息
V2.2.22018年07月05日修正了下拉列表中有时参数会丢失的问题。
V2.2.12018年05月15日增加了报表行功能。可以在表格之外展示数据。
  增加了页面蒙板,防止多次点击查询按钮。
V2.2.02018年03月16日增加了图表功能
V2.1.92018年02月01日一、增加了两个数据源插件:
  1、字典数据源"EasyReportPlugin, EasyReport.DictionaryDAO",可以使用配件文件编辑少量数据,作为字典使用。
  2、月末日历数据源"EasyReportPlugin, EasyReport.MonthEndDAO",可以生成指定日期段的每月月末日期列表。
  二、多选框初始值增了全选功能"^A"
  三、优化了ExtColumn和SumColumn配置
  四、优化了程序结构,与EasyLoader共用组件。
  注意:本版本由于修改了部分模块的名称,升级安装时应将原有文件(除了.config以外)删除再考入新版本,覆盖安装会出错。
V2.1.82017年11月24日一、增加了数据源缓存功能。
   通过配置数据源的CacheDuration设置数据源的缓存时长(秒)。数据源缓存可在数据变化不频繁,或报表对数据变化不敏感的情况下使用。缓存有利于提高报表速度,减少并发访问对数据库的压力,但是需要占用更多的服务器内存。
  二、取消了页面汇总功能。
   页面汇总功能通过设置页脚的公式实现,此方法效率较低,从2.1.8版之后不再支持。可使用数据源中的汇总列功能取代。
  三、参数配置中增加了Required项,Required=true表示此参数不能为空值。当提供了空值时,查询面板上显示红色星号要求录入非空的参数值。
V2.1.72017年11月11日一、增加了查询条件(SQL参数)说明,报表列(字段)说明
  通过配置ParameterRemark可为每个参数提供一个备注,便于查询时提示
  通过配置ColumnRemark可为每个报表列提供一个备注,便于描述报表字段。
  二、增加了报表作者,以便于获取报表使用者的发馈
  三、增加了报表日志功能
  四、优化了界面
V2.1.62017年05月22日实现了自定义宏:在<Macros> </Macros>中添加宏定义后可在报表中引用。
V2.1.52017年03月24日修正SQL参数不能区别空值与空串的错误
V2.1.42017年01月18日优化了微信认证功能
  在Authentication中配置好CorpId和Secret,微信企业号应用可直接链接到EasyReport即可实现微信认证。
V2.1.32017年01月05日一、调整了界面
  二、自动识别移动浏览器,界面布局自动适应浏览器
  三、增加了MobileDevice配置项,可指定适应移动浏览器
  四、增加了PanelOff,MenuOff,TitleOff选项,可以关闭查询面板、菜单栏和标题栏
  五、增加了HtmlEncode配置项,可以在表格中插入html标签,扩充表格展示能力
  六、修正了一些BUG
V2.1.22016年11月25日一、修正了初始化值的算法BUG
  二、改进了用户登录算法
  三、增加了授权表达式功能,新增了notin,startswith,endswith运算符,并支持and,or运算。
V2.1.12016年11月03日一、修正了日期格式串的bug
  二、修正了SQL参数防攻击算法
  三、跟进了业务系统密码算法升级
V2.12016年09月26日修改宏格式
  原宏变量的格式是“_”开头并结尾,这一设计有可能与一般的SQL语句冲突。本版改为“!”作为宏的特征符号。
  通过配置ValidObject="EasyReportPlugin,SuperPortalLogin.DenyLoginPVO"可以禁止使用令牌登录,
  通过配置WeixinCorpId和WeixinCorpSecret为空可以禁止使用微信登录,以提高安全性。
V2.02016年08月10日EasyReport第二版
  一、支持多个数据源。多个数据源可以来自不同的数据库,甚至可以是异构的数据,它们可以在EasyReport中建立关联
  二、可以对数据源进行纵向和横向的扩展,根据计算表达式算出扩展结果。
  三、提高了安全性,减少了SQL注入的风险
  四、优化了配置项,删去了一些冗余的配置项,但由此会带来与前一版本的部分不兼容
  五、支持手机报表,支持微信企业号身份认证
V1.7.22016年01月10日查询面板的SQL参数分为二列布局
V1.7.12014年04月10日一、优化界面
  二、增加了QueryPanel=off的URL开关,可关闭查询面板
V1.7.02014年02月25日一、合并了ReportExpore.aspx和EasyReport.aspx功能,并入Default.aspx
   a)除了登录以外的所有功能由Default.aspx实现,不再区分ReportExplore或EasyReport
   b)查询面板与表格同时出现,方便修改查询参数
   c)合并了ReportService.asmx和ReportService.aspx,改为ReportService.ashx
   d)不提供ReportName时,默认报表名为:EasyReport。借此功能实现报表目录:数据源为内置的EasyReport.ReportIndex
V1.6.32014年01月14日一、修改了登录机制。对于同一个Authentication对象在一定的时期内只需要登录一次。
  二、快捷菜单中增加了登录、查询菜单,可以随时重新登录或转查询界面。
V1.6.22012年11月16日一、调整了报表的Web服务,封装了访问Web服务的客户端方法。
  二、优化了界面,所有界面元素由样式表控制,可供用户自行修改样式。
V1.6.12012年10月17日一、ReportBody配置项新增了三个属性,用于生成报表的行号。
    1. RowIndex 是否显示行号
    2. RowIndexStart 行号开始位置
    3. RowIndexCaption 行号的列标题
  二、调整了部分日期宏的名称。日期宏数量扩充至38个。
V1.6.02012年09月13日一、实现了多套配置,大量报表可分套开发
  二、简化内嵌的结构,去除内嵌数据源的<DataSources>节和内嵌身份认证的<Authentications>节
  三、增加了HTTP协议的TOKEN服务
V1.5.42012年07月24日一、修正BUG: 报表名为中文时的浏览器兼容问题。
  二、修正BUG: 日期型参数不能赋初始值问题。
  三、优化显示界面。
 2012年09月12日新增了两个登录插件:三代业务系统用户登录;综合分析系统门户登录
V1.52011年11月15日一、庆祝EasyReport诞生一周年,美化了界面。
  二、增加了width属性,可控制列的宽度。
V1.42011年09月26日一、加强了EasyReport的可扩展性。
    a) 数据源的扩展:提供了IEasyDAO接口,实现接口的类可加载到EasyReport完成数据源的功能
    b) 用户登录的扩展:提供了IEasyLogin接口,实现该接口的类可加载到EasyReport完成密码验证等用户登录的功能
V1.32011年07月25日一、将配置文件从web.config中分离出来,单独使用一个EasyReportSettings.config的配置文件,利于维护。
  二、配置文件大小不受限制
  三、数据源配置中增加了一个ConnectionStringName属性。
  四、新增了访问主页列出报表目录的功能。
  五、新增了报表分组ReportGroups属性。在主页列出目录时,可以按分组列出。
  六、新增将常用的用户登录功能的DLL库。
  七、新增用户的USERACL字段,即用户访问列表字段。
  八、新增了Authorization属性,即访问授权。与Authentication的区别:
    a) Authentication身份认证,即鉴定用户是谁。
    b) Authorization授权,即允许符合条件的用户访问报表,拒绝非法用户访问。
  九、简化EasyReport报表之间的链接。
   如从Report1链接到Report2,只需要配置一个超链列,地址为:rpt://Report2
  十、增加了报表导出功能。
V1.2.32011年07月11日一、增加connectionStringName属性
  二、增加userAclField属性
V1.2.22011年06月17日修正BUG: 缺席参数未能成生URL
V1.2.12011年03月30日一、增加日期宏
  二、增加Object类数据源
  三、修改Precommand的处理方法
V1.02010年11月12日EasyReport第一版