openerp学习笔记 context 的应用】的更多相关文章

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…
1.webkit 打印需要安装的支持模块 请首先安装 Webkit 报表引擎(report_webkit),再安装 Webkit 报表的支持库(report_webkit_lib),该模块讲自动安装和设置 wkhtml2pdf 的路径. 另外,安装 oecn_base_fonts 模块可解决打印中文乱码问题,安装 web_pdf_preview 模块可以实现在浏览器中直接预览打印 pdf 文件. 2.webkit 打印模块文件结构 其中:hr_expense_report.xml 定义了报表名称…
示例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,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…
小数位数标识定义: 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…
跟踪状态基础数据: 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:…
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'), 典型的…
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…
日期格式化字符串: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,…
示例代码: 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…
说明: 单据自动编码允许定义 单据前缀+按当前年.月.日.时.分.秒+流水号+单据后缀 单据自动编号允许按所有公司统一编号或按分公司单独编号 单据自动编号中的流水号部分未按月重新编号,不断累计,当超出定义长度时,自动进位增加位数 暂时未实现按月重新编号,需要每月手工在设置中改变下一编号(客户肯定不会同意这样做的,待解决) 示例代码 xml 部分,编码规则定义:sale_sequence.xml <?xml version="1.0" encoding="utf-8&qu…
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…
待解决:图形中当改变分组时,图例不正确            存储比率计算时,分组合计不正确 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.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单,需要验证销售单的状态 def unlink(self, cr, uid, ids, context=None): for rec in self.browse(cr, uid, ids, context=context): if rec.state not in ['draft']: raise…
获取工作流服务:wf_service = netsvc.LocalService("workflow")删除对象对应记录的工作流:wf_service.trg_delete(uid, 'kl.qingjd', id, cr) #传入对象名称,对象ID创建对象对应记录的工作流:wf_service.trg_create(uid, 'kl.qingjd', id, cr) #传入对象名称,对象ID手动触发对象对应记录的工作流(信号):wf_sale_order.trg_validate(u…
计算字段.关联字段,对象修改时自动变更保存(当 store=True 时),当 store=False 时,默认不支持过滤和分组7.0中非计算字段.关联字段只读时无法修改保存的问题暂未解决 示例代码:  class dispatch_work_order(osv.osv):    _name="dispatch.work_order"    _description="工单"    _order = "id asc"            def…
一.Context是什么?上下文对象,可以理解为一个程序的运行的环境,从中可以获取当前程序的资源:getResources,getAssets 二.常见的Context有哪些?Application ContextActivity ContextService Context当创建一个Application , Activity, Service 的时候,都会对应创建一个属于他们的Context对象虽然同一个应用中的不同Context获取到的资源是同一套,环境是同一个,但是他们的生命周期不一致,…
支持的视图类型:form.tree.search ... 支持的定位方法:                  <notebook position="inside">  <xpath expr="//page[@name='page_history']" position="inside">                  <field name="mobile" position="…
#同时按手机.电话.名称模糊查找选择客户    def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100):        if not args:            args = []        args = args[:]        ids = []        if name:            ids = self.search(cr, user,…
以OpenERP7.0中的 hr_expense 模块为例: 如图中代码所示: __init__.py :和普通 Python 模块中的__init__.py 作用相同,主要用于引用模块根目录下的.py文件,是每个OpenERP 模块必须的.(注意,前后均是两个下划线)__openerp__.py :OpenERP 模块特有的,详细内容见后文,是每个OpenERP 模块必须的.hr_expense.py :费用单对象定义文件,Python代码.hr_expense_view.xml :费用单对象…
自己创建的: domain="[('create_uid','=',uid)]" 自己的: domain="[('employee_id','=','#kl_user_emp#')]" 本部门的: domain="[('department_id','=','#kl_user_dept#')]" 本部门及下属部门的: domain="[('department_id','child_of','#kl_user_dept#')]"…
1.修改产品数量时,自动计算产品销售金额.销售成本和销售利润<field name="num" on_change="on_change_product(product, num, price)"/>2.选择历史工单时,按销售单中当前选择的客户自动过滤,打开选择历史工单窗口时,过滤条件默认为销售单中当前选择的客户<field name="work_order" domain="[('customer','=',cust…
#服务卡创建,自动更新服务卡为开卡状态    def create(self, cr, uid, values, context=None):        values['state'] = '1'        values['times_limit'] = values['remaining_times'] #保存时按设置的剩余次数给初始次数赋值        cardid =  super(dispatch_service_card, self).create(cr, uid, valu…
删除菜单示例: <delete id="base.menu_module_updates" model="ir.ui.menu"/><delete id="base.module_mi" model="ir.ui.menu"/>…
视图(tree\form)中隐藏按钮( 创建.编辑.删除 )create="false" edit="false" delete="false" tree视图中启用编辑editable="top" (新增行在上) 或 editable="bottom" (新增行在下) 代码示例: <record model="ir.ui.view" id="dispatch_produc…
1.对象继承     _inherit = "product.product" 继承产品对象,给产品对象添加字段或方法,不需要设置 _name._table 等属性     注意:当继承后的子类不定义 _name 属性,则相当于在父类中增加字段和方法,并不创建新对象             当继承后的子类重新定义 _name 属性,则创建一个新的对象,新对象拥有父类中所有的字段和方法,父类不受任何影响.     _inherits = {'product.template': 'pro…
#检测同一时间段内是否存在相同的请假单,False 是存在,不允许创建    def _check_date(self, cr, uid, ids):        for rec in self.browse(cr, uid, ids):            search_ids = self.search(cr, uid, [('date_from', '<=', rec.date_to), ('date_to', '>=', rec.date_from), ('employee_id'…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
目录 WeX5学习笔记... 1 1.轻松看透WeX5产品能力和技术... 1 2.WeX5可以怎么玩?... 3 一.纯本地App. 3 二.关联一个网站,希望默认就打开某页... 4 三.UI设计器... 4 四.打包神器... 4 五.标准玩法... 4 3.WeX5 App与服务端交互原理... 4 4.Account示例程序... 5 5.Takeout示例程序... 7 5.1Index.w.. 7 5.2mapActivity.w.. 13 问题... 13 6.页面间交互视频..…