Zum Inhalt springen

kompliziertere Datenbankstruktur

Erstellt am 4. April 2007 · 6 Antworten · letzte Antwort am 4. April 2007

Tags: Frage

till_ch ·

Hallo Leute

Ich bin gerade dabei eine Extension für die Erfassung von IT-Geräten zu schreiben.

Leider haperts bei mir schon beim Datenbankdesign. Ich hoffe jemand von euch weiss, wie ich das hinkriegen soll:

Es geht darum, dass es einige Informationen gibt, die jedes IT-Gerät betreffen. Da wären z.B. der Eigner, der Standort, der Lieferant, etc...

Dann gibt es aber auch Informationen, die spezifisch zu der Art des Gerätes gehören. Da wären z.B. bei Druckern, ob es ein Laser oder Inkjet Drucker ist, ob er mit 4 Patronen (CMYK) oder 2 (Farbe + Schwarz) arbeitet, ob er Foto-Druck-Fähig ist, etc... Das gleiche Spiel dann natürlich auch für z.B. Scanner (Auflösung, Format, etc..), Computer, etc...

Ich hab mir das so gedacht: Ich mache eine DB-Tabelle mit den Grundinfos. In dieser Tabelle wählt man auch den Gerätetyp (aus einer Selectbox) aus.

Je nach dem, was in dieser Selectbox ausgewählt wurde, erscheint das dazu passende Formular. Also wenn man z.B. Drucker auswählt, erscheint die Eingabemaske für Druckerdetails.

Was haltet ihr von meinem Lösungsweg? Ist das mit dem Typo3 Extension Kickstarter machbar? Wenn ja, vielleicht ein kleiner Tipp wie? Ich hab schon mit Database Relations rumgespielt, bin aber leider zu keinem passenden Ergebnis gekommen.

Oder gibt es vielleicht eine ganz andere Art das Problem anzugreifen und ich sehe einfach den Wald vor lauter Bäumen gar nicht 😉

Vielen Dank schon Mal im Voraus!

MFG
Till_CH

just2b ·

Hallo,

Informationen, die jedes Gerät treffen, kann man in eine eigene Tabelle auslagern und dann eine Relation erstellen. wie wärs damit?

georg

till_ch ·

wow, das war ne schnelle Antwort😉 vielen Dank erstmal!

Du meinst also, genau umgekehrt als ich es gedacht habe. Klingt soweit gut😉

Aber wie kriege ich Typo3 dazu, beide Tabellen in einem Formular darzustellen?

Als Beispiel: Der User erstellt ein neues Element (BSP: Drucker), dazu erscheint ja das Eingabeformular mit allen spezifischen Infos für einen Drucker. Ich möchte jetzt, das im gleichen Formular auch noch die sonstigen Infos(die jedes Gerät treffen) abgefragt werden. Es muss zwar nicht zwingend im gleichen Formular sein, aber im gleichen Arbeitsschritt oder per Reiter im Formular auf jeden Fall.

So wie ich das bis jetzt ausprobiert habe, kann ich zwar eine Referenz erstellen, jedoch immer nur als Selectorbox, aus der man dann einen (oder mehrere) Einträge auswählen kann. Das bedingt jedoch, dass zuvor schon ein Eintrag erstellt wurde. Und es kann doch nicht sein, dass der Editor zuerst alle Details zu Druckern eingeben muss, dann noch die Grundinformationen in einem zweiten Arbeitsschritt und dann als drittes noch die beiden zusammen referenzieren muss?!

Sehr wahrscheinlich, so wie ich Typo3 kenne, liegt der Fehler klar bei mir😉 Darum hoffe ich auf Hilfe😉

Danke nochmals
Till

just2b ·

Hallo,

nun das stimmt im großen und ganzen schon, dass man das vorher erstellen muss (man kann aber auch noch das "Add "Add record" link" aktivieren, dann hat man gleich nen Button zum Erstellen.

Das ganze macht aber nur Sinn, wenn die Daten in einigen&vielen Datensätzen gleich sind, und noch mehr Sinn, wenn man mit dem Wert mehr anstellen will (was nur geht wenn ersteres zutrifft), wie alle Geräte mit dem Eigner xyz anzeigen zu lassen.

Georg

till_ch ·

hmm das heisst also, dass mir schlussendlich nichts anderes bleibt, als ein eigenes Backend-Modul (oder FE-Applikation?) zu entwickeln, dass die nötige Benutzerfreundlichkeit (alles in einem sich dynamisch anpassenden Formular) bietet. Das heisst, ein Formular, dass gleichzeitig in 2 Tabellen einträge macht.

Ich kann von meinen Editoren auf keinen Fall verlangen, dass Sie für die Eingabe 2 Arbeitsschritte benötigen. Ich denke auch, dass bei 1000 und mehr Geräten die Übersichtlichkeit im Backend (im List-Modul) stark leiden würde.

Danke auf jeden Fall für deine Hilfe!

just2b ·

Hallo,

nun die Daten in der relation-Tabelle müssen ja nur 1x gepflegt werden.
Eine Ordnung im BE kann man auch mit einem eigenen Seitenbaum herstellen, also einen sysordner mit den Kategorien/Relations und dann Ordner mit den "richtigen" Datensätzen.

Ein eigenes BE-Modul erlaubt einem natürlich da viel mehr Freiheit, weil da kann man dann einfach alles machen was man in php kann, ob jetzt irgendwelche ajax-Dinge mit autocomplete usw sind dort kein Problem mehr.

Ob im FE oder im BE musst dann du wissen.

viel erfolg
georg

till_ch ·

danke für die vielen Tipps!

Da meine Editoren sowieso lieber im FE editieren, werde ich mal versuchen eine schöne FE-Applikation mit allem Schnickschnack (vielleicht werde ich mich ja sogar an ajax ran trauen) zu entwickeln!🙂

till