odoo方法

# 创建按钮
def action_view_sigining_contract(self, cr, uid, ids, context=None):
if not context:
context = {}
selfobj=self.browse(cr,uid,ids[0],context=context)
pickobj=self.pool('sigining.contract')
传值
ctx={'default_contract_type':selfobj.lx_type,'default_name':selfobj.name.id,'default_display_name':selfobj.display_name.id}
mod_obj = self.pool.get('ir.model.data')
form_res = mod_obj.get_object_reference(cr, uid, 'demo_contract', 'view_sigining_contract_form')
form_id = form_res and form_res[1] or False

return {
'name':u'创建合同',
'type': 'ir.actions.act_window',
'view_type': 'form,tree',
'view_mode': 'form,tree',
'res_model': 'sigining.contract',
'views': [(form_id, 'form')],
'view_id':form_id,
'context':ctx,
}

 

 

 

 

<div class="oe_right oe_button_box" name="buttons">
                        <button  class="oe_inline oe_stat_button" icon="fa-list" name="action_open_jiesuan_order" type="object">
                            <field string="结算清单" name="jiesuan_order_count" widget="statinfo" />
                        </button>
                    </div>

 

这是右边的页签:计算条数:

# 新加地方,要记录立项的条数,通过合同号来找到
def _get_lx_order_count(self, cr, uid, ids, field_name, arg, context=None):
res = dict.fromkeys(ids, 0)

try:
lx_origin=self.browse(cr,uid,ids[0],context=context).lx_origin
obj=self.pool('demo.contract.lx')
demo_contract_lx_ids=obj.search(cr,uid,[('lx_origin','=',lx_origin)])
res[ids[0]]=len(demo_contract_lx_ids)
except:
print u"err"
finally:
return res



_columns = {

'lx_order_count':fields.function(_get_lx_order_count,string='立项单'),

}


 ###############链接到立项页面tree视图
def action_open_lx_order(self, cr, uid, ids, context=None):
try:
act_obj = self.pool.get('ir.actions.act_window')
mod_obj = self.pool.get('ir.model.data')
obj=self.browse(cr,uid,ids[0],context=context)
lx_origin=obj.lx_origin
result = mod_obj.xmlid_to_res_id(cr, uid, 'demo_contract.action_demo_contract_lx',raise_if_not_found=True) #查找出动作的ID
result = act_obj.read(cr, uid, [result], context=context)[0]

result['domain'] = "[('lx_origin','=','" + lx_origin + "')]"
except:
print u"err"
finally:
return result


<record id="view_demo_contract_lx_form" model="ir.ui.view">
<field name="name">demo.contract.lx.form</field>
<field name="model">demo.contract.lx</field>
<field name="arch" type="xml">
<form striing="demo contract lx">
<header>
<button name="action_split_order" string="确认" type="object" states="draft"/>
<button name="action_cancel_order" string="取消" type="object" states="confirm"/>
<button name="action_view_sigining_contract" string="创立合同" type="object" states="confirm"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm"/>
</header>
<sheet>
<div class="oe_right oe_button_box" name="buttons">
<button class="oe_inline oe_stat_button" icon="fa-list" name="action_open_lx_order" type="object">
<field string="立项单" name="lx_order_count" widget="statinfo" />
</button>
</div>
<h1
>

<label string="立项"/>
<field name="lx_origin" class="oe_inline" readonly="1"/>
</h1>
 

转载于:https://www.cnblogs.com/1314520xh/p/6941146.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Odoo中嵌入视图,可以按照以下方法进行操作: 1. 使用看板视图进行嵌入:看板视图是一种可视化的视图,将记录显示为卡片,并可以按列分组。您可以在看板视图中设置属性,如default_group_by和default_order,来定义视图的默认行为。您还可以使用属性examples来定义看板示例设置。 2. 使用表单视图进行嵌入:表单视图是Odoo中最常见的视图类型之一,您可以使用表单视图来显示和编辑记录的详细信息。如果您想要在看板视图中进行记录的快速创建,可以设置quick_create属性为true。 3. 使用列表视图进行嵌入:列表视图以表格形式显示记录,并提供了排序、筛选和分页等功能。您可以在列表视图中设置属性,如default_order,来定义记录的默认排序顺序。 总结起来,要在Odoo中嵌入视图,您可以使用看板视图、表单视图或列表视图,并根据您的需求设置相应的属性来定义视图的行为。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Odoo看板视图](https://blog.csdn.net/weixin_44141284/article/details/128813441)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [odoo14视图通过路由嵌入内容](https://blog.csdn.net/weixin_44565926/article/details/122139573)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值