SlideShare ist ein Scribd-Unternehmen logo
Beschaffung von Gefahrstoffen/
Laborbedarf und Gefahrstoffkataster
an der Universität des Saarlandes
Andreas Jung

www.zopyx.de

info@zopyx.com
Plone Tagung

März 2018, Berlin
/me
• 25 Jahre Python, 15 Jahre Plone

• Web-Applikationen

• Content-Management

• Electronic Publishing Lösungen

• Individual-Software

• Lösungen im Bereich Industrie 4.0
Agenda
• Einführung in die Thematik

• Webshop für Chemikalien und Gefahrenstoffe

• Gefahrstoffkataster
Webshop
Zentrales Chemikalienlager
Aufgaben des ZCHL 

(zentrales Chemikalienlager)
• schnelle und ökonomische Beschaffung von Chemikalien,
Gefahrstoffen, Gasen und Laborbedarf

• sachgerechte Lagerung unter Berücksichtigung der vielen
gesetzlichen Auflagen des Gefahrstoffrechts.

• Großmengeneinkauf → hohe Rabatte

• 700 Lagermaterialien, 2000 Angebote

• Individuelle Preis-/Materialanfragen
ZCHL Webshop (alt)
• Plone 3 basiertes System

• Sehr langsam für den Anwender (30-50 Sekunden/Request)

• Sehr langsames Auftragsmanagement

• Instabil, irgendwann unbrauchbar

• Sehr spezielle Businesslogik und Projektanforderungen
ZCHL Webshop (neu)
• Reimplementierung mit Plone 4.3, Dexterity

• Online seit Anfang 2017

• Inhaltstypen:

• Kunde

• Material

• Bestellung

• Position

• Gefahrstoff
Material und Datenquellen
Plone
Lagermaterial

SAP
Angebot Hersteller 1
Angebot Hersteller X
CSV
EXCEL
EXCEL
Bestellvorgang
Auftragsmanagement
Gefahrstoffkataster
WAS steht WO
und WIEVIEL?
• Schnelle Information der Einsatzkräfte 

über mögliche Gefahrstoffe
Mit WELCHEN Stoffen hatte
ein Mitarbeiter Umgang?
• Fürsorgepflicht des Arbeitgebers

• Nachweispflichten bei Gesundheitsschädigungen

• Regulatorische Vorgaben
Material und Datenquellen
Plone
Bestellungen
ArangoDB
ZCHL Webshop Gefahrstoffkataster
ArangoDB
• Multi-Model NoSQL Datenbank (Key-Value, Document, Graph)

• Transaktionen

• Replikation

• AQL (Arango Query Language)

• Binar-Protokoll und REST-API

• Analytics-Funktionalitäten

• „The hunt for the right NoSQL databases“: 

https://www.youtube.com/watch?v=Fi8oO_MkkWo
Warum nicht ZODB/ZCatalog?
• ca. 100.000 Datensätze

• Massenaktualisierungen sind langsam

• ZODB/ZCatalog zu unflexibel bzgl. 

• Filterung

• Aggregation

• Alternative DB Option: Postgres
Katasterdatensatz
• Gebäude

• Etage

• Raum

• CAS Nummer (Standard für Gefahrtstoffe)

• Menge + Einheit

• Referenz auf Käufer, Bestellung
• Degressive Abschreibung bei
Verbrauchsmaterialen

• Kunde wählt zwischen automatischer
Abschreibung oder manueller Pflege des
„eigenen“ Katasters

• Datenaggregation für Feuerwehr

• Einzelansicht für ZCHL Kunden,
Betriebsarzt, Kataster-Admin
• Gebäude, Etage, Raum

• Gefahrstoff als CAS-Nummer

• Menge + Einheit (normiert)

• Referenzen auf 

• Käufer

• Bestellung

• Abschreibungshistorie
• Gebäude

• Etage

• Raum

• CAS Nummer (Standard für Gefahrtstoffe)

• Menge + Einheit

• Referenz auf Käufer, Bestellung
Ansichten (Aggregation)
• Gebäude

• Etage

• Raum

• CAS Nummer (Standard für Gefahrtstoffe)

• Menge + Einheit

• Referenz auf Käufer, Bestellung
Ansichten (Bearbeiten)
• Gebäude

• Etage

• Raum

• CAS Nummer (Standard für Gefahrtstoffe)

• Menge + Einheit

• Referenz auf Käufer, Bestellung
Ansichten (Einzel)
Kataster-Realisierung
• Alle Ansichten via datatables.net

• + kommerzielle datatables.net Editor-Komponente

• Flexible Sortierung und Filterung

• Export nach CSV, PDF, Excel, Print

• sehr viele Plugins verfügbar

• Integriert in Plone als Browser-Views

• Datenaustausch zwischen Plone und ArangoDB und datatables.net via
JSON
Zusammenfassung
•Plone als (sehr) kostengünstige Alternative zu kommerziellen Lösungen (SAP)

•Agile Software-Entwicklung ist auch mit Universitäten möglich

•Shop und Auftragsmanagement sind sehr performant und stabil 

→ hohe Zufriedenheit bei ZCHL Kunden/Mitarbeitern

•Folgeprojekt geplant: Einkaufsportal für den allgemeinen Geschäftsbedarf
•Dexterity/ZODB/ZCatalog ungeeignet

•bei Massendaten/-aktualisierungen

•komplexe Filterung und Aggregation

•datatables.net: sehr flexibel, viele Features, komplex und öfters merkwürdig

Weitere ähnliche Inhalte

Mehr von Andreas Jung

Plone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST APIPlone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST API
Andreas Jung
 
Generierung von PDF aus XML/HTML mit PrintCSS
Generierung von PDF aus XML/HTML mit PrintCSSGenerierung von PDF aus XML/HTML mit PrintCSS
Generierung von PDF aus XML/HTML mit PrintCSS
Andreas Jung
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
Andreas Jung
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
Andreas Jung
 
The Plone and The Blockchain
The Plone and The BlockchainThe Plone and The Blockchain
The Plone and The Blockchain
Andreas Jung
 
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCsContent Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Andreas Jung
 
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
Andreas Jung
 
Why we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL DatabaseWhy we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL Database
Andreas Jung
 
XML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.comXML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.com
Andreas Jung
 
PyFilesystem
PyFilesystemPyFilesystem
PyFilesystem
Andreas Jung
 
Building bridges - Plone Conference 2015 Bucharest
Building bridges   - Plone Conference 2015 BucharestBuilding bridges   - Plone Conference 2015 Bucharest
Building bridges - Plone Conference 2015 Bucharest
Andreas Jung
 
CSS Paged Media - A review of tools and techniques
CSS Paged Media - A review of tools and techniquesCSS Paged Media - A review of tools and techniques
CSS Paged Media - A review of tools and techniques
Andreas Jung
 
Integration of Plone with eXist-db
Integration of Plone with eXist-dbIntegration of Plone with eXist-db
Integration of Plone with eXist-db
Andreas Jung
 
Plone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocksPlone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocks
Andreas Jung
 
Why Plone Will Die
Why Plone Will DieWhy Plone Will Die
Why Plone Will Die
Andreas Jung
 
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
Andreas Jung
 
Produce & Publish Cloud Edition
Produce & Publish Cloud EditionProduce & Publish Cloud Edition
Produce & Publish Cloud Edition
Andreas Jung
 
zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013
Andreas Jung
 
Onkopedia - ein medizinisches Fachportal auf Basis von Plone
Onkopedia  - ein medizinisches Fachportal auf Basis von PloneOnkopedia  - ein medizinisches Fachportal auf Basis von Plone
Onkopedia - ein medizinisches Fachportal auf Basis von Plone
Andreas Jung
 
Pragmatische Plone Projekte
Pragmatische Plone ProjektePragmatische Plone Projekte
Pragmatische Plone Projekte
Andreas Jung
 

Mehr von Andreas Jung (20)

Plone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST APIPlone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST API
 
Generierung von PDF aus XML/HTML mit PrintCSS
Generierung von PDF aus XML/HTML mit PrintCSSGenerierung von PDF aus XML/HTML mit PrintCSS
Generierung von PDF aus XML/HTML mit PrintCSS
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
 
The Plone and The Blockchain
The Plone and The BlockchainThe Plone and The Blockchain
The Plone and The Blockchain
 
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCsContent Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
 
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
 
Why we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL DatabaseWhy we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL Database
 
XML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.comXML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.com
 
PyFilesystem
PyFilesystemPyFilesystem
PyFilesystem
 
Building bridges - Plone Conference 2015 Bucharest
Building bridges   - Plone Conference 2015 BucharestBuilding bridges   - Plone Conference 2015 Bucharest
Building bridges - Plone Conference 2015 Bucharest
 
CSS Paged Media - A review of tools and techniques
CSS Paged Media - A review of tools and techniquesCSS Paged Media - A review of tools and techniques
CSS Paged Media - A review of tools and techniques
 
Integration of Plone with eXist-db
Integration of Plone with eXist-dbIntegration of Plone with eXist-db
Integration of Plone with eXist-db
 
Plone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocksPlone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocks
 
Why Plone Will Die
Why Plone Will DieWhy Plone Will Die
Why Plone Will Die
 
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
Onkopedia - Ein medizinisches Leitlinienportal auf dem Weg zu XML-basierten P...
 
Produce & Publish Cloud Edition
Produce & Publish Cloud EditionProduce & Publish Cloud Edition
Produce & Publish Cloud Edition
 
zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013
 
Onkopedia - ein medizinisches Fachportal auf Basis von Plone
Onkopedia  - ein medizinisches Fachportal auf Basis von PloneOnkopedia  - ein medizinisches Fachportal auf Basis von Plone
Onkopedia - ein medizinisches Fachportal auf Basis von Plone
 
Pragmatische Plone Projekte
Pragmatische Plone ProjektePragmatische Plone Projekte
Pragmatische Plone Projekte
 

Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefahrstoffkataster

  • 1. Beschaffung von Gefahrstoffen/ Laborbedarf und Gefahrstoffkataster an der Universität des Saarlandes Andreas Jung www.zopyx.de info@zopyx.com Plone Tagung März 2018, Berlin
  • 2. /me • 25 Jahre Python, 15 Jahre Plone • Web-Applikationen • Content-Management • Electronic Publishing Lösungen • Individual-Software • Lösungen im Bereich Industrie 4.0
  • 3. Agenda • Einführung in die Thematik • Webshop für Chemikalien und Gefahrenstoffe • Gefahrstoffkataster
  • 5. Aufgaben des ZCHL 
 (zentrales Chemikalienlager) • schnelle und ökonomische Beschaffung von Chemikalien, Gefahrstoffen, Gasen und Laborbedarf • sachgerechte Lagerung unter Berücksichtigung der vielen gesetzlichen Auflagen des Gefahrstoffrechts. • Großmengeneinkauf → hohe Rabatte • 700 Lagermaterialien, 2000 Angebote • Individuelle Preis-/Materialanfragen
  • 6. ZCHL Webshop (alt) • Plone 3 basiertes System • Sehr langsam für den Anwender (30-50 Sekunden/Request) • Sehr langsames Auftragsmanagement • Instabil, irgendwann unbrauchbar • Sehr spezielle Businesslogik und Projektanforderungen
  • 7. ZCHL Webshop (neu) • Reimplementierung mit Plone 4.3, Dexterity • Online seit Anfang 2017 • Inhaltstypen: • Kunde • Material • Bestellung • Position • Gefahrstoff
  • 8. Material und Datenquellen Plone Lagermaterial
 SAP Angebot Hersteller 1 Angebot Hersteller X CSV EXCEL EXCEL
  • 10.
  • 13.
  • 14. WAS steht WO und WIEVIEL? • Schnelle Information der Einsatzkräfte 
 über mögliche Gefahrstoffe
  • 15.
  • 16. Mit WELCHEN Stoffen hatte ein Mitarbeiter Umgang? • Fürsorgepflicht des Arbeitgebers • Nachweispflichten bei Gesundheitsschädigungen • Regulatorische Vorgaben
  • 18. ArangoDB • Multi-Model NoSQL Datenbank (Key-Value, Document, Graph) • Transaktionen • Replikation • AQL (Arango Query Language) • Binar-Protokoll und REST-API • Analytics-Funktionalitäten • „The hunt for the right NoSQL databases“: 
 https://www.youtube.com/watch?v=Fi8oO_MkkWo
  • 19. Warum nicht ZODB/ZCatalog? • ca. 100.000 Datensätze • Massenaktualisierungen sind langsam • ZODB/ZCatalog zu unflexibel bzgl. • Filterung • Aggregation • Alternative DB Option: Postgres
  • 20. Katasterdatensatz • Gebäude • Etage • Raum • CAS Nummer (Standard für Gefahrtstoffe) • Menge + Einheit • Referenz auf Käufer, Bestellung • Degressive Abschreibung bei Verbrauchsmaterialen • Kunde wählt zwischen automatischer Abschreibung oder manueller Pflege des „eigenen“ Katasters • Datenaggregation für Feuerwehr • Einzelansicht für ZCHL Kunden, Betriebsarzt, Kataster-Admin • Gebäude, Etage, Raum • Gefahrstoff als CAS-Nummer • Menge + Einheit (normiert) • Referenzen auf • Käufer • Bestellung • Abschreibungshistorie
  • 21. • Gebäude • Etage • Raum • CAS Nummer (Standard für Gefahrtstoffe) • Menge + Einheit • Referenz auf Käufer, Bestellung Ansichten (Aggregation)
  • 22. • Gebäude • Etage • Raum • CAS Nummer (Standard für Gefahrtstoffe) • Menge + Einheit • Referenz auf Käufer, Bestellung Ansichten (Bearbeiten)
  • 23. • Gebäude • Etage • Raum • CAS Nummer (Standard für Gefahrtstoffe) • Menge + Einheit • Referenz auf Käufer, Bestellung Ansichten (Einzel)
  • 24. Kataster-Realisierung • Alle Ansichten via datatables.net • + kommerzielle datatables.net Editor-Komponente • Flexible Sortierung und Filterung • Export nach CSV, PDF, Excel, Print • sehr viele Plugins verfügbar • Integriert in Plone als Browser-Views • Datenaustausch zwischen Plone und ArangoDB und datatables.net via JSON
  • 25. Zusammenfassung •Plone als (sehr) kostengünstige Alternative zu kommerziellen Lösungen (SAP) •Agile Software-Entwicklung ist auch mit Universitäten möglich •Shop und Auftragsmanagement sind sehr performant und stabil 
 → hohe Zufriedenheit bei ZCHL Kunden/Mitarbeitern •Folgeprojekt geplant: Einkaufsportal für den allgemeinen Geschäftsbedarf •Dexterity/ZODB/ZCatalog ungeeignet •bei Massendaten/-aktualisierungen •komplexe Filterung und Aggregation •datatables.net: sehr flexibel, viele Features, komplex und öfters merkwürdig