Der ultimative Leitfaden für eine erfolgreiche Odoo-ERP-Implementierung   Gratis Download

Rahmenverträge Verkauf

Abbildung von Abruf- bzw. Rahmenverträgen in Odoo Standard unter Sales

Zusammenfassung

In diesem Artikel wollen wir zeigen, wie man mit Bordmitteln Rahmenverträge im Verkauf nutzen kann, obwohl es die Funktion in Odoo Standard offiziell nicht gibt.

Dabei gehen wir von der Anlage des Vertrags bis zur Auswertung.
Schritt 1: Anlage als Angebot
Schritt 2: Generieren der Preisliste als Konsequenz aus den Preisen und als Darstellung des Rahmenvertrags.
Schritt 3: Anlage der Abrufe über Duplizieren, Excel oder Angebotsvorlagen.
Schritt 4: Soll-Ist-Vergleich und Darstellung der Menge, die vom Rahmenvertrag bereits abgerufen wurde.

Wir werden dabei feststellen, dass die Anzahl der Anforderungen und der Funktionen nicht immer 1:1 in einem System vorhanden sein muss. Manchmal helfen Systemkenntnis und etwas Einfallsreichtum, um zum selben Ziel zu kommen.
 

Ausgangssituation

In nahezu jedem Unternehmen mit Fokus auf B2B kommt irgendwann die Anforderung, kundenseitige Rahmenverträge im System abzubilden. In der Regel geht es um die Darstellung von vier grundlegenden Funktionen:

 

1) Preise

Im Rahmen des Abrufs wurden abweichende Preise / Rabatte vereinbart, die künftig berücksichtigt werden sollen.

2) Mengen

Die in (1) vereinbarten Preise sind an einen zeitlichen Rahmen und eine Abnahmemenge gebunden. Beides muss natürlich regelmäßig geprüft werden, um festzustellen, ob die Vereinbarung wie geplant eingehalten wird oder eine Anpassung notwendig ist.

3) Schneller Abruf

Um einen effektiven Prozess zu gewährleisten, sollte eine schnelle Erfassung Teil der Umsetzung sein, allein, um Fehlerpotentiale so weit wie möglich zu minimieren. Daher sollten die im Rahmenvertrag enthaltenen Produkte rasch abgerufen werden können. Gegebenenfalls gibt es sogar einen Lieferplan, dessen Mengen in den Bedarf eingeplant werden müssen.

4) Reporting

Unabhängig davon geht es nicht nur um die Frage, wie viele Rahmenverträge vorhanden und wie diese strukturiert sind, sondern auch um den Soll-Ist-Vergleich für die Umsatzplanung.

Jeder erfahrene Odoo Nutzer weiß, dass im Einkauf / Purchase Modul unter den Einstellungen die Erweiterung “Purchase Agreements“ (also „Kaufverträge“) aktiviert werden kann.

Setting Purchase Agreements(Abb.1)

Nach der Aktivierung lassen sich unterschiedliche Kaufvertragsarten, wie Ausschreibungen oder Rahmenverträge (Blanket Orders), erstellen und konfigurieren. Wichtig dabei ist, dass wesentliche Informationen in einem Bildschirm verwaltet und eingesehen werden können:

Blanket Orders(Abb.2)

Die zentralen Punkte hier sind wohl die Zuordnung zu einem Lieferanten (“Vendor“), die Laufzeit des Agreements (“Agreement Deadline“), die Gegenüberstellung der im Vertrag vereinbarten Menge (hier als “Quantity“ dargestellt) und natürlich die bereits beim Lieferanten abgerufene Menge (“Ordered Quantities“).

Natürlich ist es schön, die Chatterbox und Dateiablage zur Verfügung zu haben, über die wie gewohnt versioniert und kommuniziert werden kann. Außerdem können hier alle vorgangsbezogenen Dateien abgelegt werden und sind damit direkt abrufbar.

Ein separates Berichtswesen gibt es jedoch nicht. Im Endeffekt sind hier die Punkte 1-3 dargestellt. Punkt 3 wird über die Konfiguration der Vertragstypen abgebildet; hier kann das Verhalten bei Neuanlage eines RfQs festgelegt werden (siehe rechter Bereich):

Agreement Type(Abb.3)


Hintergrundinformationen

Eine vergleichbare Funktion gab es im Modul Verkauf noch nie. Wir können nur spekulieren, warum sie in dieser Form nicht so explizit eingeführt wurde.

Die Hauptaufgabe des Einkaufs ist es, den bestmöglichen Preis auszuhandeln. Dies lässt sich meist über eine entsprechende Menge erzielen. Die Festlegung eines Einkaufsrahmens und die Durchführung einer damit verbundenen Ausschreibung sind daher eigentlich Standardprozesse und bedürfen damit auch einer Abbildung in einem integrierten System.

​Zu den Aufgaben eines ERP-Systems gehören darüber hinaus die Ermittlung eines Mengenbedarfs aus dem Verkauf sowie die Umrechnung und Weitergabe an den Einkauf, unter Berücksichtigung der Lieferzeitpunkte. Dabei gilt es, mehrere Anwendungsfälle zu unterscheiden:

  • Einkaufsartikel oder Komponenten, deren Konditionen bereits feststehen
  • Artikel und Mengen, deren Preise und Konditionen ermittelt werden müssen (unabhängig davon, ob diese aus einem Projekt kommen oder über einen festgelegten Zeitraum eingeplant sind)

Damit muss es auch die Möglichkeit geben, zwei unterschiedliche Prozesse steuern zu können.

Im Odoo Verkauf ist zur Darstellung der Rahmenbedingungen lediglich die Abbildung von Preislisten verfügbar. Diese sind vielseitig einsetzbar und nicht nur zur Steuerung von individuellen Preisen gedacht. Sie können darüber hinaus im Rahmen von Kampagnen eingesetzt werden, um entsprechend unterschiedliche Vertriebskanäle preislich zu regulieren oder um unterschiedliche Vertragsarten zu signalisieren. Warum Odoo hier nicht weiter gegangen ist, kann man nur vermuten. Doch jede Vermutung ändert nichts an der Tatsache, dass es keine weiteren spezifischen Funktionen gibt.

Abbildung im Verkauf

Natürlich stellt sich die berechtigte Frage, was mit den restlichen Punkten ist. Immerhin ist der Preis ja nur ein, wenn auch ein wesentlicher Teil einer Verkaufsvereinbarung.

Mengen

Kommen wir zur Gegenüberstellung der im Rahmenvertrag hinterlegten und der bereits abgerufenen Menge, also zum Vergleich, den man direkt in Abb.2 sehen kann. 

 

Schritt 1

Die Lösung ist im Grunde ganz einfach. Schauen wir uns dazu mal an, was im wahren Leben geschieht:

​Wir erhalten eine Anfrage. Diese wäre im CRM wahrscheinlich eine Verkaufs-Chance / Opportunity.

Von dort kommen wir in ein Angebot, das die Kalkulation bzw. den Rahmenvertrag darstellt. Hier können wir die volle Bandbreite des Angebotswesens in Odoo nutzen, sprich Kalkulation und Kommunikation und damit die vollständige Versionierung an einer Stelle.

Sollte es notwendig werden, unterschiedliche Kalkulationen zu erstellen, könnten die Angebote dupliziert und entsprechend separate Berechnungen erstellt werden. Blendet man das „Cost“-Feld mit ein, lassen sich hier auch kalkulatorische Einkaufspreise hinterlegen. Dies hätte zwei Vorteile:

  1. Wir sehen die geplante Marge für den Gesamtauftrag ausgewiesen (prozentual und monetär).
  2. Es gibt einen Vergleichsparameter zum späteren IST oder einen Ausgangswert zum Einkauf.

Wichtig dabei: Sollte es zur Unterschrift des Vertrags kommen, darf das Angebot nicht bestätigt werden: Es muss im Status „Angebot“ bzw. „Angebot versendet“ bleiben, andernfalls erscheint unsere Kalkulation in der Umsatzstatistik. Obendrein würde sie eine Lieferung auslösen und vermutlich sogar deutlich mehr (wie z.B. Meldebestände, Einkaufsanfragen, etc.).

Damit stellt sich die grundsätzliche Frage, wie eine kaufmännische Beauftragung festgehalten wird. Da wir die technische Beauftragung nicht auslösen können, bleibt eine rein kommunikative Lösung, nämlich eine manuelle Bestätigung per E-Mail und eine entsprechende interne Notiz in der Chatterbox.

Sollte es mehrere Versionen des Rahmenvertrags (sprich Angebote) gegeben haben, müssen natürlich alle nicht gezeichneten Vorgänge abgebrochen werden, sonst wird das Bild im Report deutlich verfälscht.
 

​Schritt 2

Der nächste Schritt ist die Überführung der preislichen Bedingungen in eine Preisliste, da alle Abrufe ja die entsprechenden Konditionen enthalten sollten.

Um eine zeitraubende manuelle Anlage zu vermeiden, kann man das Angebot exportieren, in das Importformat einer Preisliste umwandeln und dann als solche importieren.

Das Format erhält man recht einfach durch Export einer bestehenden Preisliste. Das könnte dann so aussehen:

Export Price Conditions(Abb.4)

Wenn es weniger Positionen sind, ist ein manueller Übertrag allerdings womöglich schneller. Dies gilt auch, wenn man noch nicht so oft mit dem Export und Import von Odoo gearbeitet hat.

Wichtig dabei sind zwei Punkte:
  1. die Preisliste muss die Vertragsnummer enthalten und dazu einen sprechenden Namen.
  2. dem Angebot, das den Rahmenvertrag symbolisiert, muss nun als erstes die Preisliste zugewiesen werden. Eine Neuberechnung der Preise sollte NICHT durchgeführt werden.

Der schnelle Abruf von …

Dieser Schritt ist für den einen oder anderen vielleicht optional und kann in unterschiedlicher Form durchgeführt werden. Hier muss man entscheiden, was für die jeweilige Situation die effizienteste und effektivste Lösung ist. Und vielleicht gilt auch hier, dass es nicht die eine Lösung für alle gibt.

Es geht darum, die Abrufe aus dem Rahmenvertrag schnell und möglichst fehlerfrei zu erfassen und zu terminieren.

Die Lösungsoptionen wären Duplizieren des Angebots, Excel-Import und Angebotsvorlagen.

Duplizieren

Der einfachste Weg ist natürlich, das Angebot, das den Rahmenvertrag symbolisiert, aufzurufen und zu duplizieren. Hier werden dann entsprechend die Mengen und Positionen sowie der Liefertermin angepasst.

Die Abrufe können selbstverständlich auch über eine Exceltabelle geladen werden. Dies kann in zwei Anwendungsfällen sogar hilfreich sein:

  • Fall 1) Die Lieferzeitpunkte und Abrufmengen sind Teil des Rahmenvertrags. Dann würde es Sinn machen, sie in Excel anzulegen und darüber ins System zu laden. Damit wären sie gut sichtbar und die Mengen planbar. Mit einer Aktivität versehen, lägen die Termine dem Vertrieb zur Wiedervorlage vor, könnten rechtzeitig noch einmal bestätigt werden und würden damit kontrolliert in die Bedarfsplanung gehen.
  • Fall 2) Die Exceldatei liegt dem Kunden vor und er schickt darüber die benötigten Mengen zu den jeweiligen Produkten. Dies kann nun einfach in Odoo geladen werden. Ebenfalls vorteilhaft an diesem Ansatz ist, dass der Kunde über seinen Portalzugriff die Abrufe schon vorab einsehen und dazu kommunizieren kann.
Angebotsvorlagen

Die letzte Alternative schließt ein wenig am Ansatz des Duplizierens an. Bei dieser Lösung kann eine Angebotsvorlage mit demselben Namen des Rahmenvertrags angelegt werden. Über einen (ähnlich wie die Preisliste aufgebauten) Import könnten die Produkte in die Vorlage geladen werden.

Dies hätte den Vorteil, dass es hier weitere interessante Konfigurationsdetails gibt, die ebenfalls genutzt werden können.

Wie im Bildschirm erkennbar, ist eine abweichende Angebotsgültigkeit, eine Bestätigung über das Portal sowie eine anders formulierte Auftragsbestätigungsmail möglich:

Quotation Template(Abb.5)

Der wohl wesentlichste Punkt findet sich jedoch im letzten Reiter: Diese Option ist kombinierbar mit dem Excel Import.

In Bezug auf die Nutzbarkeit ist dies sicher eine recht komfortable Version. Der Vertrieb sieht auf diese Weise ebenfalls, welche Produkte Teil des Rahmenvertrags sind und welche nicht, nämlich die, die geladen werden.

Hinzu kommt, dass in puncto Nutzerführung das Entfernen von Positionen grundsätzlich schneller und einfacher ist als das Hinzufügen.

Allgemein

Auf jeden Fall wäre zu empfehlen, die Rahmenvertragsnummer und/oder Kostenstelle des Vertrags in die Benennung der Preisliste bzw. Angebotsvorlage zu übernehmen

Damit wären alle Objekte einfacher unter beiden Nummern auffindbar. Sollte der Kunde nicht pro Abruf eine eigene Vorgangsnummer generieren, kann der Vertrieb recht einfach die externe Vertragsnummer sehen und via Copy & Paste in das Feld der Kundenreferenz übernehmen. Damit wäre die Rechnungszuordnung in der Buchhaltung des Kunden ebenfalls einfacher.

Reporting

Kommen wir nun zum letzten Punkt, nämlich der Gegenüberstellung geplanter und bereits abgerufener Mengen innerhalb des Vertrags.

Hierzu geht man im Modul Verkauf / Sales in die Sales Analysis (zu finden unter dem Menüpunkt “Reporting“). In meinem Beispiel bin ich auf die Pivot-Ansicht gewechselt und habe die X-Achse nach “Order Date“ aufgebaut. Auf der Y-Achse finden wir den Kunden, danach die Preisliste und die Produkte.

Beim Status sollten wir einen Filter auf die Aufträge und versendeten Angebote setzen.

Dann schaut das Ganze exemplarisch so aus:

Sales Analysis(Abb.6)

Wir sehen, dass die Umsätze des Kunden „Azure Interior“ aufgegliedert sind in Verkäufe ohne Rahmenvertrag (“Public Price List“) und Verkäufe innerhalb des Rahmenvertrags, hier exemplarisch als “BC-Custome1-1234“ dargestellt.

Die Mengen im Status “Quotation Sent“ sind die Mengen des Rahmenvertrags, die unter “Sales Order“ die abgerufenen Mengen.

Natürlich ist das schon ziemlich vereinfacht abgebildet. In der Realität wäre dies wohl eher die Datenbasis und man würde den nächsten Schritt gehen und das Ganze in ein Spreadsheet überführen. Dies ist seit Odoo 15 problemlos möglich (siehe Reiter “INSERT IN SPREADSHEET“). Von dort ist jede weitere Analyse möglich, wie z.B. die Auswertung nach dem noch zu erwartenden Auftragsvolumen aus dem Vertrag, vielleicht ein prozentualer Vergleich zwischen verbleibender Zeit bis Bindefrist des Vertrags und abgerufener Menge, etc.

Zusammenfassung

Damit wären die uns bekannten Funktionen und Anforderungen an die Abbildung eines verkaufsseitigen Rahmenvertrags im Standard abgebildet. Da die Verträge im Einkauf keine Berichtsansicht oder weitere Analysemöglichkeiten anbieten, kann man vielleicht sogar sagen, dass man mit der dargestellten Abbildung im Verkauf sogar mehr Auswertungsoptionen zur Verfügung hat als mit einem adaptierten Pendant.

Sollte es über die gezeigten Funktionen hinaus weitere Anforderungen geben, so helfen wir gerne in der Recherche.


War dieser Artikel hilfreich? 
Dürften wir Sie bitten, uns eine Bewertung zu Ihren Erfahrungen mit openfellas zu hinterlassen?

​​​​​openfellas bewerten




Sprechen Sie mit unseren Experten.

Wir finden die passende Lösung für Sie!


BERATUNG ANFRAGEN



Implementierungsansatz von openfellas