odoo自定义打印、定制打印

需求:客户部分单据使用针式打印机,纸张尺寸215mm*140mm

先看实现效果:固定的表头表尾,支持多页且带有页码 

odoo自定义打印、定制打印_第1张图片

 odoo打印的基础这里就不讲了,直接从关键位置开始,使用自定义打印。

关键代码:

这里需要了解,odoo打印其实是分了header、page、 footer,分别为表头、打印内容、表尾。在设置中我们也能看到是可以配置表头表尾的,这里我们引用web.basic_layout 进行自定义表头、表尾。然后使用自定义打印设置纸张尺寸。

#自定义打印的定义        

    针孔打印
    
    # format 打印的类型有很多种,这里使用自定义打印custom
    custom
    215
    140
    Landscape #Landscape横向打印
    # 内容的外边距,就是内容距离顶部的距离,如果有表头这个高度需要大于表头的高度。
    28 
    8
    4
    5
    #有表头记得设置为True并设置header_spacing,不然打印内容会在表头下方显示不出来
     
    25 #定义表头的高度
    80

报表xml概览:

odoo自定义打印、定制打印_第2张图片

 这里讲下分页码的设置:

涉及到表格的一些数据计算:

# 循环输出明细行,这里每循环一次就会创建一个tr

    
        
            
        
    



    # 计算模型中的字段,这里需要通过变量进行计算,然后使用t-esc输出
    
    # t-options 输出的时候可以对输的类型/格式进行定义,这里是定义计算结果保留2位小数
    

你可能感兴趣的:(odoo)