Idee: Automatisches Toner Bestands- und Bestellsystem

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    mir ist da neulich eine Idee gekommen, als ich in der Firma mal wieder eine Tonerbestellung machen musste, ich frage mich ob es sowas ähnliches schon gibt, auf dem ich ansatzweise aufbauen könnte.

    Ich selbst habe mich schon sehr viel mit der Materie Raspberry beschäftigt (Habe privat aktuell 3x Stück im Einsatz), und habe auch ein wenig rudimentäre Berufsschul-Erfahrung in C++ und Java, was aber schon 8 Jahre her ist. - Anhand von Code-Beispielen kann ich aber viel selbst umsetzen, mir fehlt nur manchmal der richtige Ansatz (und leider häufig auch die Zeit). - Mit Datenbanken habe ich programmiertechnisch bisher noch nie gearbeitet. - Da ich beruflich (System-/Netzwerkadmin & Projektarbeit) stark eingespannt bin, wäre das was jetzt kommt eher ein Wochenend-Hobby-Projekt, auch wenn es letztlich für unsere Firma (und andere?) genial wäre:

    Ist-Zustand:
    Bei uns ist das so: Alle Toner lagern zentral in einem Raum mit 3x großen Wandregalen. Wenn ein Mitarbeiter einen Toner benötigt, nimmt er sich diesen dort einfach aus dem Regal. Ein Mitarbeiter der IT kommt irgendwann dann mal vorbei und guckt was wohl nachzubestellen ist und macht das dann (irgendwann). - Manchmal sind wir leider etwas spät dran, dann geht auch schonmal ein Toner aus, was natürlich immer für Unmut sorgt ;)

    Soll-Zustand:
    Toll wäre doch, wenn ich im Raum bzw. vor die Toner-Regale einen kleinen Monitor mit rückseitig montiertem Raspberry und fest installierten USB-Scanner stelle (z.B. Datalogic Gryphon, den haben wir da), und jeder Mitarbeiter bei der Entnahme eines Toners diesen kurz vor den Scanner hält, und er so aus dem Lagerbestand entfernt wird. Dann legt man noch Bestands-Regeln im Programm fest, so dass der Raspberry mir automatisch eine Bestellmail schickt, über die ich dann nur noch einmal drübergucke um sie dann an unseren Lieferanten als echte Bestellung weiterleite. - Das ganze müsste natürlich eine extrem einfach- und hübschaussehende GUI haben, um auch unerfahrenen/ängstlichen Mitarbeitern die Angst vor einer Fehlbedienung zu nehmen. - Jeder muss es verstehen, ohne dass es ihm jemals erklärt wurde (Von daher werden am besten entsprechende Hinweise wie "jetzt den Barcode vor den roten Scanstrahl halten" auf dem Monitor mit einem erklärenden Bild eingeblendet).

    Ich habe mir auch gedacht, dass ich zwei kleine Bewegungssensoren anbringen könnte, die den Monitor/Scanner erst bei einer erkannten Bewegung an den Regalen einschalten damit dieser nicht Tag- und Nacht läuft und auch eine Google-gestützte-Sprachausgabe könnte bei einer Bewegung an den Regalen ausgelöst werden: "Bitte scannen sie ihre Toner Entnahme ein" (Je ein Bewegungssensor links und rechts vom mittig angebrachten Raspberry, um die ganze Regalwand abzudecken). Natürlich soll die Sprachausgabe nicht bei jeder Bewegung erfolgen sondern z.B. höchstens alle 10 Minuten, damit nicht die ganze Zeit diese Sprach-Meldung kommt wenn jemand länger im Regalbereich hantiert. ;) (Google-Sprachausgabe vom Raspi kriege ich schon jetzt hin ;) )

    Beim Scan kann die Google Sprachausgabe anhand des erkannten Barcodes dann ja z.B. noch sagen "Danke, sie haben einen Toner für einen HP Laserjet vierzig fuenfzig entnommen" und auf dem Monitor wird noch ein Bild vom Drucker und der entnommenen Menge (vielleicht auch die verbleibende Restmenge dieses Toners) angezeigt, damit die Mitarbeiter kontrollieren können ob sie den richtigen Toner für ihren Drucker erwischt haben (Wäre da eine HTML-Seite als Anzeigemöglichkeit sinnvoll, oder würdet ihr das anders lösen?)

    Falls der Mitarbeiter sich bei der Entnahme geirrt und den falschen Toner gescannt hat müssten sie dies dann ja noch abbrechen können (Über einen Hardware Abbrechen-Button). Auch müsste man irgendwie noch ungewollte Doppel-Scans vermeiden/abfangen, was mir selbst z.B. an der Packstation der deutschen Post öfters passiert, ist zum Glück dort auch abgefangen ;)

    Dann müsste noch eine Möglichkeit gefunden werden, wie ein IT-Mitarbeiter den Bestand auf einfache Weise in einer Art versteckten Admin-Modus direkt Vorort im Raum aktualisieren kann, wenn er eine neue Toner-Lieferung einräumt.Vielleicht einfach indem auch der IT-Mitarbeiter die einzelnen Toner wieder "dazuscannt". Vielleicht indem er den Abbrechen-Button 10 Sekunden dauerdrückt und dann im versteckten "Lager auffüllen"-Scanmodus landet, der zubucht statt abzieht. (Auch remote/per Lan sollte der Admin den Bestand korrigieren können, was wohl aber nicht das Problem sein wird)


    Ich freue mich auf euer Feedback, eure Erfahrungen und eure Hinweise. Ich würde das Projekt vermutlich mit Python umsetzen, ich denke um eine Datenbank komme ich nicht herum, um z.B. im Falle eines Stromausfalles die gebuchten Bestände nicht zu verlieren ?

    Einmal editiert, zuletzt von 4eversr (3. Mai 2015 um 23:31)

  • Idee: Automatisches Toner Bestands- und Bestellsystem? Schau mal ob du hier fündig wirst!

  • Hallöle,
    eine durchaus sinnvolle Geschichte, wie ich finde. Und machbar ist das sicherlich.
    Ich würde das in mehrere Stufen aufteilen, denn die Schote mit der Sprachausgabe und dem Bild vom Drucker usw. ist dann imho nur Kosmetik und wird vermutlich auch etwas aufwändiger.
    Mit einer reinen Textausgabe auf den Bildschirm hast m.E. recht schnell ein brauchbares Gerüst, das Du dann nach Deinen/Euren Vorstellungen erweitern kannst.
    Für den Modus zum Einbuchen könnte ich mir auch einen RFID-Leser vorstellen der die berechtigten Transponder IDs aus der Datenbank liest.
    Der Leser liefert ein Signal auf einen Pin ( zumindest wenn Du einen -> solchen <- verwendest ) ... das ist ganz praktisch, denn durch z.B. eines Flags kannst Du relativ einfach das Hauptprogramm verlassen und in eine Unterroutine verzweigen.
    Ein bisschen was zum Thema RFID kannst Du Dir so etwa ab -> hier <- aneignen.
    ... bin gespannt wie das weitergeht.


    cu,
    -ds-

  • Hallo,
    die Sprachausgabe ist ein Kinderspiel, das sind ein paar Zeilen Code, nix wildes. Ansonsten ist die GUI schon sehr wichtig, denn damit steht oder fällt die Akzeptanz bei den Mitarbeitern (und meinem Chef ;) ). Die eigentliche Programmierarbeit was die Datenerfassung angeht ist denke ich nicht wild, aber es sind die vielen kleinen Details die das Projekt für mich schwer machen, z.B. die Geschichte mit den Bewegungsmeldern, die den HDMI-Monitor (und am besten auch den Scanner) an/ausschalten müssen, damit dieser nicht ununterbrochen läuft. - Und das ganze darf natürlich nicht viel Geld kosten: Einen USB-Scanner haben wir da, nen Monitor wir sich auch finden und einen einfachen Hardware-Abbrechen-Knopf kann ich auch noch auftreiben. - Den Raspi müsste die Firma natürlich kaufen, aber das ist mit 40€ (+Netzteil, Gehäuse, SD) ja noch machbar wenn das Projekt durch eine gute GUI überzeugt. - Aber ein RFID-Scanner zum Beispiel kostet vermutlich doch wieder zuviel, wenn es eigentlich gar nix kosten darf ;) (Zumal ich die Hardware erstmal privat besorge) - Da ist vermutlich der geheime Admin-Modus mit Dauerdruck der Abbrechen-Taste besser, oder vielleicht ein "Admin-Barcode", der dann aber auch immer irgendwie verfügbar sein müsste ;)

    Ich finde das Projekt selbst auch sehr spannend und denke dass es viele Leute wiederverwenden könnten, aber ein bißchen sorgen mache ich mir schon, denn ich weiß nicht ob ich es alleine schaffe, da ich wie gesagt kein Programmier-Ass bin ;) - Ich mache sonst eher in Hardware, sprich bin eher der Löt-Guru. :)

    Da die GUI sehr wichtig ist, möchte ich diese gerne von Anfang an ins Auge zu fassen, nicht das ich am Ende eine reine Textmodi-Lösung habe die sich gar nicht so auf eine GUI portieren lässt.

    Einmal editiert, zuletzt von 4eversr (4. Mai 2015 um 00:07)

  • Oh sorry ... ich hatte den Link auf den RFID-Leser vergessen ( -> click <- )
    Kostet als auch nicht die Welt ;)
    Und die -> Transponder <- kosten im Fünferpack auch gerade mal 2 Euro.
    Und bei den PIR-Sensoren bist Du mit etwas mehr als 1 Euro dabei.
    Ein bisschen Relais dazu, das auch -> günstig <- zu bekommen ist.
    Der Rest dürfte Kleinkram sein ...
    Das teuerste an Deinem Projekt dürfte der Monitor sein. Da sollte man aber imho auch nicht sparen, denn
    ich glaube, dass die Optik einen großen Einfluss auf die Akzeptanz hat.

    Code-Schnipsel und Beispiele findest Du hier in rauen Mengen ;)
    also dann ... ans Werk ...
    -ds-

  • Ich habe mir gedacht, wenn alles fertig ist, werde ich versuchen alles ordentlich in einen Medizinschrank wie diesen hier einzubauen, der ist dann auch abschließbar:

    z4SjHhQ.png

    Da sollte man den Raspberry versteckt, und in die Tür dann vielleicht Monitor und ein paar Knöpfe einbauen können (Da hatte ich an solche Vandalismus-Taster mit Leuchtring gedacht, die kann ich dann nämlich auch blinken lassen, wenn sie "aktiv" sind. :)

    Aber das ist ja momentan Zukunftsmusik, solange ich noch keine Lösung für GUI und Datenbank, und Bewegungsmelder-Aktivierung habe. :)

    Einmal editiert, zuletzt von 4eversr (4. Mai 2015 um 06:36)

  • Die Idee mag zwar ganz sinnvoll sein, wird am Ende am Faktor Mensch scheitern. Es wird immer wieder Leute geben, die es einfach "vergessen" die entnommene Packung beim System zu registrieren und alle anderen verlassen sich auf den korrekten Stand im Raspberry.
    Ich würde eher eine andere Lösung wählen, eine die die Eintragung selber vornimmt. In jedem Fach einen Schalter im Fachboden montieren, der gedrückt ist solange mindestens eine Packung Toner dort liegt. Ausserdem jedes Fach mit Beschriftung versehen, damit jeder weiß welcher Toner in welches Fach gehört. Sobald jemand eine letzte Packung nimmt weiß der Raspberry welches Fach leer ist und über eine kleine Verknüpfung kann man festlegen welcher Toner gerade zur Neige geht und Dir dann automatisch eine Nachricht schicken.

    Misteeq

  • Ohne die Firmengröße oder ähnliches zu wissen, gehe ich davon aus, dass nicht jeder seinen Toner scannen wird. Generell kann das System aber ja frühzeitig warnen, wenn also noch X-Verfügbar sind, man hat doch lieber ein paar zu viel als nachher zu wenig. Ich habs in unserer Firma in Sachen Scanner tatsächlich häufig erlebt, dass die (in dem Fall) Waren, nicht immer gescannt wurden und der Lagerbestand nie genau stimmte.

    Zum sonstigen Prinzip:
    Wenn jeder Toner wirklich einen Barcode besitzt, ist das mit dem vorhandenen Scanner normalerweise kein Problem. Genau wie du es gesagt hast, würde ich auf dem Bildschirm lediglich eine "Kurzanleitung" anbringen, die auf einen erfolgreichen Scan hin auf den genauen Typ & die Restanzahl umschwenkt für eine Minute oder ähnliches, damit der Mitarbeiter sich nochmal vergewissern kann. Im Hintergrund läuft z.B. einfach eine MySQL-Datenbank in die der Raspberry das reinschreibt.
    Das Backend sollte aufjedenfall über eine bestimmte IP von außen aufrufbar sein, ich glaube kaum das jemand Lust hat 100 Toner nacheinander einzuscannen wenn er das Regal einräumt. Da kann man einfacher vom Schreibtisch die Datenbank um X-Anzahlen von jedem Toner mit der Tastatur und Maus aufstocken indem man den Lieferschein abtippt.
    Achtung OT: Ganz elegant ist eine OCR-Erkennung des Lieferscheins mit automatischer Datenpflege, dass wäre mein Ansatz aber eher auch nur was für geübte Programmierer die sowas schonmal gemacht haben :P

    Ich habe ein Alarmierungssystem für die Feuerwehr am laufen, welches Daten aus einem Fax zieht. Dieses wird durch Scripte verarbeitet, in eine Datenbank geschrieben und in einer HTML/PHP Seite auf einem Bildschirm im Alarmfall angezeigt. Das soll auch in Zukunft über einen Bewegungsmelder laufen, der Pi läuft bei uns dauerhaft (Stromverbrauch ist ja sehr gering & wir können genau wie du keine Bootzeit gebrauchen), der Bildschirm wird aktuell durch ein Event eingeschaltet und nach einer Zeit X ausgeschaltet. Wenn der Bewegungsmelder da ist, ist dieser der Schalter des Bildschirms, der Pi bleibt dauerhaft an. Ich denke, so sollte man das bei euch auch umsetzen. Ob eine Google-Sprachausgabe bei euch Sinn macht weiß ich nicht, mich persönlich nervt sowas immer (haben das an dem Alarmsystem aber ebenfalls dran, ganz simple Geschichte).

    Also:
    Prüfe ob an jedem Toner ein Strichcode angebracht ist, dieser sollte natürlich nicht identisch sein ;) Dann müsste man eine Datenbank anlegen, welcher Artikel hinter welchem Strichcode steckt und dann steht das grobe System schon fast. Die Auslesung mit dem Scanner macht dann alles weitere, bis dahin ist das Bild ja eigentlich statisch.

    Ich finde die Idee gut und werde dich gerne dabei unterstützen. Falls ihr Probleme mit Diebstahl habt, oder vermutet das sowas passieren könnte, würde ich ebenfalls eine "Entnahmehistorie" einpflegen, die zumindest den Tag und die Uhrzeit mitschreibt. Falls da Nachts immer Toner das Werk verlassen, könnte da etwas dran sein. (Ja, ein Hobbydieb ist nicht immer klug :))

  • Hey JumpY,


    ...
    Wenn jeder Toner wirklich einen Barcode besitzt, ...
    ...


    hat er. Stichwort EAN (Europäische Artikel-Nummer) ;)

    Ach ja, zum Thema "nicht einscannen": dann montiert man innen in der Kammer den Türdrücker ab und macht nur einen Knopf dran.
    Die Tür wird dann vom Raspi mittels Summer geöffnet, und zwar wenn entweder

    • mindestens ein Toner oder
    • eine Karte zum Türöffnen


    eingescannt wurde. Da der Mensch in der Kammer den Toner eh schon in der Hand hat ist es imho naheliegend, dass er den einscannt anstatt noch die Karte rauszufummeln.

    Ja ... die Geschichte mit der konsistenten Bestands-Sicherung hat es in sich :)

    cu,
    -ds-

  • Zwangsmaßnahmen fördern nicht die Akzeptanz und machen das ganze System zu kompliziert. Da wird dann eher etwas in den Türrahmen gepackt, damit die Tür nicht zugeht. Einfach halt das KISS Prinzip (keep ist simple, stupid) beachten und das System automatisch arbeiten lassen. Automatische Erfassung der letzten oder wenn man etwas mehr Sicherheit haben will zusätzlich vorletzten Packung und man hat keinerlei Probleme.

    Misteeq

    Einmal editiert, zuletzt von Misteeq (4. Mai 2015 um 08:59)

  • Mit der Akzeptanz hast Du natürlich recht ...
    Aber ich hätte trotzdem noch einen: jede Toner-Cassette mit einem RFID-Transponder ausstatten und die Antennen des Lesers rechts und links im Türrahmen anbringen.
    Von der -> Reichweite <- her sollte das funktionieren ... und es wäre komplett automatisch.
    Allerdings denke ich auch, dass Dein Ansatz mit dem Schalter ziemlich zuverlässig sein dürfte. Ist halt die Frage inwieweit das dem TE ausreicht.
    cu,
    -ds-

  • Oder man bringt an der Oberseite jedes Faches einen Sensor zur Entfernungsmessung an und kann damit die Höhe des Kartonstapels messen und dadurch den aktuellen Bestand ermitteln. Durch Remotezugriff dann auch jederzeit nachschauen wieviel noch im Lager ist.
    Man könnte das allerdings auch wie einen Ausgabeautomaten bauen, der Anwender wählt auf einem Touchscreen aus für welchen Drucker er Toner braucht und dann gibt der Automat dann das entsprechende Paket aus. Zuverlässige Bestandsübersicht inklusive. :)

    Misteeq

    Einmal editiert, zuletzt von Misteeq (4. Mai 2015 um 10:37)

  • Man, hier kommen ja ne Menge Ideen rein :)


    Ich versuche mal kurz auf alles einzugehen:

    1.) Faktor Mensch / Fachkontakt
    Ja, da hast du grundsätzlich recht, aber einerseits sind unsere Mitarbeiter schon recht gewissenhaft, da die Unternehmenskultur sehr ausgeprägt ist und vorbildlich gelebt wird. So wird bei uns z.B. "Office-Kaizen" praktiziert. - Andererseits denke ich wenn eine Roboterstimme sogar bei einer wahrgenommen Bewegung automatisch daran erinnert "Bitte scannen sie ihre Tonerentnahme ein. Vielen Dank" kann man ja fast ausschließen das es jemand vergisst. - Und das es jemand ganz bewusst/absichtlich nicht macht wird in der Menge wohl nicht vorkommen und dann kaum ins Gewicht fallen. Man könnte aber überlegen ob man den Mitarbeitern selbst die Möglichkeit gibt den Bestand zu korrigieren, wenn sie einen Fehlbestand im System mitbekommen (sozusagen als Service für die IT, muss ja nicht immer umgekehrt sein). MEhr als ca. 12 Toner jeder Sorte sind nämlich nie am Lager, eher weniger. Der Kontakt im Fachboden fällt leider aus, denn wenn das Fach leer ist, dann wäre schon alles zu spät ;) Unser Lieferant benötigt 2-3 Tage bis die Toner da sind, daher muss eigentlich immer noch ein Betand von 4 Tonern jeder Sorte im Lager sein, wenn die Bestellung schon rausgeht. - Falls man Fachkontakte nutzen würde müsste man ja dann den ganzen Schrank/Regale verkabeln, tierischer Aufwand. - Im Prinzip will ich meinen MePIzinschrank mittig hinhängen und Thema durch...

    2.) Firmengröße / Mentalität
    Wir sind ein Familienunternehmen in 3.ter Generation mit etwas über 300 Mitarbeitern. - Wie schon beschrieben eine tolle, ordentliche Unternehmenskultur, so dass man eine bewusste Sabotage/absichtliches Nicht-Scannen eigentlich ausschließen kann. - Da wäre eine Fehlbedienung (z.B. ungewollt doppelt gescannt) eher wahrscheinlich :) - Der Bestand kann dann ja aber vom Admin/IT-Mitarbeiter direkt bei Eingang der neuen Lieferung wieder schnell korrigiert werden. Eine übliche Tonernachlieferung besteht aus gefühlt 20 Tonerkartuschen die von der Menge her ja noch übersichtlich und schnell vom Admin eingescannt werden könnten. Nichtsdestotrotz wäre ein Webinterface über die sich der Admin eine Übersicht verschaffen kann natürlich wünschenswert, z.B. wenn Mitarbeiter einen Falschbestand bemerken und diesen telefonisch melden. - Dann hast du noch gefragt ob an jedem Toner auch ein Barcode dran ist. Da habe ich mir auch schon Gedanken gemacht: Neben den Tonern lagern auch "Resttonerbehälter" oder "Drucker-Heftklammer-Magazine" im Regal, und ich glaube da gibt es Sorten die haben keinen Barcode. Für diesen Fall habe ich mir schon gedacht, dass ich in meinen Medizinschrank eine 5000er Rolle mit fortlaufenden Barcodes einbaue, bei denen der Admin dann frei Artikel definieren kann wenn mal kein Barcode da ist, so dass der Admin sich irgendeinen Barcode nimmt und auf den Karton klebt, diesen einscannt und dem System dann durch Tastendruck/Touchscreen-Druck sagt: Der soeben eingescannte Barcode "459276334" ist auch ein HP4050 Toner, buche diesen zu den anderen, der danach eingescannte Barcode "459276335" ist ein Resttonerbehälter für Develop 452, buche das dorthin. Irgendein Mitarbeiter nimmt sich dann den so hinzugefügten Toner und wird ihn dann irgendwann wieder wegscannen. ;) Da könnte man dann noch eine Plausibillitätsprüfung einbauen, wenn dieser Freiartikel nach 4 Monaten immer noch im System ist bekommt der IT-Azubi eine Mail das er mal prüfen soll ob es noch eine Kartusche mit diesem Barcode im Schrank gibt. (Um solche Freiartikel-Karteileichen auszumerzen) - Thema Diebstahl war bei uns noch kein Thema, ich denke das ist der Vorteil eines Familienunternehmens wo jeder jeden kennt. :)

    3.) Thema Türdrücker
    Einmal macht das die Sache komplizierter und teurer, andererseits stehen in dem Raum wo die Toner lagern auch noch zwei Archiv-Arbeitsplätze, an denen Dokumente eingescannt werden. - Hier ist also mit Publikumsverkehr zu rechnen ;)

    4.) Toner + RFID Transponder
    RFID ist natürlich ein kostentreiber, und es wäre für mich als Admin auch nervig alle Tonerkartons einzeln mit RFID auszustatten, dann doch besser Toner scannen -> einlagern, nächsten Toner scannen und einlagern. - Kurz und schmerzlos...

    5.) Entfernungsmesser für jedes Fach
    An Ultraschall-Entfernungsmesser habe ich auch schon gedacht, allerdings nicht für jedes Fach sondern als Ersatz für einen Bewegungsmelder, da ich nicht weiß wieviel Reichweite ein Bewegungsmelder hat. Schafft er es eine Handbewegung in 2m Entfernung wahrzunehmen (Der Bewegungsmelder würde nur die Hand sehen, nicht die Person) ? - Ultraschall für jedes Fach/jede Tonerart wäre wohl zu teuer und ich bräuchte mehr GPIO Pins ;) - Und ich möchte ungern überall Kabel im Schrank/Regal verlegen. ;)


    Die allerbeste Lösung wäre, der Raspberry fragt alle Unternehmensdrucker ab und sobald ein Drucker meldet "Toner bald leer" schnappt sich eine Ausliefer-Drohne einen Toner und fliegt ihn zum Drucker ;)

    So, wieder zurück zum Thema: Datenbankdesign (1:1; 1:n; n:n)

    Ich war in der Schule schon nicht so toll beim Thema DB-Design, und die Geschichte wird komplexer als ich erst annahm. Welche Tabellen brauche ich wohl?
    - Ein Lieferant kann mehrere verschiedene Toner liefern
    - Eine Tonerart wird immer von nur einem Lieferanten geliefert
    - Ein Farb-Druckermodell benötigt 4x verschiedene Toner (eben alle Farben)
    - Ein bestimmter Toner kann aber auch in verschiedene Druckermodelle passen
    - Eigentlich hätte ein Toner ja einen eindeutigen Barcode, aber wenn ich mit Frei-Artikel-Barcodes anfange, kann ein Toner ja auch verschiedene Barcodes haben (Dessen Bestand aber wieder als ganzes zu sehen wäre, natürlich aber für jede Farbe einzeln).

    Ich glaube ich benötige ja mindestens zwei "Tabellen" (?): Artikel und Lieferanten
    (Dann vielleicht noch eine Weitere für Druckermodelle, wo ich festhalte welche Artikel alle in einen Drucker passen)

    In der Artikeltabelle speichere ich jeden Toner, den Bestand, den Preis und die Lieferanten-ID des Lieferanten für den jeweiligen Toner.

    In der Lieferantentabelle speichere ich wiederum den Namen aller Lieferanten, die Adresse, die Mailadresse und vielleicht einen Bestelltext für die Bestellmail (Und natürlich die Lieferanten-ID).

    In der Druckertabelle die ich vielleicht brauche könnte ich speichern in welchen Drucker welche Toner passen.

    Vielleicht brauche ich auch noch mehr Tabellen ? (z.B. im Bezug auf die Freiartikel mit quasi Zufallsbarcode, sollte man da den Bestand doch noch in extra Tabellen auslagern ?). Es könnte ja der Fall eintreten das man insgesamt 10x 4050 Toner im Lager hat, 8x Stück mit dem Originalbarcode, und zwei 4050 Toner mit jeweils einem selbstdefinierten, quasi zufälligen Barcode, weil der Originalbarcode z.B. beschädigt wurde oder der Karton fehlt.

    Puhhh, da wird es ja schon früh komplex in meinem Projekt... ;) - Ach, wie ging das noch mit dem Datenbankdesign... Da dachte ich in der Schule noch "Das brauchste nie wieder im Leben"

    Ich glaube es ist sinnvoll mal alles in eine Excel-Tabelle einzutragen um dann zu sehen welche Felder eindeutig sind/sich wiederholen ?

  • So, jetzt ist aber Schluss mit deinem editieren, ich schreib immer wieder alles neu :helpnew:

    Ich gehe jetzt ganz einfach von der Barcodemethode aus, die ich persönlich auch bevorzugen würde. Schreibe dir die Sachen die du für wichtig hälst mal in eine Exceltabelle zusammenn und poste ein Bild oder so davon, vielleicht fällt einem was fehlendes auf, oder irgendwas wo man es zusammenfassen kann.

    Eine Tabelle kann ja viele Spalten besitzen, man muss also nicht zwingend viele Tabellen anlegen, ist allerdings übersichtlicher in der DB-Verwaltung. Da das aber kein riesen Ding gibt und du mit einfachen Abfragebefehlen ein "Frontend" basteln kannst, brauchst du ja garnichtmehr an der DB direkt rumfummeln, sondern alles über eine andere Maske wo man selektieren kann.

    Generell ist es nur wichtig zu wissen, wieviele Toner von welchem Typ da sind. Weiterhin wäre es interessant in wieviele Drucker die Toner passen, es ist dringender neue zu bestellen wenn der Toner in 30 Druckern läuft, als wenn nur 3 Drucker überhaupt in Frage kommen. (Nicht verschiedene Druckertypen, sondern tatsächlich in Betrieb befindliche Drucker)

    Schreibe da mal was zusammen, wir sehen uns das dann an :)

  • Hallo,

    sorry für das viele Editieren, aber mir fallen ständig neue Probleme, aber auch Lösungswege ein ;)

    Habe einen Beitrag über deinem nochmal eine Excel-Tabelle als PDF-Anhang drangepackt, die zumindest grob die Thematik darstellt (es sind real natürlich bedeutend mehr Toner und Druckertypen, ich wollte es aber halbswegs übersichtlich für euch halten. In unserem Fall bleibt es zumindest bei 2x verschiedenen Lieferanten).

    In dem rot hinterlegten Feld der PDF habe ich mal den Sonderfall eines "Freiartikel-Barcodes" dargestellt, also ein 4050 Toner der einen anderen Barcode hat, obwohl er zum Bestand des 4050 Toners hinzugerechnet werden muss. Hier muss man wohl noch mit diversen IDs arbeiten, damit man auch ungleiche Barcodes zum selben Tonertyp rechnen kann. (In der Regel ist der Barcode aber schon ziemlich eindeutig, aber es kann Ausnahmen geben) - Allmählich dämmert es mir wieder was das Thema DB-Deign angeht: Ich glaube man muss daher die Artikelart und den Bestand tabellenmäßig trennen, den die Artikelart ist immer "HP4050 Toner", aber da der Barcode abweichen kann, muss der Bestand auch aus verschiedenen Barcodes des "4050 Toners" kumuliert werden.

    Es könnte ja auch den Artikel "Resttonerbehälter ineo +224" geben, der ab Werk gar keinen Barcode besitzt und nach meinem Konzept dann immer mit Zufallsbarcodes beklebt und z.B. per Touchscreen dem Artikel "Resttonerbehälter ineo +224" zugeordnet wird. Dann gäbe es eine Artikelgruppe, die sich aus ganz verschiedenen Barcodes kumulieren muss, eben über eine Gruppen-ID für die Artikelart.

    Nun brauche ich Relationen und Primärschlüssel :)

    Einmal editiert, zuletzt von 4eversr (4. Mai 2015 um 22:18)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!