单元格属性html,单元格属性

本章对一般单元格属性中的值、显示、段落、字体、扩展、超链接、分页、WEB、其他、表达式、类型以及统计进行了详细的讲解。

本小节对一般单元格的属性值、显示格式、显示值进行了详细介绍。

单元格属性列表中第一项就是值。值是单元格的真实值,当单元格被引用时,引用的就是单元格的真实值

●举例:表达式A1+B1,其运算结果就是A1单元格的值加上B1单元格的值。

显示格式

单元格属性列表中第二项是显示格式,用来设置值在报表展现时的显示格式。

●举例:

如果该单元格的值是一个数值型的数据1.33333,我们希望显示的时候只显示小数点后两位小数,这个就是通过显示格式完成的,可以在显示格式属性值中编辑#0.00,预览可以发现,显示的数值就变成了1.33。

也可以双击显示格式属性值,在弹出的显示格式对话框中选择你需要的格式,确定即可,如下图所示:

c19b6931e5baccebdc4fbb4b7b743341.png

显示值

单元格属性列表中第三项就是显示值,显示值是在报表展现时所显示的内容,仅仅用来显示,很少被引用,如果要引用单元格的显示值,需要用disp函数,例如:disp(A1)代表A1单元格的显示值。

通常我们在数据表里取出的某个字段的值是一个代号,但我们展现出来的报表,并不希望显示代号,希望显示的是每个代号代表的具体值,这时就要用到显示值的属性。

显示值的定义有两种方式:单值和对照表

●举例:

单值定义法:

1、例如:"中国",那么该单元格就显示为"中国"

2、例如:ds1.select(name,id == value()),这样根据当前单元格中的值从数据集ds1中找到与之相等的id,根据id,显示对应name字段的值。

对照表定义法:

map(list(0,1),list("男","女")),这样如果单元格中的数据值为0,则报表展现时,该单元格显示的就是男。同理,如果是1,则显示的是女。

本小节对一般单元格的可视、隐藏行、隐藏列、前景色、背景色、尺寸调整方式等进行了详细介绍。

可视

设置当前单元格是否可见,该属性值为true代表可见,false代表不可见。可以在行首格、列首格、一般单元格和报表首格里控制是否可见属性。

该属性可以是属性值也可以是表达式。很多时候,我们需要设定在满足某一条件时显示,不满足某一条件时不显示。这时,可在表达式中编辑条件表达式。

●表达式举例:

if(@arg1=="raqsoft",true,false)当参数arg1为raqsoft时,当前格可见,否则不可见

隐藏行

当前行是否隐藏,可以是属性值也可以是表达式

实现隐藏本行效果,可通过“隐藏行”属性和行首格的行属性中“是否可见“属性实现。

如果在行首格设置“是否可见“属性,该属性会复制到该行的所有单元格的“隐藏行“属性里。

●举例:

在A1单元格中编辑=to(1,10),希望当当前单元格的数据值为5时,隐藏该行,则应该在该单元格“隐藏行”,或者在行首格的行属性中“是否可见”属性表达式中编辑if(A1==5,true,false)。预览发现数据值为5的那一行隐藏了。

如果希望某一行里任何一个单元格里的值为负数时,该行就隐藏,则在该行行首格“隐藏行”属性表达式中编辑if(value()<0,true,false),该属性表达式会复制到该行扩展出来的所有单元格中。

注:在分栏报表中不允许存在隐藏行。

隐藏列

当前列是否隐藏,可以是属性值也可以是表达式。

实现隐藏本列效果可设在一般单元格中,也可以设在列首格中,至于什么情况设在一般单元格,什么情况设在列首格,规则与“隐藏行”相同,可参考前面所述。

前景色

单元格里文本的颜色

●举例:如下图(左边的为默认的前景色,右边的设置前景色为红色)

5f914a25d9ac01c8824b739907dd87ab.png

在此需要说明是:在Excel里仅仅支持256色,而润乾报表支持任意的颜色,因此某些颜色导出Excel时可能会没有对应色,此时系统会找个最接近的颜色来代替。

背景色

单元格的背景色

●举例:如下图(左边的为默认的背景色,右边的设置背景色为红色)

a1c5263fa757a51e76c5e2cd72862c84.png

在此需要说明是:在Excel里仅仅支持256色,而润乾报表支持任意的颜色,因此某些颜色导出Excel时可能会没有对应色,此时系统会找个最接近的颜色来代替。

尺寸调整方式

有四个选项:按设计尺寸不变/按单元格内容扩大/图片填满单元格/缩小字体填充。

1、如果设置为“按设计尺寸不变”,那么当该单元格里的数据超过单元格宽度的时候,只显示宽度范围内的数据。

2、如果设置为“按单元格内容扩大”,那么当该单元格里的数据超过单元格宽度的时候,单元格宽度可根据其数据内容调整。子报表或者图片单元格,也可以通过上面两个属性把子报表或者图片缩在单元格内,或者把单元格撑大。

3、如果设置为“图片填满单元格“,图片根据单元格的大小缩放图片,以保证图片填满单元格。

[ Show » ]

毕大龙[04/三月/10 02:19下午]这个问题不是bug,与报表无关。问题的原因在于表格中"入党时间""参加工作时间""专业技术职务""熟悉专业有何专长"这几个地方的字字号太大了,表格中放不下。word中的表格与常见的正规表格工具有很大的不同,其中一点就是,word中表格中的文字必须全部显示,如果显示不下,会自行撑大单元格,这一点没法改变。而这个"图片纵向未填满单元格"的现象,就是因为这几行被字给撑大了,尺寸已经不是正规尺寸了。如果想在word中正常显示,在制表时必须要考虑到在word中的显示问题,把字号改小或者是把行高设计得更大。

4、如果设置为“缩小字体填充“,那么当该单元格里的数据超过单元格宽度的时候,这个时候又不希望单元格被撑大,可以设置该属性,将字体缩小填充在单元格中。这个时候如果配合自动换行使用的话,单元格里的数据在缩小字体的同时,并折成多行显示。这样配合使用可避免单元格里的数据在一行里显示而将字体缩小的过于小。

当单元格字体小于12号字体时,使用360极速浏览器或者谷歌Chrome浏览器时会出现字体重叠的问题。原因是由于谷歌Chrome浏览器默认不支持显示字体大小为12号以下的字体,因此如需解决该问题则需要手工修改谷歌Chrome浏览器中对最小字体的设置。

是否可视表达式

填报专用。

设置单元格内容是否可视,该属性值为表达式,表达式的值为true代表可视,false代表不可视。用于单元格类型为维度格或非自动计算数值格时。是否可视表达式为Excel风格,也可引用参数,在填报表编辑过程中,当被依赖格格值改变时会引起重新计算,并根据计算结果设定此格是否可视。

很多时候,我们需要设定在满足某一条件时显示,不满足某一条件时不显示。这时可用是否可视表达式。

●表达式举例:

false当前单元格不可视

I3>=5000当I3单元格的格值大于等于5000时,当前格可视,否则不可视

B3!=arg1参数arg1的值为研发部。当B3单元格的格值为研发部时不可视,否则可视。

F3.getTime()>arg2.getTime()参数arg2的值为1993-01-01。日期比较时先用js函数getTime()把日期换算成毫秒数,再比较。日期参数值格式需与【填报】à【选项】à【集算器选项】中的日期格式一致。当F3单元格的日期晚于1993-01-01时可视,否则不可视。

本小节对一般单元格的自动换行、对齐方式、缩进进行了详细介绍。

自动换行

设置当前单元格的数据值长度超出单元格的宽度时,是否自动换行。

此属性一般适用于中文值字段,如果此属性打勾,当数据值长度超出单元格的宽度时,文字会自动换行,单元格自动被撑高。

例如某单元格的自动换行和缩小字体填充同时被选中,那么当文字超长时,会既折行又缩小字体填充,系统会根据格子的大小,自动选择一个最优的算法

●举例:C3单元格中有这样一串文字

d2772faaea349c5374400fd4673591fa.png

如果我们设置自动换行,则预览的结果是:

9572b2916d5906c311bdd0edeaa36b24.png

可以看到,单元格被撑高,折成多行显示;

如果把自动换行和尺寸调整的“缩小字体填充”结合起来使用,则预览的结果是:238dde38c22d4144448fc08961624e02.png

可以看到,单元格宽度和高度都没变,字体缩小折成多行显示。

●注意:

1.下拉列表框、下拉数据集、下拉日历、下拉数据表、异步下拉树和下拉树类型的单元格不能使用自动换行属性,否则会导致下拉属性不可用。

2.在报表中,除字符串以外的数据类型都不可以设置自动换行属性。

肖琼[16/十二月/09 03:17下午]堵住漏洞了,此时当一张设置了填报属性的报表转换为普通报表时,尽管填报属性已经没有意义,但设置自动换行上仍然阻滞。要想能设置自动换行,必须由用户先清除填报属性。

水平对齐

设置单元格数据在水平方向上的对齐方式:靠左、居中、靠右、两端对齐、分散对齐。

●举例:

318fd32883e2175ca58ebc8cca2dbd12.png

纵向对齐

设置单元格数据在垂直方向上的对齐方式:靠上、居中、靠下。

●举例:

f4be7824b4c759d4ebc1ef012119e0f6.png

缩进

单元格数据值的缩进位置,缺省为0,此时数据值会紧挨着边框。一般设置为2-3比较合适。

★注意点:

1、一旦为单元格设置了缩进属性,则文字在单元格里会相对左或相对右或者相对左右缩进。如果水平对齐方式为左对齐,则相对左边缩进;如果水平对齐方式为中对齐,则相对左右两边缩进;如果水平对齐方式为右对齐,则相对右边缩进。

2、统计图最好不要设缩进,即缩进值最好为0,否则图形被压缩后,变形效果不好看。

3、交叉报表中的交叉单元格建议不要设置缩进。

●举例:如下图(左边的缩进为0,右边的缩进为5)

187c8d23d72d7fe2f35fa415162266f6.png

本小节对一般单元格的字体大小、加粗、斜体、下划线进行了详细介绍。

字体

单元格的值/显示值的字体

★注意点:

如果服务器操作系统是linux、unix等非windows操作系统时,需要注意凡被使用到的字体,都必须在操作系统里安装,否则当报表打印、输出到PDF、统计图等时,会乱码或者变成小方框。一般要求安装相应的中文包,然后再安装jdk。如果已经安装了jdk,补救办法就是拷贝字体。

拷贝字体的方法:把windows操作系统下,…\WINDOWS\Fonts目录下的所有字体文件拷贝到服务器的jdk安装目录下的…\jre\lib\fonts子目录下即可。某些操作系统下如果这样拷贝还不灵,可能还需要打开…\jre\lib\font.properties文件进行修改。

字大小

单元格的值/显示值的字大小

●举例:如下图(左边的为小四,右边的为二号字)

261fdfffb3aff3b8e6dbf536401d2676.png

加粗

单元格数据是否显示为粗体

●举例:如下图(左边的为设置粗体前,右边的为设置粗体后)

48a60ad76385c1a6a6ceb991321ef43c.png

斜体

单元格数据是否显示为斜体

●举例:如下图(左边的为设置斜体前,右边的为设置斜体后)

22f13c8340bdcd1f387ea58f456ae09c.png

下划线

单元格数据是否带下划线

●举例:如下图(左边的为不带下划线,右边的为带下划线)

30e26929870d11b75f2eda62e64aacb3.png

运算结果为集合的函数,我们称为集合函数。集合函数包括:group(),select(),list(),

query(),call(),to()等。

to()函数举例:to(1,3)

计算结果为集合的表达式称为集合表达式。

计算结果为单值的表达式称为单值表达式。

当单元格的数据值表达式为集合表达式时,该单元格默认为可扩展单元格。否则该单元格默认为不可扩展。

扩展方式

单元格的扩展方式属性分为默认、横向扩展、纵向扩展、不可扩展四种。当单元格为可扩展单元格时,可以默认扩展方向,也可以为扩展单元格设置一个扩展方向,扩展可以有横纵两个方向,即横向扩展和纵向扩展,但一个扩展格同时只能有一个扩展方向。

1、默认

l单元格的表达式为单值表达式时,该单元格默认为是不可扩展的。

l单元格的表达式为集合表达式时,该单元格默认为是可扩展的。

l可扩展单元格的主单元格为行首格或列首格时,该单元格默认为纵向扩展。

l可扩展单元格的上主格横向扩展时,该单元格默认为横向扩展。

l可扩展单元格的左主格纵向扩展时,该单元格默认为纵向扩展。

2、横向扩展

l当可扩展单元格的扩展方向为横向时,该单元格进行的扩展称为横向扩展。此时该单元格会横向进行复制,复制出的单元格的数据值依次为表达式的结果数据值,表达式返回几个值,单元格就复制几个。

l复制出来的新单元格的所有属性都引用被复制单元格的属性;

图例

ec704f0fb95c21edb651a74e3ec749ac.png

3、纵向扩展

l当可扩展单元格的扩展方向为纵向时,该单元格进行的扩展称为纵向扩展。此时该单元格会纵向进行复制,复制出的单元格的数据值依次为表达式的结果数据值,表达式返回几个值,单元格就复制几个。

l复制出来的新单元格的所有属性都引用被复制单元格的属性;

图例

949db3f0c85d249c2e754dbea4bed4e4.png

4、不可扩展

l当单元格里表达式的值是单值时,该单元格默认为不可扩展的单元格。

左主格

单元格进行纵向扩展时,我们又称其为其右边格子的左主格。左主格属性可以默认缺省,也可以人为的改变。

缺省左主格认定规则:

单元格纵向扩展时,左边纵向扩展单元格缺省为它的左主格,右边单元格缺省为它的附属格;如果左边没有纵向扩展格,则左主格缺省为`0格。

人为改变主格规则:

可以将某个单元格的左主格设置成某个纵向扩展格。如果要将某单元格的左主格改为00格,则将其左主格属性设置为`0。

为了符合扩展变化的规则,我们可以知道人为设置主格需要满足一些条件:

Ø左主格必须是纵向扩展格,否则设置无效。

Ø不允许出现循环设置的情况,即设置A的主格是B,B的主格是C,C的主格又是A,出现循环设置时认为设置有误,报表无法计算。显然,在缺省的情况下是不可能出现循环设置的,而在人为设置时必须避免这种情况的出现。

Ø横向扩展格不允许有左主格。

人为设置时,可能发生左主格在右边的情况,而且主格也不一定和附属格在同一行上。

上主格

单元格进行横向扩展时,我们又称其为其下边格子的上主格

缺省上主格认定规则:

单元格横向扩展时,上方横向扩展单元格缺省为它的上主格,下方单元格缺省为它的附属格;如果上方没有横向扩展格,则上主格缺省为`0格。

人为改变主格规则

可以将某个单元格的上主格设置成某个横向扩展格。如果要将某单元格的上主格改为00格,则将其上主格属性设置为`0。

为了符合扩展变化的规则,我们可以知道人为设置主格需要满足一些条件:

Ø上主格必须是横向扩展格,否则设置无效。

Ø不允许出现循环设置的情况,即设置A的主格是B,B的主格是C,C的主格又是A,出现循环设置时认为设置有误,报表无法计算。显然,在缺省的情况下是不可能出现循环设置的,而在人为设置时必须避免这种情况的出现。

Ø纵向扩展格不允许有上主格。

人为设置时,可能发生上主格在下边的情况,而且主格也不一定和附属格在同一列上。

同值合并

针对扩展后单元格,对相邻格值相同的单元格设置合并方式,有四个选项:不合并/横向合并/纵向合并/双向合并。同值合并仅对同一扩展格有效。

1、如果设置为“不合并”,那么相邻格值相同的单元格不会合并成一个大的单元格。

●举例:A1、B1设置为不合并

2d2cc3e65536df1bb5ee7efd7a5a24c8.png

预览报表呈现为:

ac361ce9db1b060c6b12dda03f5ce9dd.png

2、如果设置为“横向合并”,那么左右相邻单元格格值相同的则横向合并成一个大的单元格。合并顺序:按行从上到下

●举例:A1、A2设置为横向合并

0e91ddafefd5f277cfcfb06d2be5905f.png

预览报表呈现为:

6c9bb36443aac0fa2525f38ce6d1b475.png

但是,同列所在格子或者包含,或者被包含,不会存在交叉,所以当后合并的格子出现交叉则不会同值合并,比如:

f6a7cac040b91f8a49d72fc14984b1b0.png

上图中,蓝框里的两个同值单元格不会合并,合并后就与红框中的单元格交叉了。

3、如果设置为“纵向合并”,那么上下相邻单元格格值相同的则纵向合并成一个大的单元格。合并顺序:按列从左到右。

●举例:A1、A2设置为纵向合并

2d2cc3e65536df1bb5ee7efd7a5a24c8.png

预览报表呈现为:

ca85648d898b713162220b34eedcffe6.png

但是,同行所在格子或者包含,或者被包含,不会存在交叉,所以当后合并的格子出现交叉则不会同值合并,比如:

9ab0ff0d42b555dfd6e137da7da5f0b1.png

上图中,蓝框里的两个同值单元格不会合并,合并后就与红框中的单元格交叉了。

4、如果设置为“双向合并”,那么相邻格值相同的单元格则合并成一个大的单元格。“双向合并”用于交叉报表。合并顺序:先纵向(按列从左到右)后横向(按行从上到下)

●举例:B3设置为双向合并

56a36500f21dce3f7d30226590678ebe.png

预览报表呈现为:

b5eff7eeef33c6fd8bd05248dce20052.png

同样,从上图也可以看出,同列/同行所在格子或者包含,或者被包含,不会存在交叉,所以当后合并的格子出现交叉则不会同值合并。

空值合并

针对扩展后单元格,对空值单元格设置合并方式,有五个选项:不合并/向上合并/向下合并/向左合并/向右合并。

空值合并可以来自不同的扩展格。

向上/下合并,上下单元格必须同宽。

向左/右合并,左右单元格必须同高。

不同的空值单元格可以设置不同的空值合并方式,全表执行完一个方向的合并后再执行另一个方向的合并,合并次序为:向下,向上,向左,向右。

当报表同时设置有同值合并和空值合并时,则先同值合并,后空值合并。

1、如果设置为“不合并”,那么空值单元格不会与相邻单元格合并。

●举例:C1设置为不合并

ec9260b687ed0fa62d003bac627e896b.png

预览报表呈现为:

a404e2604afdbaf6009b7a388b1e1e6b.png

2、如果设置为向上合并/向下合并,那么空值单元格会向上/向下找相邻的同列等宽的格子合并单元格。

●举例:C1设置为向上合并

ec9260b687ed0fa62d003bac627e896b.png

空值单元格向上找相邻的同列等宽的格子合并单元格,预览结果如下:

ab5724aa30e31dadc67b6e445291faab.png

3、如果设置为向左合并/向右合并,那么空值单元格会向左/向右找相邻同行等高的格子合并单元格。

●举例:C1设置为向左合并

ec9260b687ed0fa62d003bac627e896b.png

空值单元格向左找相邻同行等高的格子合并单元格,预览结果如下:

fa21749b75070edceb24539820f77a3a.png

4、不同的空值单元格可以设置不同的合并方式,全表执行完一个方向的合并后再执行另一个方向的合并,合并次序为:向下,向上,向左,向右。

●举例:A1设置为向右合并,B1设置为向下合并

2fed2a82ca4c3d9da1cc7d6950d5eaa2.png

先执行向下合并,再执行向右合并,结果如下:

8fb22c6fab227be82edef0a424f7db5d.png

●举例:B1设置为向左合并,A2设置为向上合并

9703e43369b7adf71f92a8cddc4c9450.png

先执行向上合并,再执行向左合并,A2向上合并没有同宽单元格,结果如下:

990ed49f5eba47242db5584604952daf.png

5、先同值合并,后空值合并

●举例:A2设置为横向同值合并,A3设置为向上空值合并

4a3a0f1de094fdbcddf2e381ac82b312.png

先同值合并,A3向上空值合并时没有同宽单元格,结果如下:

5165e25917c2e0a022081baef38c73da.png

本小节对超链接的定义、用法和适用场景进行了详细介绍。

超链接

单元格的超链接属性,可以是属性【值】,也可以是【表达式】。

如果超链接字符串不需要动态生成,可以直接在属性【值】中写所要链接的路径。

如果超链接字符串需要根据单元格或者参数值动态生成,则需要在超链接【表达式】中写所要连接的路径。

超链接路径可以是绝对路径也可以是相对路径。下面分别举例说明:

1、在超链接中引用单元格的值,例如:

"defaultArg.jsp?report=/exercise/grid&customerid="+urlencode(A6,"UTF-8")

2、在超链接中链接到其他报表页面,例如:

reportJsp/showReport.jsp?rpx=test.rpx

3、绝对路径

绝对路径一定要写完整,包含传输协议。例如:http://www.raqsoft.com.cn,不可只写www.raqsoft.com.cn。

4、相对路径

相对路径是相对应用路径的,例如:jsp/myreport.jsp,系统运算后会自动给加上应用的路径,相对路径最前面不需要用/开头。

5、dashboard中使用超链接

dashboard中报表的超链接联动采用js函数的方式,可以同时刷新多个面板的内容,说明如下:

dashboardLink(url1,boardId1,url2,boardId2,urln,boardIdn,......)

urln为要刷新的子报表的url,boardIdn为要显示此url的子报表面板id(即子报表的逻辑名)

c1f307d74e51e3c7d437a123785cd6e4.png

超链接如:

="javascript:dashboardLink('board.jsp?board=2.rpx&arg1=A1','item2')"

(1) board.jsp是展现Dashboard中的单个子报表,用于动态关联时的超链接url。

(2)当超链接使用dashboardLink函数时,给函数传中文参数值时可不用转码,直接传递中文。

6、超链接定义

编辑超链接有两种方式,一种是直接在属性值编辑框中添加超链接url串,另一种添加表达式。

在超链接【表达式】中双击。双击后会弹出超链接定义窗口,选择jsp路径,并配置参数名称与参数值。系统会自动生成超链接表达式,同时也可以直接在表达式tag页中添加或修改超链接表达式,表达式中link函数的用法可参考《程序员参考》link()小节。

fd327c9842f835e501f71a7905647a0e.png

当要链接的JSP资源需要传递的参数有多个时,可直接在JSP中添加参数,选择JSP文件时会自动将参数显示到参数列表中。当参数类型为报表名称或JSP名称时可通过动作按钮快速将报表或JSP里所需要的参数添加至参数列表中,效率高于手动逐条添加,使用方法如下:

Jsp中需添加参数注释,注释格式为:

参数类型取值说明:

参数类型含义

0缺省(以=开始表示表达式)

1报表名称

2JSP名称

3日期(可界面选择)

4时间(可界面选择)

5日期时间(可界面选择)

举例:

tetLink.jsp添加的注释内容如下:

351ca6befa9ce60530a33b287fe07d05.png

da0ddd1658178a45e6e693a43e473b52.png

23cef1b6b6c924dbe8c73ea87539d27e.png

当选择的JSP文件中已添加注释参数时,超链接表达式中选择JSP后会自动解析出JSP中的参数。如上图(1)所示将JSP中rpx和arg1参数显示至参数列表中。

参数列表中的[动作]是根据JSP中参数注释里参数类型判断显示。参数类型是报表名称或者JSP名称时,[动作]会解析为[列出参数],点击[列出参数]按钮,会自动添加报表或者JSP中的需要传递的参数,上图(2)所示点击[列出参数]将test.rpx中的subject参数添加至参数列表中;其他参数类型时[动作]为空。

注意:

1、超链接定义中的参数不需要在当前报表中定义。

2、选择JSP路径之前,需要先在【工具】à【选项】à【JSP】中设置JSP主目录,这样在JSP主目录下的路径中选择jsp文件时,此处会自动变成相对路径,点击超链接时才能正常连接访问。

超链接窗口

超链接跳转方式:

1、属性值为_self时,在当前页面跳转。

2、属性值为_blank时,在新页面打开。

该属性如果不写,缺省为_self。

本小节对分页、分栏、单元格拆分等进行了详细介绍。

分页时伸缩

该属性适用于除报表头、分组表头、数据区和表尾区以外的区域。

行后分页

当前行是否行后分页,可以是属性值也可以是表达式。该属性可设置在一般单元格,也可设置在行首格中。

强制分页,我们可以通过设置按数据行分页的报表分页方式,然后设置每页显示数据行数来实现。但有的时候我们并不固定每页的显示数据行数,只想设定其中某一行或某几行的行后分页,这时利用行后分页就可以达成这个目的。

行后分页可以设在一般单元格,也可以设在行首格。

如果设置在行首格,而且该行是可以扩展的,则该属性会复制到该行扩展出来的所有单元格中。

●举例:

在A1单元格中编辑=to(1,10),并在该单元格“行后分页”的表达式中编辑

if(A1= =5,true,false):当当前单元格的数据值为5时,行后分栏。打印预览发现数据值为6的那一行在下一栏了。

列后分页

当前列是否列后分页,可以是属性值也可以是表达式。该属性可设置在一般单元格,也可设置在列首格中。规则与“行后分页”相同。

行后分栏

当前行是否行后分栏。可以是属性值也可以是表达式。该属性可设置在一般单元格,也可设置在行首格中。

有时使用分栏后,我们并不固定每页的显示数据行数,只想设定其中某一行或某几行的行后分栏,这时利用行后分页就可以达成这个目的。

行后分栏可以设在一般单元格,也可以设在行首格。

如果设置在行首格,而且该行是可以扩展的,则该属性会复制到该行扩展出来的所有单元格中。

●举例:

在A1单元格中编辑=to(1,10),并在该单元格“行后分栏”的表达式中编辑

if(A1= =5,true,false):当当前单元格的数据值为5时,行后分页。打印预览发现数据值为6的那一行在下一页了。

单元格拆分

该属性主要为合并格服务的,当分页断开正好位于合并格的中间时,合并格里的值是否拆分后在两页里显示。

●举例:如下图:

94f88c6f493ef3a595b5d7203fa205b6.png

分页断开位于合并格中间。

如果设置该属性,该合并单元格里的文字被拆成两部分,分别在两页里显示。

655d727ab5b54438d9ead161c123f9a3.png

c895ac7111b54e9bdc656d07e5b4a09f.png

如果未设置该属性,两页里都是重复显示断开前的文字。

fada2698c492d0450a58ac284dc72b5b.png

5028ead69eff639350517aca45488dce.png

本小节对报表在web端展现时用到的变量名、HTML事件、提示进行了详细介绍。

变量名

1,在html网页上引用该单元格的数据值时使用的变量名。

●举例:在JSP文件中有两种使用方法(假如变量名为myVar):

(1)在JSP代码中引用:

String

myVar = request.getAttribute( "myVar" );

%>

(2)使用tag标签引用:

name="myVar" />

两种引用方式均需在报表标签之后方可有效。

HTML事件

在web端发布报表时,可以根据单元格的HTML事件来执行相应的操作,例如鼠标移入、点击、移除时执行某些操作。

7daa8bc2be474299248044540e298c30.png

注意:

1.所有的事件,都写在【值】中,当需要拼接字符串时,写到【表达式】里

2.参数模板里不支持HTML事件

提示

当在web上发布报表时,希望鼠标移动到某位置时,显示一些提示信息,就可以设置该属性。

●举例:

某一单元格“数据值”属性值编辑为“超链接”,“WEB中的提示信息“属性值编辑为”这就是WEB中的提示信息“。这样,该报表在网页中展现的时候,当鼠标移动到超链接的位置上时,鼠标箭头变成手形,手形鼠标旁会出现刚刚编辑的提示信息,如下图所示效果:

644bf67e49a36a241648f11de0e8a5d0.png

本小节对一般单元格的注释、导出Excel方式、能否修改、单元格样式名、是否可编辑表达式、填报表的是否可编辑表达式、填报表的超链接等属性进行了详细介绍。

注释

制作报表的人可在此对该报表单元格做些说明和注释,以方便其他人,或日后自己查看。

导出excel方式

通过设置该属性可控制导出的Excel文件是缺省值、真实值、显示值还是公式。

缺省值:导出结果与预览效果一致。

真实值:导出结果为“值 +显示格式”。

显示值:导出结果为“显示值 +显示格式”。

公式:格值表达式为Excel能识别公式时,导出为公式,否则直接导出计算结果。

Excel能识别的公式包括最基本的加减乘除运算(A1+A2),统计函数(sum、avg、max、min),简单的数学和三角函数(abs、exp、lg、ln、sin、cos、tan、asin、acos、atan等)以及一些常用的字符串函数(left、right、len、upper、lower等)。

●举例:

例1:单元格A1获取GENDER的值,其原值是“F”或“M”。单元格A1设置显示值表达式map(list("F","M"),list("女","男"))。

预览时:显示为“男”或“女”;

导出真实值:显示为“M”或“F”;

导出显示值:显示为“男”或“女”。

例2:单元格A1获取SALARY的值,其中一个原值是“7000”。单元格A1设置显示值表达式“ds1.SALARY+1000”,设置显示格式“¥#.00”。

预览时:显示为“¥8000.00”;

导出真实值:显示为“¥7000.00”;

导出显示值:显示为“¥8000.00”。

例3:单元格A2对A1扩展单元格求SALARY之和,A2单元格设置值表达式=sum(A1{}),设置显示格式“¥#.00”。

预览时:显示为“¥18000.00”;

导出公式:显示为“=SUM(A1:A2)”,值为“¥18000.00”。

能否修改

通过设置该属性既可以在打印预览时修改单元格数据,还可以在web端修改单元格数据。如需在web端修改单元格数据需先在html标签中添加modifiable属性,具体关于属性的介绍可参考《程序员参考》Html模式发布报表小节的属性详细说明。

单元格样式名

用于设置单元格样式,单元格样式名列表从报表à报表属性菜单的报表样式所指向的.css文件中读取。【报表属性】中的报表样式从工具à选项的文件tab页中报表样式配置的.xml中读取。

报表属性中设置报表样式后,该样式会自动列入到右侧属性中的单元格样式名列表中,如下图所示:

ebbcab8047105edbd7277bac824b3482.png

reportStyleConfig.xml:

632ba42c7045dbb16187b5eb19bfb4fb.png

globalTemp.css:

f251d6e0d2207d6b282a079bedb6509b.png

80fadca486ce097736ce4cc5f8d074f0.png

5cdf5388a66f292900a825d0ca96e4af.png

注意:

web端如需使用报表样式需在raqsoftConfig.xml中配置styleConfig属性,具体可参考《程序员参考》raqsoftConfig.xml小节。

是否可编辑表达式

填报专用。

设置单元格内容是否可编辑,该属性值为表达式,表达式的值为true代表可编辑,false代表不可编辑。用于单元格类型为维度格或非自动计算数值格时。是否可编辑表达式为Excel风格,也可引用参数 ,在填报表编辑过程中,当被依赖格格值改变时会引起重新计算,并根据计算结果设定此格是否可编辑。

很多时候,我们需要设定在满足某一条件时数据可写,不满足某一条件时不可写。这时可用是否可编辑表达式。

●表达式举例:

false当前单元格不可编辑

I3>=5000当I3单元格的格值大于等于5000时,当前格可编辑,否则不可编辑

B3!=arg1参数arg1的值为研发部。当B3单元格的格值为研发部时不可编辑,否则可编辑。

F3.getTime()>arg2.getTime()参数arg2的值为1993-01-01。日期比较时先用js函数getTime()把日期换算成毫秒数,再比较。日期参数值格式需与【填报】à【选项】à【集算器选项】中的日期格式一致。当F3单元格的日期晚于1993-01-01时可编辑,否则不可编辑。

超链接

填报专用。

用于为不可编辑的单元格设置超链接,超链接路径可以是绝对路径也可以是相对路径。下面分别举例说明:

1、在超链接中链接到其他报表页面,例如:

reportJsp/showInput.jsp?sht=test.sht

2、绝对路径

绝对路径一定要写完整,包含传输协议。例如:http://www.raqsoft.com.cn,不可只写www.raqsoft.com.cn。

3、相对路径

相对路径是相对应用路径的,例如:jsp/myreport.jsp,系统运算后会自动给加上应用的路径,相对路径最前面不需要用/开头。

填报专用,填报表单元格属性。

表达式

填报表单元格的格值,可以写值或者表达式。

维度格的表达式返回结果通常是一个序列且不能有重复值,单值数据维度格表达式返回值为单值。

数据类型

默认情况下程序会自动检测页面上输入数据的数据类型,如果输入数据的数据类型和数据库定义的数据类型不符,那么在提交报表时页面会报错。除此之外还可以指定数据类型为字符串、整数、数值型、双精度型、日期型、时间型、BLOB、图片和日期时间型等,指定了数据类型的填报会在焦点离开时立即校验。

缺省值表达式

行式填报专用

用于web预览后在插入或者添加行时给单元格设置一个缺省值。该属性值可以用js表达式,也可以引用报表参数,不支持引用单元格。

很多时候,我们需要在插入行或者添加行时给某个单元格一个缺省值。这时可用缺省值表达式。

●表达式举例:

arg1参数arg1的值为10。当插入一行时,设置缺省值表达式为arg1的单元格自动填写10为缺省值。

(new Date()).format("yyyy-MM-dd")当插入一行时,设置缺省值表达式为(new Date()).format("yyyy-MM-dd")的单元格自动填写当前日期为缺省值。

显示格式

用来设置在填报表时值的的显示格式。

举例:如果该单元格的值是一个数值型的数据1.33333,我们希望显示的时候只显示小数点后两位小数,这个就是通过显示格式完成的,可以在显示格式属性值中编辑#0.00,预览可以发现,显示的数值就变成了1.33。

也可以双击显示格式属性值,在弹出的显示格式对话框中选择你需要的格式,确定即可,如下图所示:

60c9ae8d6dc90fde611a1855c2fa3b8b.png

填报专用,填报表单元格属性。

单元格类型

填报表单元格分为:维度格,普通格,数值格

维度格不可填写,维度格表达式语法遵循集算器脚本语法。

数值格又分为填写格和计算格,其中填写格可以填写。当一个数值格里有表达式,那么这个数值格就被认为是计算格,是不可以填写的。数值格表达式语法需遵循JavaScript语法。除JavaScript官方提供的函数可以在数值格中使用之外,润乾报表也提供了聚合函数方便用户使用,函数说明可参考《程序员参考》填报表JavaScript函数小节。

维度格和数值格可以设置编辑风格,通常数值格的编辑风格是为了录入数据方便,维度格的编辑风格通常用于设置显示值。

字段名称

维度格和数值格都是有字段名称属性的,缺省情况下按照字段名采集规则认定,否则就按照该属性里设置的字段名称认定,此属性可以直接写字段名称,也可以写成“对象名.字段名称”的形式,这个对象名即为序表变量名

字段名采集规则具体可参考《填报教程》字段名采集规则小节。

序号格

行式填报专用,web端填报时自动给每行添加编号,数据行有增删时动态改变序号值,作为数值格处理,但是不可填写。

填报专用,填报表单元格属性。

数据来源格

统计表中用来设置某一单元格数据来源于基准表中的哪个非普通格字段。数据来源格的格式为页名!单元格名,例如Sheet1!D4。如果统计表和基准表的页名相同,可以省略页名,例如统计表Sheet1中对基准表的Sheet1中的数据进行统计,此时页名Sheet1!可以省略不写;统计表和基准表页名相同的情况下如果对应的单元格也相同,那么单元格也可以省略不写,例如统计表Sheet1中D4单元格要对基准表的Sheet1中D4单元格的数据进行统计,此时页名Sheet1!和单元格D4都可以省略不写,数据来源格为空。

基准表如下图:

77eade4e56833b10ac72f1818692d745.png

统计表如下图:

2e0e929224e07f033b9beb9573f5e37f.png

同页名同单元格时省略页名和单元格名,如D4和基准表中Sheet1中的D4对应。

1eab9701af0fc62d9c0e2b815c285969.png

同页名不同单元格时省略页名,如C4和基准表中Sheet1中的D4对应。

110916e071b74eec83378d0b0f4fc0ce.png

不同页名不同单元格时页名和单元格名都不能省略,如B2和基准表中Sheet1中的D4对应。

统计方式

对基准表中某一单元格的数据进行统计计算后填入统计表中某一单元格,统计方式包括:求和、计数、最大、最小和平均。[ Show » ]

毕大龙[04/三月/10 02:19下午]这个问题不是bug,与报表无关。问题的原因在于表格中"入党时间""参加工作时间""专业技术职务""熟悉专业有何专长"这几个地方的字字号太大了,表格中放不下。word中的表格与常见的正规表格工具有很大的不同,其中一点就是,word中表格中的文字必须全部显示,如果显示不下,会自行撑大单元格,这一点没法改变。而这个"图片纵向未填满单元格"的现象,就是因为这几行被字给撑大了,尺寸已经不是正规尺寸了。如果想在word中正常显示,在制表时必须要考虑到在word中的显示问题,把字号改小或者是把行高设计得更大。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值