我在module.py
上按此顺序声明了这些fielsclass certificados(osv.osv):
_name = 'certificados.certificados'
_description = "Certificados de No Produccion"
_inherit=['mail.thread', 'ir.needaction_mixin']
_columns = {
'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'), 'cert_ids' : fields.one2many('certificados.line', 'requisicion_id','Items del Certificado'),
'descripcion' : fields.text('Descripcion'),
'notas' : fields.text('Notas'),
}
class certificados_line(osv.osv):
_name = 'certificados.line'
_description = "Certificados No Produccion line"
def multi_a_b(self, cr, uid, ids, name, arg, context=None):
res = {}
for record in self.browse(cr, uid, ids,context):
res[record.id] = record.Cantidad * record.Precio_Unitario_Declarado
return res
_columns = {
'Codigo_Arancelario' : fields.integer('Codigo Arancelario'),
'product_id' : fields.many2one('product.product', 'Material'),
'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.function(multi_a_b, type='integer', string='Valor En Divisas'),
'requisicion_id' : fields.many2one('certificados.certificados', 'Certificados de No Produccion', ondelete='cascade'),
'Cantidad_Consumida' : fields.float('Cantidad Consumida'), 'Cantidad_Disponible' : fields.float('Cantidad Disponible'),
}
certificados_line()
在我的module_view.xml上,我加载了'certificados.line'
类,其中'certificados.certificados
中的字段名为cert_ids
,如上面的代码所示。
问题是,当我加载certificados.line
字段时,我按特定顺序执行,但似乎xml不关心这一点,并随机取出cert_ids
字段。
这是module_view.xml有趣的代码
<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="Productos">
<field name="cert_ids">
<tree string="Productos">
<field name="product_id"/>
<field name="Codigo_Arancelario"/>
<field name="Descripcion_Arancelaria"/>
<field name="Especificaciones_Tecnicas"/>
<field name="Cantidad"/>
<field name="Precio_Unitario_Declarado"/>
<field name="Valor_En_Divisas"/>
<field name="Cantidad_Consumida"/>
</tree>
</field>
<separator string="Observaciones"/>
<field name="descripcion"/>
</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>
似乎如果我按照特定的顺序将cert_ids
字段放入其中并不重要,它会以certificados.line
类的方式随机加载所有字段,有人可以放弃一些亮点在这?
我希望我已经解释过了自己。
提前致谢。
答案 0 :(得分:1)
班级_order_by :
中的用户certificados_line
按字段的特定顺序列出数据。
答案 1 :(得分:1)
请为模型certificados_line
定义视图。您已在*certificados_line*
内为模型*student_certificados_form*
定义了树视图。但不是表单视图。您必须在*student_certificados_form*
内添加表单视图,或者为模型*certificados_line*
添加新的表单视图