??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
在报表工具中Qؓ了动态显C报表数据,可以使用参数。参数的cd不但可以是整型、字W串{基本类型,也可以是整数l、字W串l等数组cdQ这里D一个小例子Q介l一下数l类型在皕杰报表中的使用?br />
首先Q新建报表,报表L据集的sql语句例如Qselect * from employee where empid in (?)?br />
然后Q新Z个参敎ͼ参数cd?#8220;整数l?#8221;Qƈ参数添加到数据集,如下图:
预览的时候,数组参数中的元素?#8220;,”Q这里是英文标点的逗号Q如下图所C:
预览l果如下图所C:
在前2ơ的技巧分享中我们分别用了2U方式来实现数据记录的序P今天我们分n一下第三种实现序号的方法:
皕杰报表提供了一个可以获得行Lrow()函数Q本文就来给大家介绍一下此函数的用法?/p>
表达式:row()
函数说明Q取得当前单元格所在列的行P此函数只能在select、group{扩展函C后用?/p>
我们q以上次的例子来看看如何?amp;函数Q将上次例子中的A2的数字g改ؓ=(row()-1)%20Q显Cg改ؓ=if(@value=0,20,@value))Q设计示例如下:
预览报表昄效果如下Q?/p>
xQ我们又学会一U实现记录序LҎ(gu)?/p>
打开报表设计器,设计如下报表Q?A2单元格的数据值和昄D是与上次CZ中的一_卻I数据?ds1.#0%20Q显C?if(@value=0,20,@value))
其中QD2单元格的左主格是A0QB2单元格的左主格是D2,A2和E2的左L是B2Q预览效果如下:
可以看出Q数据的记录条数q没有按照其从数据库中select出来的顺序显C,那么q种情况下如何显C序号呢Q?/p>
皕杰报表提供了一个可以给可扩展的单元D动加序号的函?&函数Q本文就来给大家介绍一下此函数的用法?/p>
表达?/strong>Q?amp;Cellx Q例如:&A2 Q? 我们q以上次的例子来看看如何?amp;函数Q将上次例子中的A2的数字g改ؓ=&b2%20Q显Cg改ؓ=if(@value=0,20,@value))Q设计示例如下: 预览报表昄效果如下Q?/p>
xQ我们又学会一U实现记录序LҎ(gu)Q下ơ我再介绍一U实现记录序L思\Q欢q大家到时光临我的blog?/p>
q回?/strong>Q整敎ͼ当前格所属的CellxL在所有扩展出来的格子中的排序
说明QCellx必须是当前格的主|q样&Cellx才能够正运,其返回值相当于是当前格所属的CellxL的位|?/p>
什么是 I18N ?L10N ?M17NQ?I18N ?internationalization 的羃写Ş式,意即?i ?n 之间?18 个字母,本意是指软g?#8220;国际?#8221;Q与之类|L10N ?localization 的羃写Ş式,意即?l ?n 之间?10 个字母,本意是指软g?#8220;本地?#8221;QM17N是multilingualization的羃写Ş?意即?m ?n 之间?17 个字母?br /> I18N 从何而来Q?按照软g开发的惯例Q最初的软g只有英文版本Q根据需要,作者再把Y件界面和文档译成不同国家、地区的语言版本。但是由于实现翻译的途径、翻译的工作效率、翻译的可重用性等因素各不相同Qɾ译工作面很大困境Q也ȝ了Y件的推广和应用。ؓ了方便地Y件翻译成不同语言的版本,需要一套翻译规范和通用工具Q这导致了“国际?#8221;机制的出现?/p>
L10N 从何而来?仅仅译是不够的Q同一U语a在不同国家、地区可能存在多个支p,它们在表达习惯、语法结构甚x字种cd~码上都有不同,方言更是千奇百怪,通用的翻译其质量肯定是不高的。涉及到计算机领域,q存在操作习惯上的差别,而且Ҏ(gu)U语a提供完美的输入、显C、打印、保存、传输ƈ非一件轻而易丄事,q就D?#8220;本地?#8221;机制的出现。简而言之,“国际?#8221;?#8220;本地?#8221;的一部分Q主要是指国际化的实现机制和译工作Q?“本地?#8221;包含“国际?#8221;Q是?#8220;国际?#8221;的补充和完善Q它q包括ؓ实现Ҏ(gu)U特定语a良好的支持而进行的有针Ҏ(gu)的译调整以及对Y件进行的打补丁工作?/p>
M17N 从何而来?仅仅本地化是不够的,有的时候需要在同一个品的同一个界面上同时昄不同的语aQ这个时候就需要用到多语种QM17N是Z满q种需求而出现的?/p>
需?Q给报表的每一行都加上序号Qƈ且分后q箋
打开报表设计器,设计如下报表Q?/p>
a2单元格的D|ؓds1.#0,q将a2单元格的左主D|成b2Q预览效果如下:Q假设每?0条记录的分页方式Q?/p>
我们可以看到Q序号已l生了Qƈ且是W二늚序号是与W一连l的?/p>
可是在有些情况下希望分页后序号不q箋Q而要重新计算Q这怎么实现呢?下面来看看我今天分析的第二个技巧:
需?Q给报表的每一行都加上序号Qƈ且每都?开始计?/strong>
要实现这L需求,我们可以用给序号取模的原理来?每页都从1开始排序,具体操作是把A2单元g的表辑ּ换成Q?ds1.#0%2Q然后我们看一下发布后的效果:
我们可以看到Q第二页q是?开始排序的Q基本满了要求Q?/p>
{等Q怎么W?0行变?了?q可不行Q!Q?/p>
׃是对20取模q算Q所以第20行的序号变?了,我们可以在a2单元格的昄gq行讄Q当gؓ0的时候,让其昄?0Q这样问题就解决Q显CD辑ּQ?if(@value=0,20,@value);再次预览一下效果如下:
到这里,全部需求满IQ下ơ我要分享另外一U序h表制作方?/p>