首页 > 代码库 > 页签类型按钮上面记录条数获得
页签类型按钮上面记录条数获得
这里是销售订单记录条数
固定格式(self, cr, uid, ids, field_name, arg, context=None):
def _sales_count(self, cr, uid, ids, field_name, arg, context=None):
res = dict.fromkeys(ids, 0)
try:
sale_order_obj=self.pool.get(‘sale.order‘) 获取该表 sale.order
sale_ids=sale_order_obj.search(cr,uid,[(‘sale_origin_id‘,‘=‘,ids[0])]) 找到满足条件的数据
res[ids[0]]=len(sale_ids)
except:
print u"err!"
finally:
return res
create是 新建 点击保存后操作的一系列动作
def create(self,cr,uid,vals,context=None):
if context is None:
context ={}
if vals.get(‘name‘,‘/‘)==‘/‘:
vals[‘name‘]=self.pool.get(‘ir.sequence‘).get(cr,uid,‘sale.origin‘) or ‘/‘
ctx=dict(context or {},mail_create_nolog=True)
#如果存在这个字段 则不处理 反之 删除本元素
flagline=vals
linenum=len(vals.get(‘line_id‘))
new_line_id=[]
# for 循环遍历出所有的数据,再将满足条件数据放到一个新的数组里,重新赋值给输出变量,linenum固定长度
for i in range(linenum):
if ‘choice‘ in vals.get(‘line_id‘)[i][2] and vals.get(‘line_id‘)[i][2][‘choice‘] is True:
new_line_id.append(vals.get(‘line_id‘)[i])
vals[‘line_id‘]=new_line_id
new_id=super(sale_origin,self).create(cr,uid,vals,context=ctx)
增加关注者 这里依赖于od-oa模块
res_model=self._name
obj=self.pool.get(‘od.oa.add.user‘)
obj.add_follower_ids(cr,uid,res_model,new_id)
return new_id
而这里则是编辑后保存所执行的动作
######修改外部交期后 同时修改销售订单的交期
def write(self, cr, uid, ids, vals, context=None):
choice1=vals.get(‘choice‘)
ddate=vals.get(‘date_planned‘)
price=vals.get(‘price‘)
# if choice1 == False:
# print ‘11‘
# self.unlink(cr,uid,ids,context=context)
# else:
if ddate or price or choice1 :
obj=self.pool(‘sale.order.line‘)
sale_order_line_id=obj.search(cr,uid,[(‘sale_origin_line_id‘,‘=‘,ids[0])])
obj.write(cr,uid,sale_order_line_id,{‘finish_date‘:ddate,‘price_unit‘:price})
# print ids
return super(sale_origin_line, self).write(cr, uid,ids, vals, context=context)
页签类型按钮上面记录条数获得
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。