the code of view.xml file is:
<odoo>
<data>
<record id="project_form" model="ir.ui.view">
<field name="name">res.partner.form</field>
<field name="model">res.partner</field>
<field name="type">form</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<field name="website" position="before">
<field name="pan_number"/>
<div class="oe_right oe_button_box">
<a href="https:/ird.gov.np/PanSearch" target="_blank" class="applicant_docs_forms" id="P014">Verification Link</a>
</div><br/>
<field name="vat_number"/>
<field name="bank_name"/>
<field name="acc_number"/>
</field>
<field name="phone" position="before">
<field name="key_person"/>
<field name="mobile_no"/>
</field>
<xpath expr="//page[2]" position="before">
<page string="Contract">
<group name="top">
<group>
<field name="contrat_start"/>
<field name="contract_status"/>
</group>
</group>
</page>
</xpath>
</field>
</record>
<record id="sale.order_form" model="ir.ui.view">
<field name="name">sale.order.form</field>
<field name="model">sale.order</field>
<field name="type">form</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="/form/*" position="before">
<header>
<button name="open_second_class" type="object" string="Submit" />
</header>
</xpath>
</field>
</record>
<record id="loadingslip_form_12" model="ir.ui.view">
<field name="name">loadingslip.form.12</field>
<field name="model">loadingslip</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Mymodule" duplicate="false">
<group>
<field name="state" invisible="1"/>
<field name="id_so"/>
<field name="name"/>
<field name="partner_id" />
<field name="date_order" />
<field name="validity_date" />
</group>
</form>
</field>
</record>
<record id="loadingslip_tree_12" model="ir.ui.view">
<field name="name">loadingslip.tree.12</field>
<field name="model">loadingslip</field>
<field name="type">form</field>
<field name="arch" type="xml">
<tree string="Mymodule" export="false">
<field name="state" invisible="1"/>
<field name="name"/>
<field name="partner_id" />
<field name="date_order" />
<field name="validity_date" />
</tree>
</field>
</record>
<record id="action_mymodule_loadingslip" model="ir.actions.act_window">
<field name="name">Insert</field>
<field name="res_model">loadingslip</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="loadingslip_form_12" />
<field name="target">new</field>
</record>
<act_window id="action_loadingslip" name ="loading_slip"
res_model="loadingslip" view_mode="tree,form"/>
<menuitem id ="menu_loadingslip" parent="sale.menu_sale_invoicing"
sequence="20" action="action_loadingslip"/>
</data>
</odoo>
the code of orm file is:
# -*- coding: utf-8 -*-
from odoo import models, fields, api
class sale_customer(models.Model):
_inherit='res.partner'
pan_number=fields.Char(string='PAN Number')
vat_number = fields.Char(string='VAT Number')
bank_name = fields.Char(string='Bank Name')
acc_number = fields.Char(string='Account Number')
contrat_start=fields.Date(string='Contract start Date')
contract_status=fields.Selection(
[('', ''), ('yes', 'Yes'),('no', 'No')],
default='', string='Contract Status')
key_person=fields.Char(string='Key Person')
mobile_no=fields.Char(string='Mobile Number')
class sale_code(models.Model):
_inherit='sale.order'
add=fields.Char(string='Address')
@api.multi
def open_second_class(self):
ac = self.env['ir.model.data'].xmlid_to_res_id('sales_ext_agni.loadingslip_form_12', raise_if_not_found=True)
tbl1 = False
for o in self:
tbl1 = o.id
result = {
'name': '2nd class',
'view_type': 'form',
'res_model': 'loadingslip',
'view_id': ac,
'context': {'default_id_tbl1': tbl1},
'type': 'ir.actions.act_window',
'view_mode': 'form'
}
return result
class loadingslip(models.Model):
_name='loadingslip'
_description='loading information'
_inherits={'sale.order':'id_so'}
id_so=fields.Many2one('sale.order')