odoo从tree视图导出excel表

  1. 视图
<button type="button" class="layui-btn layui-btn-sm export" url="/fm1212/export/business_record">导出</button>
  1. js
 odoo.define('tree_buttons', function (require) {"use strict";var Widget = require('web.Widget');var widget_registry = require('web.widget_registry');var data_manager = require('web.data_manager');var session = require('web.session');var tree_buttons = Widget.extend({template: 'tem_tree_buttons',events: {'click .export': function (event) {this.do_action({'name': '导出','type': 'ir.actions.act_url','url': $(event.currentTarget).attr("url") + '?id=' + this.id,'target': 'new','tfs_close': true})},}init: function (parent, options, params) {this._super(parent, options, params);this.id = options.res_id;this.model = options.model;this.data = options.data;this.template = params.attrs.template;this.record = options;}});widget_registry.add('tree_buttons', tree_buttons);return tree_buttons});
  1. 在controllers文件夹中新建export文件
    class Exportrecord(http.Controller):
    ‘’’
    导出设置
    ‘’’
@http.route('/fm1212/export/business_record', type='http', auth='user', csrf=False)
def get_business_record(self, **kw):'''获取差旅核算记录,导出excel表'''ids = kw.get('ids', False)records = http.request.env['fnt_business_trip'].search([('id', 'in', json.loads(ids))])fields = ['标题', '提交人', '开始时间', '结束时间', '出发地', '目的地', '出差天数', '审批日期']workbook = xlwt.Workbook()worksheet = workbook.add_sheet('差旅记录')current_month = datetime.datetime.now().monthfor index in range(len(fields)):worksheet.write(0, index, fields[index])row_index = 1for record in records:worksheet.write(row_index, 0, record.name or '')worksheet.write(row_index, 1, record.create_user.name or '')worksheet.write(row_index, 2, str(record.start_date) or '')worksheet.write(row_index, 3, str(record.end_date) or '')worksheet.write(row_index, 4, record.trip_record.origin if len(record.trip_record) <= 1else record.trip_record[0].origin or '')worksheet.write(row_index, 5, record.trip_record.destination if len(record.trip_record) <= 1else record.trip_record[0].destination or '')worksheet.write(row_index, 6, record.trip_days or '')worksheet.write(row_index, 7, str(record.check_date) or '')row_index += 1response = http.request.make_response(None, headers=[('Content-Type', 'application/vnd.ms-excel'),('Content-Disposition','attachment; filename={filename}{month}.xls;'.format(filename='差旅记录'.encode('utf-8').decode('latin1'),month=str(current_month) + '月'.encode('utf-8').decode('latin1')))])workbook.save(response.stream)return response

odoo从tree视图导出excel表相关推荐

  1. ASP.Net导出EXCEL表(小结)

    这个问题困扰了我好几天,现在终于解决了,现公布整个过程的注意点.通过.net导出Excel表,除了注意导出的方法外,还要关心资源的回收问题,中间涉及到COM组件的关闭等. 因为对windows系统.. ...

  2. 【机房收费系统】---导出Excel表

    一.背景 机房收费系统中有很多地方用到了"导出Excel表"这个功能,那么,怎么导出呢? 二.导出Excel表 1.电脑安装office 2.引用 之前已经有一篇博客介绍过如何引用 ...

  3. 关于扫码签到统计信息,一键导出excel表

    1.首先进入草料二维码官网 2.微信扫码登录注册,登录成功后即可进入草料二维码后台(手机微信小程序也可以实时查看后台数据) 3.根据自己需要创建活动二维码(选择自己喜欢的模板,这里我们选择的是会议签到 ...

  4. 数据的导出Excel表

    数据的导出Excel表 1.原理 ​ 点击前端页面的按钮函数,函数里面去调用后端对应对的请求地址,这个请求地址所对应的方法再去调用业务层,业务层再去持久层拿到数据,返回给控制层,控制层将数据封装为比特 ...

  5. JSON数据导出Excel表

    JSON数据导出Excel表 应老板要求写了一个实用的小功能,需求是将api接口返回的JSON数据导出Excel表,过程中改了两稿,一是前端js直接导出一个表,另一是分门别类在java中同时导出多个表 ...

  6. springmvc使用easypoi导出导入Excel表(1):导出Excel表

    编译工具:eclipse 项目:maven+ssm springmvc使用easypoi导出导入Excel表(2):导入Excel表 在pom.xml引入easypoi的依赖包: <!--eas ...

  7. django 导出数据到excel表 导出excel表到目标路径及客户端下载

    python导出excel表利用的是xlwt模块 学习的网址 大佬教学网址 导出数据到excel表 下面是代码 import os from xlwt import Workbook from inf ...

  8. 使用poi导出excel表基础

    使用poi导出excel表基础. 本人使用的是ssm的框架.使用了mybatis的逆向工程.数据的获取方法很多,如果用servlet大同小异. 在页面中设置一个按钮 为按钮添加点击事件. <bu ...

  9. java导出数据为乱码_传参导出Excel表乱码问题解决方法

    业务场景 先描述一下业务场景,要实现的功能是通过搜索框填写参数,然后点击按钮搜索数据,将搜索框的查询参数获取,附加在链接后面,调导Excel表接口,然后实现导出Excel功能.其实做导Excel表功能 ...

最新文章

  1. github分段下载
  2. 18 | 为什么这些SQL语句逻辑相同,性能却差异巨大?
  3. LiveVideoStackCon讲师热身分享 ( 十三 ) —— Intel QSV技术在FFmpeg中的实现与使用
  4. Laravel中优雅的验证日期需要大于今天
  5. babel原理_手写webpack核心原理,再也不怕面试官问我webpack原理
  6. iis服务器发布web项目,webservice创建、发布及在IIS上部署
  7. Android 原生 MediaPlayer 和 MediaCodec 的区别和联系(二)
  8. Java 详解(JVM) 垃圾回收机制原理
  9. u盘魔术师装linux,u盘魔术师下载 u盘魔术师v6(USMv6) v6.0.2019.06.18 正式特别版 下载-脚本之家...
  10. sublime教程以及python环境的配置(二)常用插件安装和Boxy主题配置
  11. SAP 消息号 KE391:在 CO-PA中分配条件类型PR00的问题
  12. 笔记本键盘被锁定了怎么办?笔记本如何解锁键盘?
  13. 用友U8采购订单查询
  14. pdcp层的作用_LTE系统中PDCP子层功能研究
  15. 火炬之光(TorchLight)使用的Ogre粒子系统插件ParticleUniverse研究
  16. java基础小记_Java基础学习小记--多态
  17. 一著名软件公司的java笔试算法题的答案
  18. CPU卡加密系统与M1加密系统比较
  19. 关闭flash助手推荐的广告
  20. 数字内容产业发展路径与趋势

热门文章

  1. Qt 5.9.1 参考手册 QtTest 第5章 写一个基准线
  2. [附源码]SSM计算机毕业设计高校流动党员信息管理系统JAVA
  3. wine安装迅雷、qq2009
  4. 华为服务器系统蓝屏,云服务器蓝屏
  5. 【蓝桥杯单片机】工厂灯光控制系统案例解析(小蜜蜂老师基础综合实训)
  6. ruby 中叹号问号的作用
  7. 求一个数的质因数个数
  8. springmvc官网jar下载
  9. 计算机硬件故障产生的主要原因,计算机病毒产生的原因是计算机系统硬件有故障。...
  10. 音速启动图标路径修改--修改支持相对路径