2016-04-17 1 views
1

Ich muss die Schaltfläche Validate in account.invoice basierend auf dem Statusauswahlfeld ausblenden, das in einem anderen Modul vorhanden ist, das den Status "Financial Close" hat.Wie kann ich die Validate-Schaltfläche in account.invoice basierend auf dem Status in einem anderen Modul ausblenden?

ausblenden Schaltfläche Validieren wenn Status financial_close

<button name="invoice_open" states="draft" string="Validate" class="oe_highlight" groups="base.group_user"/> 

ein weiteres Modul, die staatliche Finanz Nähe

'status': fields.selection([ 
      ('open', 'Open'), 
      ('operation_close', 'Operation Closed'), 
      ('financial_close', 'Financial Closed'), 
      ('cancel', 'Cancel'), 
     ], string="Status"), 

Antwort

2

follw diesen Schritt enthält:

  1. erstellen Many2one in account.invoice mit dem einem anderen Modul.
  2. Erstellen Sie ein verwandtes Feld mystatus in mit Many2one zuvor erstellt.
  3. Übernehmen Sie die übergeordnete Ansicht [invoice_form] von invoice_open.
  4. Platzieren Sie Ihre Beziehung Feld: mystatus auf der Ansicht wie: <field name="mystatus"/>.
  5. Verwenden xpath und postion= attributes

Hier ist der Code-Schnipsel:

<xpath expr="//button[@name='invoice_open']" position="attributes"> 
<attribute name="attrs">{'invisible':[('mystatus','=', 'open')]}</attribute> 

dies in Ihrem Fall helfen kann

+0

Die Schaltfläche Definition für invoice_open verwendet die Zustände zuzuschreiben. Sie müssen sich also kümmern und entscheiden, ob Sie das überschreiben müssen. Odoo wird Staaten und Attrationen kombinieren. – CZoellner

Verwandte Themen