示例代码1,ir_action_window.read : # -*- coding: utf-8 -*-from openerp.osv import fields,osv class res_users(osv.osv):    _name = 'res.users'    _inherit = 'res.users'     _columns = {                'ht_type' : fields.selection([                ('makings…
支持的视图类型:form.tree.search ... 支持的定位方法:                  <notebook position="inside">  <xpath expr="//page[@name='page_history']" position="inside">                  <field name="mobile" position="…
1.在Action中定义,domain用于对象默认的搜索条件: 示例: <record id="action_orders" model="ir.actions.act_window"> <field name="name">Sales Orders</field> <field name="type">ir.actions.act_window</field> &l…
wizard:用于确认或选择 wizard/sale_multi_action.py # -*- encoding: utf-8 -*-from openerp.osv import fields, osvfrom openerp.tools.translate import _  #用于翻译代码中的静态字符串 class dispatch_sale_multi_action(osv.Model):    _name = 'dispatch.sale.multi.action'    _desc…
跟踪状态基础数据: kl_qingjd/kl_qingjd_data.xml <?xml version="1.0"?><openerp>    <data noupdate="1"> <!-- kl_qingjd-related subtypes for messaging / Chatter -->        <record id="mt_qingjd_confirm" model=&…
表格行颜色:             <tree string="请假单列表" colors="red:state == 'refuse';blue:state == 'draft';black:state in ('confirm','validate')">            <tree string="Meeting" colors="gray:state in ('cancel','done');blue:…
JavaScript:学习笔记(8)——扩展运算符 对象的扩展运算符 扩展运算符是三个点(...).用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中. 如上图所示,新建了一个对象a,然后通过扩展运算符将其属性x,y一并拷贝到b对象中. 合并两个对象 扩展运算符可以合并两个对象 自定义属性 合并对象时,可以将对象与一些属性进行合并,如下 需要说明的是,如果用户自定义的属性,放在扩展运算符后面,则扩展运算符内部的同名属性会被覆盖掉. 数组的扩展运算符 复制数组 数组是复合的数据类型,如果直接…
待解决:图形中当改变分组时,图例不正确            存储比率计算时,分组合计不正确 wizard:过滤条件向导,用于输入过滤条件 wizard/sale_chart.py # -*- coding: utf-8 -*-from openerp.osv import fields, osvimport datetime class dispatch_sale_chart(osv.osv_memory):    _name = "dispatch.sale.chart"    _…
1.多对一(一对一)关系:采购单与供应商之间的关系 'partner_id':fields.many2one('res.partner', 'Supplier', required=True, states={'confirmed':[('readonly',True)], 'approved':[('readonly',True)],'done':[('readonly',True)]}, change_default=True, track_visibility='always'), 典型的…
自己创建的: domain="[('create_uid','=',uid)]" 自己的: domain="[('employee_id','=','#kl_user_emp#')]" 本部门的: domain="[('department_id','=','#kl_user_dept#')]" 本部门及下属部门的: domain="[('department_id','child_of','#kl_user_dept#')]"…
说明: 单据自动编码允许定义 单据前缀+按当前年.月.日.时.分.秒+流水号+单据后缀 单据自动编号允许按所有公司统一编号或按分公司单独编号 单据自动编号中的流水号部分未按月重新编号,不断累计,当超出定义长度时,自动进位增加位数 暂时未实现按月重新编号,需要每月手工在设置中改变下一编号(客户肯定不会同意这样做的,待解决) 示例代码 xml 部分,编码规则定义:sale_sequence.xml <?xml version="1.0" encoding="utf-8&qu…
1.在Action中定义,context用于传递搜索条件和分组条件,在搜索视图中默认显示: 示例代码: <record model="ir.actions.act_window" id="open_company_allocation"> <field name="name">Leaves Summary</field> <field name="res_model">hr.ho…
示例代码: data/scheduler.xml <?xml version="1.0" encoding="utf-8"?><openerp>    <data noupdate="0">        <record forcecreate="True" id="ir_cron_dispatch_service_card_scheduler_action" mo…
1.修改产品数量时,自动计算产品销售金额.销售成本和销售利润<field name="num" on_change="on_change_product(product, num, price)"/>2.选择历史工单时,按销售单中当前选择的客户自动过滤,打开选择历史工单窗口时,过滤条件默认为销售单中当前选择的客户<field name="work_order" domain="[('customer','=',cust…
示例1: # -*- encoding: utf-8 -*-import poolerimport loggingimport netsvcimport toolslogger = netsvc.Logger()import datetimeimport timeimport mathfrom osv import fields,osvfrom openerp.tools.translate import _  #用于翻译代码中的静态字符串 class res_users(osv.osv):  …
1.webkit 打印需要安装的支持模块 请首先安装 Webkit 报表引擎(report_webkit),再安装 Webkit 报表的支持库(report_webkit_lib),该模块讲自动安装和设置 wkhtml2pdf 的路径. 另外,安装 oecn_base_fonts 模块可解决打印中文乱码问题,安装 web_pdf_preview 模块可以实现在浏览器中直接预览打印 pdf 文件. 2.webkit 打印模块文件结构 其中:hr_expense_report.xml 定义了报表名称…
1.ES6函数参数的默认值,直接写在参数定义的后面.参数变量是默认声明的,所以不能用let或const再次声明. function Point(x = 0, y = 0) { this.x = x; this.y = y; } var p = new Point(); p // { x: 0, y: 0 } function foo(x = 5) { let x = 1; // error const x = 2; // error } 2.通常情况下,定义了默认值的参数,应该是函数的尾参数.因…
1.对象继承     _inherit = "product.product" 继承产品对象,给产品对象添加字段或方法,不需要设置 _name._table 等属性     注意:当继承后的子类不定义 _name 属性,则相当于在父类中增加字段和方法,并不创建新对象             当继承后的子类重新定义 _name 属性,则创建一个新的对象,新对象拥有父类中所有的字段和方法,父类不受任何影响.     _inherits = {'product.template': 'pro…
以OpenERP7.0中的 hr_expense 模块为例: 如图中代码所示: __init__.py :和普通 Python 模块中的__init__.py 作用相同,主要用于引用模块根目录下的.py文件,是每个OpenERP 模块必须的.(注意,前后均是两个下划线)__openerp__.py :OpenERP 模块特有的,详细内容见后文,是每个OpenERP 模块必须的.hr_expense.py :费用单对象定义文件,Python代码.hr_expense_view.xml :费用单对象…
相信很多人也和我一样,不喜欢这样循规蹈矩的逐条去学习语法,很枯燥乏味.主要是这样学完一遍之后,没过一段时间就忘到九霄云外了.不如实际用到的时候研究它记得牢靠,所以我就整理成笔记,加深记忆的同时便于复习查看. 在这样不断的学习过程中,也提高了自己的总结能力:) 1.字符串的遍历器接口 ES5,数组和对象可以进行遍历,使用for() 和 for...in,还有jq中的each()方法进行遍历. ES6为我们提供了字符串遍历器  for...of 循环遍历 优点:可以识别大于0xFFFF的码点,传统的…
属性简洁表示法 属性名表达式 Objec.is() 扩展运算符 与 Object.assign() in 对象的遍历方式   属性简洁表示法: 如果属性key跟变量名一样,可简写 let name = '张三' let age = 18 let people = { name, age } console.log(people); 属性名表达式: 当我们想key是变量的时候,就需要使用属性名表达式 let s = 'school' let obj = { [s]: '清华' } console.…
小数位数标识定义: lx_purchase/data/lx_purchase_data.xml <?xml version="1.0" encoding="utf-8"?><openerp>    <data noupdate="1"> <record forcecreate="True" id="decimal_payment" model="decim…
计算字段.关联字段,对象修改时自动变更保存(当 store=True 时),当 store=False 时,默认不支持过滤和分组7.0中非计算字段.关联字段只读时无法修改保存的问题暂未解决 示例代码:  class dispatch_work_order(osv.osv):    _name="dispatch.work_order"    _description="工单"    _order = "id asc"            def…
1.Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map). 实际应用中,常见的类似数组的对象是DOM操作返回的NodeList集合,以及函数内部的arguments对象.Array.from都可以将它们转为真正的数组. 2.Array.from还可以接受第二个参数,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组. Array.from(…
1.Spring中的数据库支持 把具有相同功能的代码模板抽取到一个工具类中.2.关于jdbc template的应用 jdbcTemplate模板操作类,把访问jdbc的模板抽取到template中,使用模板类,可以不用管有关连接管理,关闭等细节,只关注核心业务代码,外围事情交给 Spring的模板去处理.3.Spring框架关于对数据库的支持A.统一的事务平台trasaction Management B.提供Dao support,support封装了有关template.public cl…
日期格式化字符串:DATE_FORMAT = "%Y-%m-%d" 日期时间格式字符串:DATETIME_FORMAT = "%Y-%m-%d %H:%M:%S" 日期时间格式字符串(包含毫秒):DATETIME_FORMAT = "%Y-%m-%d %H:%M:%S.%f" OpenERP对象中字段赋值为当前日期(字符串):fields.date.context_today,fields.date.context_today(self, cr,…
中国剩余定理&扩展中国剩余定理 NOIP考完回机房填坑 ◌ 中国剩余定理 处理一类相较扩展中国剩余定理更特殊的问题: 在这里要求 对于任意i,j(i≠j),gcd(mi,mj)=1 (就是互素) 不互素的话就只能用扩展算法了……这也是中国剩余定理与其扩展算法的主要区别. 另外 中国剩余定理 和 扩展中国剩余定理 似乎没有什么关系,除了解决的问题比较相似,所以我就分开讲了. ▫算法 举一个比较常用的例子(出自<九章算术>),求正整数x满足: 先计算 3,5,7 的最小公倍数为 105 再…
一.JSON数据交互 1.1JSON简介 JSON(JavaScript Object Notation)是一种数据交换格式. 1.2JSON对象结构 {}代表一个对象,{}中写入数据信息,通常为key:value形式. {key:value,key:value},属性名和属性之间用“:”隔开,各个属性间用“,”隔开. 同时value不仅可以为字符串或数字,也可为一个{}表示的对象. {key:{key1:value1}} 数组采用[]表示,[value1,value2...] value可为数…
一.扩展CI中的控制器 有时需要对CI中的控制器作统一操作,如进行登录和权限验证,这时就可以通过扩展CI控制器来实现. 扩展CI控制器只需要在application/core文件夹中建一个继承自CI_Controller类的MY_Controller类即可,然后在这个类中实现自己需要的逻辑. 关于上面这句话,有两点需要解释一下: 1.为什么要在application/core文件夹中:是因为基类CI_Controller是在system/core文件夹中,这里需要跟system中对应. 2.为什…
一.Swift扩展 扩展就是向一个已有的类.结构体或枚举类型添加新功能,这包括在没有权限获取原始源代码的情况下扩展类型的能力.扩展和 Objective-C中的分类(category)类似,但是它要比分类强大的多,它不仅可以扩展类,还可以扩展协议.枚举.结构体,另外扩展也不局限于扩展方法,还可以扩展便利构造方法.计算属性.下标脚本等 Swift中的扩展可以: 添加计算属性和计算静态属性 添加实例方法和类型方法 提供新的构造器 添加下标脚本 定义和使用新的嵌套类型 //使用扩展需要使用到exten…