Chinaunix首页 | 论坛 | 博客
  • 博客访问: 195724
  • 博文数量: 98
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 1955
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 15:01
文章分类

全部博文(98)

文章存档

2012年(1)

2011年(1)

2009年(95)

2008年(1)

我的朋友

分类: IT职场

2009-06-11 14:04:44


1.window的用处
如果一个smartforms要求任何时候都要打印表头表尾可以用table实现,但是table分页的时候根据之前的测试会有点小问题。这个时候可以表头表尾用windows,里面用一个模板。(这个时候通常是套打,把上边距和左边距弄好)这样表头和表尾就会固定好。而且只要有新的一页表头和表尾都会出现。
2.强制分页
套打要求如果超过11行则强制分页这是如何做到了?可以在smartforms里写代码去控制。首先当然要有一个统计行数的变量在全局定义里定义。如下图:
 
那每打印一行还要统计打印的行数,就要写代码控制了。在loop下可以插入代码,写上
G_CURRENTLINES = G_CURRENTLINES + 1.
G_PAGINATION = G_CURRENTLINES MOD 11.
就可以达到效果。但是注意里面输入参数要输入G_CURRENTLINES和G_PAGINATION否则会报错,这里不知道为什么这么麻烦。然后再加上一个判断如果G_PAGINATION为0则进行分页。如下图,创建一个”可选的”.
 
其实就是一个判断,在条件里面加上G_PAGINATION为0的判断条件。
 
条件为真时加上分页的命令即可。如下图,注意勾上转到新页。
 
3.统计合计数
统计合计数当然也是先自定义一个变量来实现的,然后在遍历的时候进行累加,换页的时候清零。不过我却发现,如果有换页的时候合计数都是0!想了以后明白了,因为新建的window在模板的结点后,smartforms执行顺序是从上到下依次执行的,如果有分页,分页时因为清空了变量,所以又分页的情况下合计数都是0.所以求合计数的时候都再新建一个变量,用它来统计合计数。
4.小技巧
4.1 smartforms在word2007里有时没显示格式,要按Ctr+Shift+Alt+S.就会出现格式的选择。
4.2 上边距 + window.高度 <= 纸张.高度
4.3 有时字体设置太大,或者一列的宽度较小会造成自动换行!如果把高度设置的低点的话,这时又不能自动换行,会把字符串截断的。
阅读(1913) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~