Python XML设计OpenErp
我的模块certificados.py有一个xml,.py模块如下:Python XML设计OpenErp,python,xml,view,module,openerp,Python,Xml,View,Module,Openerp,我的模块certificados.py有一个xml,.py模块如下: class certificados(osv.osv): _name = 'certificados.certificados' _columns = { 'Item' : fields.integer('Item'), 'Registro Numero' : fields.integer('Registro Numero'), 'Fecha de Emision': fie
class certificados(osv.osv):
_name = 'certificados.certificados'
_columns = {
'Item' : fields.integer('Item'), 'Registro Numero' : fields.integer('Registro Numero'),
'Fecha de Emision': fields.date('Fecha de Emision', required=True, select=True),
'Fecha de Solicitud': fields.date('Fecha de Solicitud', required=True, select=True),
'Fecha del Documento': fields.date('Fecha del Documento', required=True, select=True),
'Vigencia' : fields.integer('Vigencia'),
'Codigo Arancelario' : fields.integer('Codigo Arancelario'),
'cert_ids' : fields.one2many('purchase.requisition.line','requisition_id','Products to Purchase',states={'done': [('readonly', True)]}),
'Descripcion Arancelaria' : fields.char('Descripcion Arancelaria', size=42, required = True, translate = True),
'Especificaciones Tecnicas' : fields.char('Especificaciones Tecnicas', size=60, required = True, translate = True),
'Cantidad' : fields.float('Cantidad'), 'Unidad de Medida': fields.many2one('product.uom', 'Unidad de Medida'),
'Precio Unitario Declarado' : fields.float('Precio Unitario Declarado'), 'Moneda' : fields.many2one('res.currency', 'Moneda'),
'Valor En Divisas' : fields.float('Valor En Divisas'),
'Cantidad Consumida' : fields.float('Cantidad Consumida'), 'Cantidad Disponible' : fields.float('Cantidad Disponible'),
'notas' : fields.text('Notas'),
}
certificados()
我试图对此模块进行一些设计,使其显示为请购单,我指的不仅仅是记录,还有一些“表”和“h1”以及类似的“笔记本”之类的东西,我的模块在“表格”部分的代码如下:
<record id="student_certificados_form" model="ir.ui.view">
<field name="name">certificados.result.form</field>
<field name="model">certificados.certificados</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Introducir los datos" >
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Cantidad" /><field name="Unidad de Medida" />
<field name="Precio Unitario Declarado" /><field name="Moneda" />
<field name="Valor En Divisas" /><field name="Moneda" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</form>
</field>
</record>
<record id="student_certificados_form" model="ir.ui.view">
<field name="name">certificados.result.form</field>
<field name="model">certificados.certificados</field>
<field name="arch" type="xml">
<form string="Introducir los datos" version="7.0">
<sheet>
<div class="oe_edit_only">
<label for="Registro Numero" class="oe_inline"/>
</div>
<h1>
<field name="Registro Numero" class="oe_inline"/>
</h1>
<group>
<group>
<field name="Fecha de Emision"/>
<field name="Fecha de Solicitud"/>
</group>
<group>
<field name="Fecha del Documento"/>
<field name="Vigencia"/>
</group>
</group>
<notebook>
<page string="Certificados">
<field name="
<tree string="certificados_certificados_tree" editable="bottom">
<field name="Item" />
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Precio Unitario Declarado" />
<field name="Valor En Divisas" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</tree>
<form string="Certificados" version="7.0">
<group>
<field name="Codigo Arancelario" />
<field name="Especificaciones Tecnicas"/>
<field name="Valor En Divisas" />
</group>
</form>
<separator string="Certificados"/>
<field name="Item" readonly="1">
<tree string="Certificados" >
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Cantidad" /><field name="Unidad de Medida" />
<field name="Precio Unitario Declarado" /><field name="Moneda" />
<field name="Valor En Divisas" /><field name="Moneda" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</tree>
</field>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
认证结果表
证明,证明
形式
我做了一些修改,但我无法找到错误所在,修改后的版本为:
<record id="student_certificados_form" model="ir.ui.view">
<field name="name">certificados.result.form</field>
<field name="model">certificados.certificados</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Introducir los datos" >
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Cantidad" /><field name="Unidad de Medida" />
<field name="Precio Unitario Declarado" /><field name="Moneda" />
<field name="Valor En Divisas" /><field name="Moneda" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</form>
</field>
</record>
<record id="student_certificados_form" model="ir.ui.view">
<field name="name">certificados.result.form</field>
<field name="model">certificados.certificados</field>
<field name="arch" type="xml">
<form string="Introducir los datos" version="7.0">
<sheet>
<div class="oe_edit_only">
<label for="Registro Numero" class="oe_inline"/>
</div>
<h1>
<field name="Registro Numero" class="oe_inline"/>
</h1>
<group>
<group>
<field name="Fecha de Emision"/>
<field name="Fecha de Solicitud"/>
</group>
<group>
<field name="Fecha del Documento"/>
<field name="Vigencia"/>
</group>
</group>
<notebook>
<page string="Certificados">
<field name="
<tree string="certificados_certificados_tree" editable="bottom">
<field name="Item" />
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Precio Unitario Declarado" />
<field name="Valor En Divisas" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</tree>
<form string="Certificados" version="7.0">
<group>
<field name="Codigo Arancelario" />
<field name="Especificaciones Tecnicas"/>
<field name="Valor En Divisas" />
</group>
</form>
<separator string="Certificados"/>
<field name="Item" readonly="1">
<tree string="Certificados" >
<field name="Codigo Arancelario" />
<field name="Descripcion Arancelaria" />
<field name="Especificaciones Tecnicas" />
<field name="Cantidad" /><field name="Unidad de Medida" />
<field name="Precio Unitario Declarado" /><field name="Moneda" />
<field name="Valor En Divisas" /><field name="Moneda" />
<field name="Cantidad Consumida" />
<field name="Cantidad Disponible" />
</tree>
</field>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
认证结果表
证明,证明
py文件中的字段定义可能有问题
您定义的字段如下:'Codigo Arancelario':fields.integer('Codigo Arancelario')
,但它必须是这样的'Codigo\u Arancelario':fields.integer('Codigo Arancelario')
。这就是你面临错误的原因
因此,请更改py和xml中的字段定义,然后再试一次
我希望到时候它能起作用。即使在将您的域名从“Codigo Arancelario”改为“Codigo_Arancelario”之后,
您仍然会从上述代码中得到一个错误。我可以分析,可能是您忘记了,或者您不知道,对于“one2many”字段类型,必须有多个字段将该对象引用到另一个对象
Here in your module's scenario, You have to define many2one field in purchase.requisition.line for 'cert_ids'.
Try This :
instead of 'cert_ids' , use this one over there
'cert_ids' : fields.one2many('purchase.requisition.line','cert_requisition_id','Products to Purchase',states={'done': [('readonly', True)]}),
And after that add an object, in your .py file i.e
class purchase_requisition_line(osv.Model):
_inherit = 'purchase.requisition.line'
_columns = {
'cert_requisition_id': fields.many2one('certificados.certificados', 'Products to Purchase')
}
purchase_requisition_line()
Hope this will Solve your Error.