Hallo zusammen,

ich möchte gern überwachen, wenn ein Kontakt aktualisiert wird. Dazu habe ich eine automatisierte Aktion erstellt, welche bei "on update" ausgeführt wird. Das funktioniert auch wie gewünscht, wenn direkt ein Kontakt bearbeitet wird. Hier wird die automatisierte Aktion genau einmal ausgeführt.

Hat aber z.B. eine Firma einen Kontakt und ich ändere einen Wert ( z.B. die Telefonnummer der Firma ) dann wird die on_update Methode scheinbar willkürlich oft ( zwischen 3 und 7 Mal ) ausgeführt.
Ich kann auch sehen, dass jeweils der Kontakt ( der unverändert blieb ) als auch die Firma selbst ( wo ein Wert verändert wurde ) die on_update Methode feuern.

Hierfür habe ich in folgenden Python code in die Aktion eingeführt:

Code: Alles auswählen

tool = env['res.partner']
tool.on_update(record.id)  


und im Model selbst habe ich folgende Funktion, um dies zu überwachen:

Code: Alles auswählen

def on_update(self, recordID):
    _logger.error("On Update" + str(recordID))


Erwarten würde ich, dass der Kontakt der Firma aktualisiert wird und diese Aktion genau einmal ( egal wie viele Werte ich verändere ) ausgeführt wird.

Sehen kann dies über das Logging:

2018-09-12 18:58:18,624 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,633 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,645 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,648 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,660 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,663 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,675 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,678 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,711 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,724 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,739 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,752 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,754 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,761 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4754
2018-09-12 18:58:18,884 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,890 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,900 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,940 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On Update4755
2018-09-12 18:58:18,948 21405 ERROR Dev-DB odoo.addons.custom_partner.models.models: On create4754

Die Firma hat hier die ID 4754 und der Kontakt 4755.

So kann ich natürlich nicht sicher überwachen, welche Aktion die letzte ist, um anschließend weitere Aktionen im Code vorzunehmen.

Hat jemand eine Idee, warum es dazu kommt?

Gruß, Patrick

Übersehe ich hier etwas oder ist mein Ansatz hier nicht der Richtige?