Entwicklung Datenmodelle

Odoo Datenmodell erweitern.

Modelle

Datenmodell anzeigen

Öffnen Sie Einstellungen > Technisch > Datenbankstruktur > Modelle und suchen Sie das entsprechende Datenmodell.

Datenmodell entfernen

Öffnen Sie Einstellungen > Technisch > Datenbankstruktur > Modelle und suchen Sie das entsprechende Datenmodell. Markieren Sie dieses und wählen Sie Aktion > Löschen.

WARNING

Diese Vorgang kann die Integrität und Verfügbarkeit des Systems beeinträchtigen. Führen Sie die Aktion nur aus, wenn Sie sich den möglichen Auswirkungen bewusst sind.

Felder

Neues Feld hinzufügen

An jedem Objekt kann an einfach ein Feld hinzugefügt werden. Öffnen Sie eine Ansicht im Entwicklermodus und wählen Sie Entwicklertools > Felder anzeigen. Wählen Sie + Anlegen und geben Sie folgende Informationen ein:

  • Feldname: Beginnt mit x_ und darf keine Leerschläge enthalten und sollte kleingeschrieben und auf Englisch sein.
  • Feldbezeichnung: Passender Name in der angezeigten Sprache.
  • Typfeld-Text: Auswahls den Felddatentyps.

Dazu ein Beispiel mit Abwesenheit:

Neues berechnetes Feld hinzufügen

Wir nehmen an, dass Sie auf der Lagerbechnung ein berechnetes Feld benötigen. Dieses Feld soll die Anzahl Kisten berechnen, die es braucht um das Produkt zu verpacken. Immer wenn die Erledigte Menge ändert, soll das Feld berechnet werden.

Erstellen Sie ein neues Feld unter Einstellungen > Technisch > Datenbankstruktur > Felder mit diesen Attributen:

  • Feldname: x_count_boxes
  • Feldbezeichnung: Anzahl Kisten
  • Modell: Lagerbuchung (technischer Name ist stock.move)
  • Typfeld-Text: Ganzzahl
  • Basiseigenschaften:
    • Nur Lesen
    • Gespeichert
  • Abhängigkeiten: quantity_done
  • Berechnen:
for rec in self:
	if rec.product_packaging:
		if rec.product_packaging.name == "Schale":
			rec['x_count_boxes'] = (rec.quantity_done + 2.4)/2.5
		if rec.product_packaging.name == "Kiste":
			rec['x_count_boxes'] = (rec.quantity_done + 9)/10

Dieser Code berechnet abhängig von der gewählten Verpackung und deren Füllmenge die Anzahl Kisten. Mit Python-Code können Sie natürlich jegliche Logik für die Berechnung entwickeln.

Neues Beziehungs-Feld hinzufügen

Wir nehmen an, dass Sie auf der Auftragsposition ein Beziehungs-Feld benötigen. Dieses Feld soll die Kundenreferenz auf dem zugehörigen Verkaufsauftrag anzeigen.

Erstellen Sie ein neues Feld unter Einstellungen > Technisch > Datenbankstruktur > Felder mit diesen Attributen:

  • Feldname: x_client_order_ref
  • Feldbezeichnung: Kundenreferenz
  • Modell: Auftragsposition (technischer Name ist sale.order.line)
  • Typfeld-Text: Text
  • Basiseigenschaften:
    • Nur Lesen
    • Gespeichert
  • Beziehungs-Feld: order_id.client_order_ref

Dieses Feld können Sie nun in Berichten oder Listenansichten anzeigen.

Datenmodell für Webfomulare freischalten

Navigieren Sie nach Einstellungen > Technisch > Modelle und zeigen Sie das Datenmodell an, welche Sie für Webformulare freischalten möchten. Im Tab Webformulare aktivieren Sie die Option Nutzbar in Formularen. Geben Sie eine passe Bezeichnung im Feld Bezeichnung für die Formularaktion ein und schränken die verfügbaren Felder mit Feld für benutzerdefinierte Formulardaten ein.


📝 Edit on GitHubopen in new window