2013-04-27 98 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