2013-04-27 79 views
0

我在此为了得到宣布对我module.py无序领域

class 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这些fiels,我加载'certificados.line'类,一个名为cert_ids'certificados.certificados领域,如你可以在上面的代码中看到。

问题是,当我加载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类,在随机的方式,有人可以阐明这一点?

我希望我已经解释了我自己。

在此先感谢。

回答

1

请为模型certificados_line定义一个视图。您已经为*student_certificados_form*中的模型*certificados_line*定义了树视图。但不是表单视图。你必须在*student_certificados_form*或这个模型的新窗体视图中添加窗体视图*certificados_line*

+0

没错,我会在树后定义它...谢谢! – NeoVe 2013-04-28 18:10:31

1

用户_order_by :在类certificados_line按特定的字段顺序列出数据。

+0

谢谢!但是_order_by和属性是什么? – NeoVe 2013-04-27 13:30:44

+0

您想要维护列表顺序的任何字段。 – Parthiv 2013-04-29 10:58:25