Vorbereitungen
Odoo kontrollieren
Auf https://erp-test.oct.re sollte Odoo unter Verwendung der Datenbank schnittstelle-erste-iteration
erreichbar sein. Kontrolle durch Blick auf https://erp-test.oct.re/web/database/manager. (Die Datenbank ist auf tuedfed-tat40web.srv.mwn.de
in /etc/odoo/odoo.conf
festgelegt, und mit dieser Config startet der Service).
Die DB sollte in einem Zustand sein, wo
- Der Racer in der einfachsten Variante über Stückliste, Arbeitsauftrag und automatische Aufstockung verfügt
- Vom Racer in der einfachsten Variante kein Exemplar vorrätig bzw. als bald vorrätig prognostiziert ist (zum Beispiel aus make-to-stock Aufträgen, die man im Fertigungsmodul erteilt hat)
- Von den Einzelteilen der Stückliste genügend vorhanden ist (also nicht alles durch Rumspielen im Fertigungsmodul verbraucht)
- Max Mustermann als Kunde existiert
Skripte starten
Auf tuedfed-tat40web.srv.mwn.de
die Skripte starten, und zwar am besten in zwei sichtbaren Fenstern um etwaige Fehlermeldungen sofort mitzukriegen.
python3 /home/joachim/industrie4.0/Odoo-SLF-Verbindung/slf_to_odoo.py
python3 /home/joachim/industrie4.0/Odoo-SLF-Verbindung/odoo_to_slf.py
SLF zurücksetzen
Im Trainer Interface zurücksetzen, falls noch eine Produktion vorbereitet ist: http://10.162.111.159:8080/ Dadurch wird das aktuelle Szenario beendet und mit ihm alle zwischenzeitlich über die Schnittstelle geschickten Aufträge weggeräumt
Browser-Fenster vorbereiten
Entweder mit Admin-Konto alles machen, oder zwei getrennte Sessions (Inkognito-Fenster, mit dem Surface in Edge erst mal testen ob Tabs reichen) mit Max Mustermann zum Bestellen und Admin zur Weiterverarbeitung
Falls nicht vor Ort: pgAdmin für SLF-DB starten
Nur nötig für virtuelle Demo, d. h. wenn man nicht vor Ort die Kisten durchschieben kann um den Fertigungsstatus zu verändern. Auf Workstation (Host, nicht VM) mit Benutzer DigiLLab
pgAdmin öffnen.
Durchführen
SLF vorbereiten und sichtbar machen
- Im Trainer Interface Produktion vorbereiten: http://10.162.111.159:8080/
- Dashboard öffnen: http://10.162.111.159:3000/d/zaRwSgS7k/lab-main-dashboard?orgId=1&refresh=1s&kiosk&var-plant_id=3 und dort zur Auftragsliste scrollen
a) Make to Stock
- Odoo öffnen https://erp-test.oct.re (damit die hübsche Webseite zumindest kurz sichtbar ist)
- Modul "Manufacturing" öffnen
- "Create"
- Bei "Product" "Racer" eingeben und ersten Vorschlag (ist die einfachste Produktvariante) anklicken. Der Name der zugehörigen Stückliste erscheint in "Bill of Material", und diese legt auch ein Work Order fest, ohne das der ganze Workflow nicht geht (Skript versucht, Work Order zu starten; ohne BOM/Work Order kann kein Materialverbrauch berechnet werden und dann müsste man Dialoge durchklicken, was nicht per API geht)
- "Confirm"
- Im SLF-Dashboard zeigen, dass der entsprechende neue Fertigungsauftrag angelegt worden ist mit Status "Ready" (und Auftragsnummer
PO-IND-XXXX
für SQL-Update notieren) - Falls vor Ort: Produktion starten und Auftrag durchs Eingangslager ziehen. Falls remote oder wenig Zeit: In pgadmin den SLF-Status eins weiter setzen durch
update production_order set state='Running' where name='PO-IND-XXXX';
- Im SLF-Dashboard auf neuen "Status" hinweisen und Seite in Odoo neu laden und auf Zustand "In Progress" hinweisen; ggf. zusätzlich Reiter "Work Orders" öffnen
- Falls vor Ort: Produktion durch alle Stationen ziehen bis fertig. Falls remote oder wenig Zeit: In pgadmin den SLF-Status eins weiter setzen durch
update production_order set state='Completed' where name='PO-IND-XXXX';
- Im SLF-Dashboard auf neuen "Status" hinweisen und Seite in Odoo neu laden und auf Zustand "To Close" hinweisen; runterscrollen um die Einträge von SLF-Odoo-Interface im Log anzuzeigen.
- Wenn unvermeidbar: Auf "Mark as done" und mit der Fehlermeldung leben
b) Make to Order
- Kundensicht: Odoo öffnen https://erp-test.oct.re
- Bestellung aufgeben für billigsten Racer (gemäß Default, also jede Auswahl ganz links lassen)
- Mitarbeitersicht: Odoo mit Admin-Konto öffnen
- Den gerade erteilten Auftrag von Max Mustermann öffnen, vergewissern dass prognostizierte verfügbare Menge null ist (rotes Symbol) und bestätigen
- Modul "Manufacturing" öffnen, dort zeigen unter welchem Namen
WH/MO/...
der zugehörige Fertigungsauftrag angelegt wurde, und hinweisen auf die Quelle "Replenishment Report" - Im SLF-Dashboard zeigen, dass der entsprechende neue Fertigungsauftrag angelegt worden ist mit Status "Ready".
- Falls vor Ort: Produktion starten und Auftrag durchs Eingangslager ziehen. Falls remote oder wenig Zeit: In pgadmin den SLF-Status eins weiter setzen durch
update production_order set state='Running' where name='PO-IND-XXXX';
- Im SLF-Dashboard auf neuen "Status" hinweisen ("Paused) und Seite in Odoo neu laden und auf Zustand "In Progress" hinweisen; ggf. zusätzlich Reiter "Work Orders" öffnen
- Falls vor Ort: Produktion durch alle Stationen ziehen bis fertig (dabei zeigen, dass die richtige Konfiguration übermittelt wurde). Falls remote oder wenig Zeit: In pgadmin den SLF-Status eins weiter setzen durch
update production_order set state='Completed' where name='PO-IND-XXXX';
(die Richtigkeit der Konfiguration kann im MES gezeigt werden) - Im SLF-Dashboard auf neuen "Status" hinweisen und in Odoo Seite des MO öffnen bzw. Seite des MO neu laden (Obacht: nicht Listenansicht neu laden, dann verschwindet das wegen "To Do"-Filter) und auf Zustand "Done" hinweisen; runterscrollen um die Einträge von SLF-Odoo-Interface im Log anzuzeigen.