odoo源生打印【web report】
https://www.odoo.com/documentation/12.0/reference/reports.html 具体的看官方文档
一、纸张格式设置:
- <record id="paperformat_frenchcheck" model="report.paperformat">
- <field name="name">French Bank Check</field>
- <field name="default" eval="True"/>
- <field name="format">custom</field>
- <field name="page_height">80</field>
- <field name="page_width">175</field>
- <field name="orientation">Portrait</field>
- <field name="margin_top">3</field>
- <field name="margin_bottom">3</field>
- <field name="margin_left">3</field>
- <field name="margin_right">3</field>
- <field name="header_line" eval="False"/>
- <field name="header_spacing">3</field>
- <field name="dpi">80</field>
- </record>
二、菜单按钮:
- <report
attachment_use="False"
model="product.product" #要打印模块
report_type="qweb-pdf"
id="print_product_menu_barcode"
string="打印条码"
name="product.print_template_barcode"
- file="product.print_template_barcode" #打印文件
- paperformat="product.paperformat_frenchcheck" #打印纸张格式
- />
三、Barcodes
- <img t-att-src="'/report/barcode/QR/%s' % 'My text in qr code'"/>
- <img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', 'text', 200, 200)"/> 二维码
- <?xml version="1.0" encoding="utf-8"?>
- <odoo>
- <data>
- <template id="print_template_barcode">
- <t t-call="web.html_container">
- <t t-foreach="docs" t-as="o">
- <div class="page" style="margin-top:0px">
- <style type="text/css">
- .gxtr >th{
- text-align:center;
- border-top: 1px solid #000;
- border-left: 1px solid #000;
- border-bottom: 1px solid #000;
- <!--background-color:#BEBEBE;-->
- font-size:14px;
- }
- .gxtr >td{
- border-bottom: 1px solid #000;
- border-left: 1px solid #000;
- border-right: 1px solid #000;
- font-size:20px;
- display: flex;
- <!--text-align :center;-->
- }
- .gxtr >tr{
- border-bottom: 1px solid #000;
- border-left: 1px solid #000;
- border-right: 1px solid #000;
- font-size:20px;
- display: flex;
- text-align :center;
- }
- .herdtd{
- word-wrap:break-word;width:22%;font-size:14px;
- }
- .gxdiv{border-left:1px solid #000;border-bottom:1px solid #000;border-right:1px solid
- #000;font-size:14px;}
- </style>
- <t t-call="web.basic_layout">
- <table width="279" border="1">
- <thead>
- <tr>
- <td>名称</td>
- <td>
- <span t-field="o.name"/>
- </td>
- <td rowspan="3">
- <img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', o.barcode, 100, 100)"/>
- </td>
- </tr>
- <tr>
- <td>价格</td>
- <td>
- <span t-field="o.list_price"/>
- </td>
- </tr>
- <tr>
- <td>代码</td>
- <td >
- <span t-field="o.barcode"/>
- </td>
- </tr>
- <tr class="gxtr">
- <th>测试1</th>
- <th colspan="2">测试值</th>
- </tr>
- </thead>
- <tbody>
- <tr t-foreach="o.attribute_line_ids" t-as="att" class="gxtr">
- <td height="32" style="text-align :center;">
- <span t-field="att.attribute_id.name"/>
- </td>
- <td colspan="2" style="text-align :center;">
- <t t-foreach="att.value_ids" t-as="val">
- <span t-field="val.name"/>;
- </t>
- </td>
- </tr>
- </tbody>
- </table>
- </t>
- </div>
- </t>
- </t>
- </template>
- </data>
- </odoo>
odoo源生打印【web report】的更多相关文章
- js打印WEB页面内容代码大全
第一种方法:指定不打印区域 使用CSS,定义一个.noprint的class,将不打印的内容放入这个class内. 详细如下: <style media=print type="tex ...
- 打印web页面指定区域的三种方法
本文和大家分享一下web页面实现指定区域打印功能的三种方法,一起来看下吧. 第一种方法:使用CSS 定义一 个.noprint的class,将不打印的内容放入这个class内. 代码如下: <s ...
- js灵活打印web页面区域内容的通用方法
我们做网站,经常需要打印页面指定区域的内容,而网上关于这块的说法很多,各种各样的打印控件也不少.但许多打印方案都不怎么好,至少我不喜欢,要么封装复杂,要么难以维护.正好现在的项目也需要用到 ...
- 多页面打印--web print
背景:项目中要求做在一个页面中通过选择网址来打印多个页面的内容的功能 原理:通过iframe把各网址的页面内容加载进来,通过iframe.contentWindow拿到iframe的window对象, ...
- odoo 订单打印 会出现字体. ........... 虚线问题
在表头加 红色部分 <?xml version="1.0" encoding="utf-8"?><openerp> <data&g ...
- 水晶报表自定义纸张大小打印 (Crystal Report Print with custom paper size)
System.Drawing.Printing.PrintDocument doc = new PrintDocument(); doc.PrinterSettings.PrinterName = & ...
- Web系统页面打印技术实现与分析
1 Web页面打印概述应用WEB化,不论对开发商,还是对用户来说,实在是一种很经济的选择,因为基于WEB的应用,客户端的规则很简单,容易学习,容易维护,容易发布.在WEB系统中,打印的确是个烦人的问题 ...
- WEB打印大全
1.控制"纵打". 横打”和“页面的边距. (1)<script defer> function SetPrintSettings() { // -- advance ...
- 关于WEB页面的强制分页打印问题
最近项目中有个需求要求打印web页面数据,但是碰到打印预览显示数据时,多的数据就不翼而飞了(不分页),搞的很是焦灼~ 最先是以为纸张的问题,胡乱折腾了一番,把A4约硬是改成了LARGE号的纸,多的数据 ...
随机推荐
- 腾讯TencentOS 十年云原生的迭代演进之路
导语 TencentOS Server (又名 Tencent Linux 简称 Tlinux) 是腾讯针对云的场景研发的 Linux 操作系统,提供了专门的功能特性和性能优化,为云服务器实例中的应用 ...
- Spring Boot WebFlux-07——WebFlux 中 Redis 实现缓存
第07课:WebFlux 中 Redis 实现缓存 前言 首先,补充下上一篇的内容,RedisTemplate 实现操作 Redis,但操作是同步的,不是 Reactive 的.自然,支持 React ...
- 深入理解Spring事务的那点事
Spring事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的.对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行: 获 ...
- cURL命令使用指南
cURL是什么 curl是Linux命令行工具,可以使用任何可支持的协议(如HTTP.FTP.IMAP.POP3.SCP.SFTP.SMTP.TFTP.TELNET.LDAP或FILE)在服务器之间传 ...
- Spring Boot 无侵入式 实现RESTful API接口统一JSON格式返回
前言 现在我们做项目基本上中大型项目都是选择前后端分离,前后端分离已经成了一个趋势了,所以总这样·我们就要和前端约定统一的api 接口返回json 格式, 这样我们需要封装一个统一通用全局 模版api ...
- 基于uniapp自定义Navbar+Tabbar组件「兼容H5+小程序+App端Nvue」
uni-app跨端自定义navbar+tabbar组件|沉浸式导航条|仿咸鱼凸起标签栏 在跨端项目开发中,uniapp是个不错的框架.采用vue.js和小程序语法结构,使得入门开发更容易.拥有非常丰富 ...
- CosId 1.1.8 发布,通用、灵活、高性能的分布式 ID 生成器
CosId 通用.灵活.高性能的分布式 ID 生成器 介绍 CosId 旨在提供通用.灵活.高性能的分布式 ID 生成器. 目前提供了三类 ID 生成器: SnowflakeId : 单机 TPS 性 ...
- hdu 1754 I Hate It 线段树 单点更新 区间最值
线段树功能:update:单点更新 query:区间最值 #include <bits/stdc++.h> #define lson l, m, rt<<1 #define r ...
- AOF重写导致的Redis进程被kill
Redis环境描述 服务器: 阿里云16GB服务器 Redis版本: 5.0.5 持久化方式: AOF 问题描述 阿里云环境,使用docker安装的单节点redis5.x,频繁出现redis进程被操作 ...
- 大数据-Hadoop 伪分布模式
1. 分析 (1)配置集群 (2)启动.测试集群增.删.查 (3)执行WordCount案例 2. 执行步骤 (1)配置集群 (a)配置:hadoop-env.sh Linux系统中获取JDK的安装路 ...