(42) Aeroo 模板实战
用writer设计一个采购单的模板
我用的是libreoffice 5.2.x
对于这个表格是通过工具栏上的插入指定的表格行和列完成,然后排版
对于单号po00001 这这样插入的
这样就完成一个订单号的插入
这里针对一个订单,就直接用o ,若是针对多个选中的订单就要用 objects 做循环
下面看一下不同单元插入的输入字段
<for each="line in o.order_line">
对于内循环的就不是用o了。就用line,主要根据<for> 里面自己定义的,我是用line
这样就完成一个循环要定义的字段
这时可能有些同学会问,这些字段是哪里来的。下面就告诉大家
当鼠标放上对,就可以显示对应的字段,你就可以拿这些字段名用在报表模板中
对于订单明细,那要单击进去查
是不是很简单,就这样把模板设计完了。
然后新建报表
测试一下效果
我只有一个采购单,那就写1那个序号
这就看到效果,
测试的可以,就把这个报表通过按扭添加到采购订单那里
这里可以到采购订单列表那里看
可以看到添加按钮成功,这样就可以通过点这个按钮进行打印
对于图片,在odt模板是采用插入框架来实现字段定义
用于实际的报表,你们可以结合前一节的教程和这节的实操去完成。
image: asimage(product.product_image) 这个放图片
<for each="o in objects"></for> 对所选项做循环
下面用calc来设计销售订单的模版
分析一下:
针对图片,是插入一个图做为占位符,然后设定它的name属性的值
若是用calc 来设计模板是插入超链接
不用<> 而是用python:// 开头
红色箭头那里是设定对应内容的超链接
后面我用了格式化日期,从而在开头设了 setLang
下面是产品明细:
上面的index,主要用于下面的NO. 对应的编号
在第一次选择对应的内容设置超链接时会相对简单,当要再次修改对应文字的超链接要有一定的小技巧
如:
要再次改变红框字对应的超链接的值
跟我来一起操作
第一步
对着它右击:
第二步:
移到内容上单击:
这时弹出框会消失
第三步:
对着内容双击:
这样就选中了
第四步:
接着单点工具栏的超级链接按钮
修改红框的值,然后保存就可以了
配合上章的函数,可以格式报表的数据,小心操作,就可以设计出自己要用的模板
${(object.name or '').replace('/','_')}_${object.state == 'draft' and 'draft' or ''}.pdf 自定义输出报表文件名
结合report_custom_filename 模块

![clip_image002[3] clip_image002[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115311107-1902278113.jpg)
![clip_image003[3] clip_image003[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115312310-1567853022.png)
![clip_image005[3] clip_image005[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115313248-893935746.jpg)
![clip_image007[3] clip_image007[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115314185-1158143622.jpg)
![clip_image008[3] clip_image008[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115315138-1271442153.png)
![clip_image009[3] clip_image009[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115315873-269909641.png)
![clip_image011[3] clip_image011[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115316779-1745746289.jpg)
![clip_image012[3] clip_image012[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115317810-109303041.png)
![clip_image013[3] clip_image013[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115318701-1011921141.png)
![clip_image014[3] clip_image014[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115319529-1009341643.png)
![clip_image015[3] clip_image015[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115320342-21891234.png)
![clip_image017[3] clip_image017[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115321217-1569913882.jpg)
![clip_image019[3] clip_image019[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115322373-158265440.jpg)
![clip_image020[3] clip_image020[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115323388-157462082.png)
![clip_image022[3] clip_image022[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115324435-77665565.jpg)
![clip_image024[3] clip_image024[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115325779-804109252.jpg)
![clip_image026[3] clip_image026[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115326904-1097283431.jpg)
![clip_image028[3] clip_image028[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115328013-1648756983.jpg)
![clip_image030[3] clip_image030[3]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115328904-1381852501.jpg)
![clip_image032[4] clip_image032[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115329670-1586413668.jpg)
![clip_image034[4] clip_image034[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115330670-542492623.jpg)
![clip_image035[4] clip_image035[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115331826-100612476.png)
![clip_image037[4] clip_image037[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115333029-621591789.jpg)
![clip_image039[4] clip_image039[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115334217-1352804378.jpg)
![clip_image041[4] clip_image041[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115335513-1481759178.jpg)
![clip_image043[4] clip_image043[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115336685-1274112515.jpg)
![clip_image045[4] clip_image045[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115337779-897984587.jpg)
![clip_image047[4] clip_image047[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115339373-1628894780.jpg)
![clip_image049[4] clip_image049[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115340170-1219999333.jpg)
![clip_image051[4] clip_image051[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115341388-2064918527.jpg)
![clip_image052[4] clip_image052[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115342482-789780164.png)
![clip_image054[4] clip_image054[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115347638-466177370.jpg)
![clip_image055[4] clip_image055[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115350310-2064663063.png)
![clip_image057[4] clip_image057[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115351373-936151894.jpg)
![clip_image059[4] clip_image059[4]](http://images2015.cnblogs.com/blog/884905/201611/884905-20161118115352404-616176346.jpg)
浙公网安备 33010602011771号