《吊牌成份表的自动化排版》
吊牌制作中,用户经常要求对于同一类型的标牌用同一个火并模板设计来完成,每个吊牌的差异部分在数据库里面改变设置。这样减少了原来用设计排版软件针对每个规格不同的吊牌分别设计排版的作业。这样做的另一个好处,是同一改动数据库数据,而不动排版,使用统一的版式,排板出错率大为降低。下面例子将演示不同成份使用同一版式的设计方法。
1。数据库形式。用户同一类吊牌需要的可变部分情况预先设计好数据库,将来所有的数据变动就在这个数据库中变化改动。下面例子中假设吊牌的成份表中有“面料”“镶拼料”“罗纹”三个小类,每个小类分别由“面料1”“面料2”“镶拼料1”“镶拼料2”“镶拼料3”“罗纹1”“罗纹2”组成。另外每个规格的吊牌成份表内容不一样,有的全部都有,有的只有“面料1”“镶拼料1”“镶拼料2”“罗纹1”“罗纹2”。。。,见示意图。
20091127916400.jpg
2。我们需要的做的最终效果是这样的。你可以看到,每份吊牌他们的成份都不一样,但成份标题是随着内容不同而不同,而上下移动。旁边的n1,n2...是制作演示中用到的说明,实际最终没有这一项。
20091127934470.jpg
3。要达到上述效果,我们将用到火并中普通表单功能。而且只要设计一个版式。具体操作步骤如何,里面要用到逻辑判断,所以要建议参数。
为了看的比较清晰,我们先做了n1,n2,n3,,,,n7,分别来判断各个成份字段内容是否为空,我们用了IsEmpty函数来判断字段内容是否为空,为空的参数结果值为1,当看到n1=1时即表示$主数据库.面料1(中文)$字段为空,依次类推。
200911271010510.jpg
200911271010330.jpg
3-1)n1,n2..n7的参数设置间示意图
200911271021100.jpg
200911271022230.jpg
3-2)用普通表单控件建立成份表,见示意图。这里成份标的所有内容最有内容占据7个字段,所以在这里"行数"设置为7。“固定高度”的设置有特别的用途,下面会介绍,这里先设为“假”。
200911271028530.jpg
鼠标再次点击表格,对表格进行设置。这里每行有2列,那么“列数”就设为2。然后分别选定“单元格”依据每个单元格将来要放的内容属性对下面的“单元属性”进行设置。这里因为都是放文本,所以全部选Stext。
然后再对“删除空行”进行设置,“真”表示如果这行(记住是这行所有单元的内容)全部为空,逻辑上就会删除这行,这时候会有2种情况:1)下面的行往上移,或者上面的行往下移。2)剩下有内容的行拉开行距平均分配。上面提到的“固定高度”就是用来判断这两个效果。当“固定高度”=假时,执行第1)种效果,当“固定行高”=真时,执行第2)种效果,特别提示!
200911271029280.jpg
如果希望表格有边框的。就进行边框设置。
200911271029560.jpg
3-3)接下去对每个单元个进行设置。设置之前我们要设置成份小标题着一些中需要用到的的参数,即c1,c2,c3...c7。设置和使用这些参数的目的是为了这小小标题随成份内容不同而为之变动或者有无,举个例子,如果面料1,面料2都没有内容,即为空,那么也没有“面料”这个小标题了。如果只有一种面料内容,下面的“镶拼料”标题也随着上移。。。
如何设置c1,c2,c3。。,需要用到逻辑判断,其中"||"表示"或"的概念,"&&"表示"与"的概念。
200911271058450.jpg
200911271059360.jpg
20091127110210.jpg
20091127110340.jpg
20091127111520.jpg
2009112711240.jpg
20091127112130.jpg
3-4)对每个单元格链接相应的字段名或参数。
200911271230240.jpg
200911271230460.jpg
注意:
1。如果在准备数据时,把有内容的成份往前移动,把内容为空的放在后面,逻辑可设置得简单一些,上面的设置适合随意编辑数据。
2。如果要把成份中的%和材料名分开来设置字体属性,那么就把表格多设一列,%和材料名称各占一列。
3。如果要把“产品名称”“产品等级”“成分含量”“执行标准”“安全类别”“检验员号”栏目做成联动。可以扩充普通表单的行数,把上述栏目植入该表格中。
200911271341550.jpg
4。紧接上面第3项,功能再进阶一些,如果用户要求当成份行三行都有内容时,整个表格往上移动,这样看上去比较美观。那又该如何设置呢?假设需求成份内容不满三行时,表格左上角的位置在(20,80),如果成份内容满三行,格左上角的位置在(20,20)。
4-1)首先先看一下演示数据
200911271440240.jpg
4-2)为了知道内容满三行,还是不满三行,需要设置参数n1,n2,n3,成份行数量,具体为
200911271442100.jpg
200911271442410.jpg
4-3)利用火并里面的“边框动态属性设置”对表单的位置进行逻辑设定。
200911271445490.jpg
4-4)最终得到的结果
200911271446540.jpg