2013-04-08 70 views
0

在我的自定義模塊,我試着做一些設計在它的XML視圖(張,團體,筆記本...)無效的XML架構 - OpenERP的XML查看

而且我面臨這個問題「無效的XML架構 - OpenErp XML View「我不知道這裏是否有一些錯誤的標籤,我是基於現有模塊進行設計的。

<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="Crear Certificado" > 
         <tree string="Certificadu" > 
          <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="Certificado" version="7.0"> 
          <group> 
           <field name="Codigo_Arancelario" /> 
           <field name="Especificaciones_Tecnicas"/> 
           <field name="Valor_En_Divisas" /> 
          </group> 
         </form> 
        </field> 
       <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> 

這就是我從其他模塊取得的設計。

的module.py是這樣的:

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'), 
      '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() 

我不認爲這是在module.py代碼不一致或未申報領域的問題。

我敢肯定,有一些與XML設計,但不知道在哪裏。

如果有人可以幫助將是非常偉大的。

在此先感謝!

回答

2

您確實在該窗體視圖中使用了不必要的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> 
           <field name="Codigo_Arancelario"/> 
           <field name="Descripcion_Arancelaria"/> 
          </group> 
          <group> 
           <field name="Especificaciones_Tecnicas"/> 
           <field name="Cantidad"/> 
          </group> 
          <group> 
           <field name="Precio_Unitario_Declarado"/> 
           <field name="Valor_En_Divisas"/> 
          </group> 
          <group> 
           <field name="Cantidad_Consumida"/> 
           <field name="notas"/> 
          </group> 
         </group> 
        </sheet> 
       </form> 
      </field> 
     </record> 

如果你想在最後用「message_follower_ids」和「了Message_ID」,顯示在表格視圖,您需要繼承「mail.thread」對象。

感謝, Priyesh索蘭奇

+0

[Pastebin](http://pastebin.com/ENVKve05)那裏是 – NeoVe 2013-04-08 08:51:18

+0

謝謝謝謝非常感謝,無論如何,我需要筆記本和分隔符包含多個項目,但我可以做到這一點現在好了,我會做的,非常感謝你! – NeoVe 2013-04-08 15:06:18

2

在您的代碼中出現許多錯誤。

1.`<field name="Crear Certificado" >` 

該字段不會在您的py代碼列中退出。和你的領域的名稱不PEP 8規則

2. `<field name="Item" readonly="1">` 

項目是整場,我不明白你爲什麼把這個領域像one2many和定義樹。

3.<div class="oe_chatter"> 
      <field name="message_follower_ids" widget="mail_followers"/> 
      <field name="message_ids" widget="mail_thread"/> 
     </div> 

如果你想使用這個領域,那麼你必須繼承_inherit = [「mail.thread」,「ir.needaction_mixin」]在你的對象

而且你的XML文件的結構非常糟糕結構化請改變它。使用四個空格標籤。

希望這對您有所幫助,如果你想發展的OpenERP模塊則首先從http://doc.openerp.com讀的OpenERP的開發商書和7 http://doc.openerp.com/trunk/developers/server/

+0

那麼它實際上是一個部分,但非常感謝你的resoruce一如既往:),要去嘗試你的建議。 – NeoVe 2013-04-08 14:51:01

0

我認爲你需要學習規則編寫XML

1 )所有的XML元素都必須有一個關閉標籤 2)XML標記區分大小寫 3)XML元素必須正確嵌套 4)XML文檔必須有根元素 5)XML屬性值須加引號

http://www.w3schools.com/xml/xml_syntax.asp