wizard:用于确认或选择

wizard/sale_multi_action.py

# -*- encoding: utf-8 -*-
from openerp.osv import fields,
osv
from openerp.tools.translate import
_  #用于翻译代码中的静态字符串

class
dispatch_sale_multi_action(osv.Model):
    _name =
'dispatch.sale.multi.action'
    _description =
'dispatch.sale.multi.action'
   
    '''
    def fields_view_get(self, cr, uid,
view_id=None, view_type='form',
                       
context=None, toolbar=False, submenu=False):
       

        if context is
None:
           
context={}
        res =
super(dispatch_sale_multi_action, self).fields_view_get(cr, uid,
view_id=view_id, view_type=view_type, context=context,
toolbar=toolbar,submenu=False)
        if
context.get('active_model','') != 'dispatch.sale':
           
raise osv.except_osv(_('Warning!'), _('选择的对象列表与处理方法对应不正确.'))
        if
context.get('active_model','') == 'dispatch.sale' and len(context['active_ids'])
< 1:
           
raise osv.except_osv(_('Warning!'), _('请选择需要确认的销售单.'))
       

        return
res
   
'''

def
multi_set_to_confirm(self,cr,uid,ids,context=None):
       
return self.pool.get('dispatch.sale').set_to_confirmed(cr, uid,
context['active_ids'], context=context)
   

dispatch_sale_multi_action()

wizard/sale_multi_action_view.xml

<?xml version="1.0"
encoding="utf-8"?>
<openerp>

<data>
     <record model="ir.ui.view"
id="view_dispatch_sale_multi_action">
           
<field
name="name">批量确认销售记录</field>
           
<field
name="model">dispatch.sale.multi.action</field>
           
<field name="arch"
type="xml">
               
<form string="批量确认销售记录"
version="7.0">
                   
<separator string="您确认需要 确认
当前选中单据吗?确认后单据不允许修改和删除!"/>
                   
<label string=""
colspan="4"/>
     <footer>
      <button
name="multi_set_to_confirm" string="确认选中单据" type="object"
class="oe_highlight"/>
      or
      <button
name="cancel" string="取消" class="oe_link" special="cancel"
/>
     </footer>
    </form>
   </field>
  </record>

<act_window
id="action_dispatch_sale_multi_confirm"
           
name="确认"
           
multi="True"
           
key2="client_action_multi"
           
res_model="dispatch.sale.multi.action"
           
src_model="dispatch.sale"
           
view_mode="form" target="new" view_type="form"
view_id="view_dispatch_sale_multi_action"
           
/>
    </data>
  

</openerp>

sale.py

#提交
    def
set_to_confirmed(self, cr, uid, ids,
context=None):
        for rec in
self.browse(cr, uid, ids,
context=context):
           
if rec.state !=
'confirmed':
               
if rec.create_uid.id !=
uid:
                   
raise
osv.except_osv(_(u'警告!'),_(u'您不能确认他人创建的单据.'))
               
self.write(cr, uid, ids,
{'state':'confirmed'})
       
return {}

openerp学习笔记 tree视图增加复选处理按钮的更多相关文章

  1. openerp学习笔记 搜索视图(自己创建的、自己的、本部门的、本部门及下属部门的、今日的、日期从,日期至、多条件模糊搜索、or、and)

    自己创建的: domain="[('create_uid','=',uid)]" 自己的: domain="[('employee_id','=','#kl_user_e ...

  2. Django:学习笔记(9)——视图

    Django:学习笔记(9)——视图 基础视图 基于函数的视图,我们需要在使用条件语句来判断请求类型,并分支处理.但是在基于类的视图中,我们可以在类中定义不同请求类型的方法来处理相对应的请求. 基于函 ...

  3. Django:学习笔记(8)——视图

    Django:学习笔记(8)——视图

  4. EasyUi datagrid列表增加复选框

    本文为博主原创,未经允许不得转载 1.增加复选框列 {     field: 'oid',     title: '<input type=\"checkbox\" name ...

  5. amazeui学习笔记--css(常用组件3)--按钮组Button-group

    amazeui学习笔记--css(常用组件3)--按钮组Button-group 一.总结 1.按钮组用法:把一系列要使用的 .am-btn 按钮放入 .am-btn-group . 2.按钮工具栏: ...

  6. amazeui学习笔记--css(HTML元素1)--按钮Button

    amazeui学习笔记--css(HTML元素1)--按钮Button 一.总结 1.button的基本使用:a.am-btn 在要应用按钮样式的元素上添加 .am-btn,b.颜色 再设置相应的颜色 ...

  7. openerp学习笔记 视图(tree\form)中隐藏按钮( 创建、编辑、删除 ),tree视图中启用编辑

    视图(tree\form)中隐藏按钮( 创建.编辑.删除 )create="false" edit="false" delete="false&quo ...

  8. openerp学习笔记 统计、分析、报表(过滤条件向导、分组报表、图形分析、比率计算、追加视图排序)

    待解决:图形中当改变分组时,图例不正确            存储比率计算时,分组合计不正确 wizard:过滤条件向导,用于输入过滤条件 wizard/sale_chart.py # -*- cod ...

  9. openerp学习笔记 context 的应用

    1.在Action中定义,context用于传递搜索条件和分组条件,在搜索视图中默认显示: 示例代码: <record model="ir.actions.act_window&quo ...

随机推荐

  1. mysql数据库:分表、多表关联、外键约束、级联操作

    一.分表.外键.级联.多对一 二.多对多 三.一对一 一.分表.外键.级联.多对一 将部门数据与员工数据放到同一张表中会造成 数据重复 结构混乱 扩展维护性差 需要分表 create table de ...

  2. docker镜像pull不下来最终解决方法

    pull镜像wordpress下来,但是出现如下错误: # docker pull wordpress:latest Error response from daemon: Get https://r ...

  3. K nearest neighbor cs229

    vectorized code 带来的好处. import numpy as np from sklearn.datasets import fetch_mldata import time impo ...

  4. php程序的生命周期

    1.PHP的运行模式: PHP两种运行模式是WEB模式.CLI模式.无论哪种模式,PHP工作原理都是一样的,作为一种SAPI运行. 1.当我们在终端敲入php这个命令的时候,它使用的是CLI. 它就像 ...

  5. 【安徽集训】Entropy

    出题人罗哲正是神爷 Orz Description 这是一道披着交互题外衣的通信题,只支持 C++. 你需要实现 \(2\) 个函数. 交互库先给第一个函数传入一个参数 \(n\),你加密得到的 \( ...

  6. springboot-拦截器redis注入空问题解决

    转自:https://blog.csdn.net/liuyang1835189/article/details/81056162 主要问题是在拦截器的配置类里面,配置的类,spring容器无法获取,所 ...

  7. jdbc连接数据库方式问题

    1.使用service_name,配置方式:jdbc:oracle:thin:@//<host>:1521/net_grid 2.使用SID,配置方式:jdbc:oracle:thin:@ ...

  8. JS 循环的两种方式

    // 1.for循环 for (var i = 0; i <= 10; ++ i) { console.log(i); } // 2.while循环 var i = 0; while (i &l ...

  9. 深入理解JavaScript执行上下文、函数堆栈、提升的概念

    本文内容主要转载自以下两位作者的文章,如有侵权请联系我删除: https://feclub.cn/post/content/ec_ecs_hosting http://blog.csdn.net/hi ...

  10. 10-SQLServer中统计信息的使用

    一.总结 1.网址https://docs.microsoft.com/en-us/sql/relational-databases/system-catalog-views/sys-stats-tr ...