摘要: 示例代码: data/scheduler.xml <?xml version="1.0" encoding="utf-8"?><openerp> <data noupdate="0"> <record forcecreate="True" id="ir_cron_dispatch_service_c 阅读全文
posted @ 2013-06-27 18:10 cnshen 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 日期格式化字符串: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, uid, context=context),fields.date.today()OpenER 阅读全文
posted @ 2013-06-27 18:03 cnshen 阅读(1789) 评论(0) 推荐(1) 编辑
摘要: 自己创建的: domain="[('create_uid','=',uid)]" 自己的: domain="[('employee_id','=','#kl_user_emp#')]" 本部门的: domain="[('department_id','=','#kl_user_dept#')]" 本 阅读全文
posted @ 2013-06-27 17:50 cnshen 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 1.修改产品数量时,自动计算产品销售金额、销售成本和销售利润<field name="num" on_change="on_change_product(product, num, price)"/>2.选择历史工单时,按销售单中当前选择的客户自动过滤,打开选择历史工单窗口时,过滤条件默认为销售单中 阅读全文
posted @ 2013-06-27 17:23 cnshen 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 说明: 单据自动编码允许定义 单据前缀+按当前年、月、日、时、分、秒+流水号+单据后缀 单据自动编号允许按所有公司统一编号或按分公司单独编号 单据自动编号中的流水号部分未按月重新编号,不断累计,当超出定义长度时,自动进位增加位数 暂时未实现按月重新编号,需要每月手工在设置中改变下一编号(客户肯定不会 阅读全文
posted @ 2013-06-27 17:11 cnshen 阅读(651) 评论(0) 推荐(0) 编辑
摘要: 视图(tree\form)中隐藏按钮( 创建、编辑、删除 )create="false" edit="false" delete="false" tree视图中启用编辑editable="top" (新增行在上) 或 editable="bottom" (新增行在下) 代码示例: <record m 阅读全文
posted @ 2013-06-27 16:31 cnshen 阅读(851) 评论(1) 推荐(0) 编辑
摘要: #服务卡创建,自动更新服务卡为开卡状态 def create(self, cr, uid, values, context=None): values['state'] = '1' values['times_limit'] = values['remaining_times'] #保存时按设置的剩 阅读全文
posted @ 2013-06-27 16:11 cnshen 阅读(256) 评论(0) 推荐(0) 编辑
摘要: #同时按手机、电话、名称模糊查找选择客户 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, [('mobile', 'ilike', name)]+args, limit=limit, context=context) if not ids: id 阅读全文
posted @ 2013-06-27 15:56 cnshen 阅读(1582) 评论(0) 推荐(1) 编辑
摘要: #检测同一时间段内是否存在相同的请假单,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_from), ('employee_id', '=', rec.employee_id.id), ('id', '', rec.id)]) if searc 阅读全文
posted @ 2013-06-27 15:33 cnshen 阅读(696) 评论(0) 推荐(0) 编辑
摘要: 以OpenERP7.0中的hr_expense模块为例:如图中代码所示:__init__.py :和普通 Python 模块中的__init__.py 作用相同,主要用于引用模块根目录下的.py文件,是每个OpenERP 模块必须的。(注意,前后均是两个下划线)__openerp__.py :OpenERP 模块特有的,详细内容见后文,是每个OpenERP 模块必须的。hr_expense.py :费用单对象定义文件,Python代码。hr_expense_view.xml :费用单对象对应的视图(列表tree、表单form、搜索search)、动作(Action)、菜单(menu)定义文件。 阅读全文
posted @ 2013-06-27 14:21 cnshen 阅读(3465) 评论(3) 推荐(2) 编辑