Office: (Office 2010) leeres Formular

Helfe beim Thema leeres Formular in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi, Also ich habe mir gestern und heute intensiv Gedanken über den Aufbau der Datenbank gemacht, aber jedes Mal wenn ich denke eine Lösung gefunden zu... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Blockbuster, 15. Oktober 2013.

  1. leeres Formular


    Hi,

    Also ich habe mir gestern und heute intensiv Gedanken über den Aufbau der Datenbank gemacht, aber jedes Mal wenn ich denke eine Lösung gefunden zu haben, funktioniert wieder irgendetwas nicht. Ich habe versucht eure Ratschläge umzusetzen, erfolglos.

    Können wir vielleicht nochmal bei 0 anfangen? Viel weiter bin ich nämlich momentan auch nicht *frown.gif*

    Ich bin ein Hersteller von Baggern.
    Bagger bestehen aus 4 Teilen: Räder, Motor, Schaufel und Gehäuse.
    Natürlich gibt es verschiedene Räder, verschiedene Motoren, verschiedene Schaufeln und verschiedene Gehäuse und jede Kombination ist möglich (also jedes Rad kann mit jedem Motor, mit jeder Schaufel und mit jedem Gehäuse kombiniert werden). Die Kombination daraus gibt den fertigen Bagger.

    Für die Datenbank hat jedes Teil eine eindeutige Nummer, mit der es identifiziert werden kann. Es gibt die Rad_NR, die Motor_NR, die Schaufel_NR und die Gehäuse_NR. Die Teile haben noch ein paar Eigenschaften, das ist alles in der NR verankert. Man braucht also nicht mehr als die NR zur Unterscheidung der Räder, ... . Der fertige Bagger selbst hat noch ein paar Eigenschaften, die aber für die Teile nicht wichtig sind (z.B. Fahrer, Aufkleber,..)

    Jedes der Räder, jeder Motor, jede Schaufel und jedes Gehäuse hat einen eigenen Preis. Je mehr ich davon herstelle, desto geringer sind dabei logischerweise meine Kosten. Gehen wir mal davon aus, dass alle Teile die gleiche Staffelung haben, aber andere Preise. Staffelung: 1-5, 6-10, 11-15, 16-20.

    Was soll die Datenbank können:
    Es muss mir anfangs möglich sein aus den verschiedenen Teilen einen fertigen Bagger zu erstellen. Diese von mir gewählte Kombination soll in einer Tabelle abgespeichert werden und erhält eine Bagger_ID
    Weiterhin hätte ich gerne, dass mir die Preise der Einzelteile gestaffelt angezeigt werden und zusammengerechnet werden.
    Code:
    Möglichst soll diese Kalkulation in einem Formular statt finden und zumindest so weit mit der Bagger Tabelle in Verbindung stehen, sodass ich in diesem Kalkulationsformular einfach durch die Datensätze scrolle und mir dann im Formular zur ausgewählten Bagger_ID die Preise dessen Einzelteile angezeigt werden. Das Formular dient also zur Herstellungskostenermittlung.

    Wieviele Tabellen soll es geben? Was sollen diese Tabellen beinhalten? Kann ich alle Teile in einer Tabelle führen oder muss ich für jedes Teil eine eigene Tabelle erstellen? Kann ich alle Preise in einer Tabelle unterbringen? Wie sollen die Tabellen miteinander in Beziehung stehen? Welches Feld wird zum PK?
    Das sind alles Fragen die es zu klären gibt. Und dabei bräuchte ich eure Hilfe, da ich noch nie zuvor eine Datenbank erstellt habe.
    Ich sehe ein, dass ich viel zu voreilig war mit den ersten Versuchen. Ich war euphorisiert von kleinen Erfolgen, sodass ich alles überstürzt habe. Damit habe ich hier für viel Verwirrung gesorgt und möchte mich auch nochmal in aller Form entschuldigen.
     
    Blockbuster, 17. Oktober 2013
    #31
  2. Meine anfängliche Idee:
    -eine Tabelle für den Bagger (Tbl_Bagger), in der die Kombination der Teile festgehalten wird
    -eine Tabelle für jedes Bauteil (Tbl_Räder,Tbl_Motor,Tbl_Schaufel,Tbl_Gehäuse), in der die verschiedenen Teile unter der ihr zugehörigen Nummer (R_NR, M_NR, S_NR, G_NR) aufgeführt sind
    -eine Preistabelle für jedes Bauteil (= 4)

    Im Prinzip sehen die Preistabellen ähnlich aus wie die Bauteiltabellen. In den Bauteiltabellen werden aber noch technische Details geführt, aus denen sich die NR zusammensetzt. Anhand der NR ist jedoch eindeutig klar, welche technischen Details das Teil besitzt, weswegen sie in der Preistabelle nicht aufgelistet sind. Diese Preistabellen beinhalten lediglich die NR (Bauteiltabelle als PK, Preistabelle als FK), die Staffelung und den Preis.

    In der Tbl_Räder ist der PK die R_NR, in der TBL_Motor ist der PK die M_NR, usw.
    In der Tbl_Bagger ist der PK die BaggerID und ausserdem erhält sie die R_NR, M_NR, S_NR und die G_NR von den jeweiligen Bauteiltabellen als Fremschlüssel übergeben.
    Die Preistabellen erhalten ebenso wie die Tbl_Bagger die R_NR, M_NR, S_NR und die G_NR von den jeweiligen Bauteiltabellen als Fremschlüssel übergeben.

    Was ich bisher herausgefunden habe (dank euch), ist, dass es Blödsinn ist 4 verschiedene Preistabellen zu führen und dass es für die ganze Datenbank am Einfachsten ist, wenn alle Preise in einer Tabelle geführt werden.
    Also bietet sich eine Tabelle an, die in etwa so aussieht:
    Code:
     
    Blockbuster, 17. Oktober 2013
    #32
  3. Hi,
    so wie dargestellt sollten 4 Grund-Tabellen reichen:
    tblBagger, tblBauTeil, tblBaggerBauteil, tblBauteilPreis.
    • tblBagger
      BaggerID (Autowert), BaggerNr, Sonstiges
    • tblBauteil
      BauteilID (Autowert), BauteilNr, BauteilArt (Rad, Schaufel, ...), Sonstiges
    • tblBaggerBauteil (m:n Tabelle)
      BagBauID (Autowert), FKBagger, FKBauteil, AnzahlBauteil
    • tblBauteilPreis
      BauPreisID (Autowert), FKBauteil, AnzahlVon, AnzahlBis, Preis
    Die Verknüpfung findet dann jeweils über die ID und die mit FK gekennzeichneten Fremdschlüsselfelder statt.

    maike
     
  4. leeres Formular

    Hallo maike,
    Danke für deine Antwort. Wundere dich bitte nicht, ich habe die Beiträge nachträglich überarbeitet.
    Ich werde versuchen deinen Vorschlag umzusetzen. Mir ist allerdings nicht ganz klar, was die tblBaggerBauteil macht bzw wofür die da ist

    EDIT: okay, sorry, das ist die Tabelle für die Zusammenstellung. In der tblBagger werden nur die Eigenschaften geführt, die ich vorhin erwähnte

    Aber andere Frage: in der tblBauteil führe ich alle Bauteile? Also unabhängig davon, ob es ein Rad,Motor,Schaufel oder Gehäuse ist?
    Und: kann ich dann in der tblBaggerBauteil nicht immer nur 1 Bauteil pro Datensatz einfügen? Bei dieser Tabelle kann ich mir gerade den Aufbau nicht richtig visualisieren
     
    Blockbuster, 17. Oktober 2013
    #34
  5. Würde ich so machen. Wenn du später mal auch noch GPS-Systeme, Rundum-Leuchten und was weiß ich an deine Bagger bauen willst, musst du die dann nur in diese Tabelle eintragen und fertig. Alles andere würde zu aufwändigen Umstrukturierungen der DB führen. Wenn du ein Feld mit der Bauteilart mitführst, kannst du beim Zusammenbau Kombifelder nutzen, die du entsprechend filterst.
    Was mir noch nicht ganz klar ist, ist die Kalkulation/Preisstaffel.
    Ein Bagger braucht ja wohl mehr als ein Rad, aber nur ein Gehäuse, Motor ...
    Ist dieser "Bagger" mehr als eine Art Modell zu sehen? Zu kalkulieren wäre dann der Bau von 1 bis unendlich viele Bagger?
    Zu deiner letzten Frage, vielleicht hilft das hier bei der Visualisierung:
    DBWiki m:n Beziehung
    maike
     
  6. Ja, das ist ein Modell. Ich habe ca 1 Stunde an einem Beispiel getüftelt, wie ich die Artikelstruktur erklären kann, ohne zuviel über den Betrieb zu verraten.

    Und ja, theoretisch sollte man unendlich Bagger kalkulieren können. In der Praxis ist die Zahl jedoch auf einen niedrigen vierstelligen Betrag beschränkt. Aber es kann immer sein, dass einer dieser "Bagger" wegfällt und/oder ein neuer hinzukommt.

    Da hast du vollkommen Recht. Von machen Teilen braucht es eine gewisse Stückzahl. Diese Stückzahl sollte möglichst in der Zusammenstellungs-Tabelle mitgeführt werden und auch eingegeben werden können, weil auch diese Stückzahlen von Bagger zu Bagger variieren (blödes Bsp aber ein Bagger braucht 4 Räder, ein anderer 10 z.B.)
     
    Blockbuster, 18. Oktober 2013
    #36
  7. Vielleicht noch kurz zur Erklärung:
    Ziel ist es alle momentan existierenden Kombinationen abzuspeichern, einmal durchkalkulieren lassen und im Nachhinein, falls so eine Bestellung wieder auftritt, sich die Kalkulation anzusehen und eventuell etwas mit Rabatten rumzuspielen (sagen wir ein Freund will ein bestehendes Modell eines Baggers kaufen und weil wir uns schon Jahre kennen will ich ihm nun 10% auf die Schaufel und 5% auf die Räder geben. Dann soll mir die DB den neuen Preis zwar anzeigen, aber nicht in der Datenbank ändern. Die Rabatte sollen also nur temporär und bei Bedarf kalkuliert werden)
     
    Blockbuster, 18. Oktober 2013
    #37
  8. leeres Formular

    Dann solltest du vielleicht auch in der Preistabelle ein Gültigkeitsdatum mitführen, die Preise sind ja nicht unveränderlich und so kannst du eine frühere Kalkulation nachvollziehen.
    maike
     
  9. Genau *Smilie
    Die Preise können mit der Zeit ja auch variieren z.B. wenn ein Zulieferer seine Preise erhöht/senkt. Desshalb möchte ich sehen zu welchem Zeitpunkt mit welchem Preis kalkuliert wurde.
    Es kann ja auch sein dass mehrere Bagger bestellt werden. Die Kalkulation dient dem Zweck zu sehen "wenn ich X Teile einkaufe, kostet mich das den Preis, und wenn ich Y Teile einkaufe, dann habe ich diesen Preis" oder auch die Antwort auf die Frage "Komme ich billiger weg, wenn ich jetzt mehr Teile kaufe als ich für den momentanen Auftrag brauche, den Rest auf Lager lege weil ich weiss dass dieses Modell häufiger bestellt wird?"
     
    Blockbuster, 18. Oktober 2013
    #39
  10. Moin Maik.
    Dann muss das das Datenmodell aus meiner Sicht noch erweitert werden. Irgendwo müssen ja die Einkaufspreise zu finden sein. Und - fall die zugelieferten Teile von verschiedenen Lieferanten kommen: auch hierfür eine Tabelle.
     
    hcscherzer, 18. Oktober 2013
    #40
  11. Hallo Hans-Christian,

    Die Preise die ich in die Datenbank speichern will, sind die Einkaufspreise.
    Der VKP richtet sich nach der von mir an dem Produkt verrichteten Arbeit.

    Mir ist nicht ganz klar wie du das meinst. Soll ich den Teilen Lieferanten zuordnen in einer extra Tabelle?
    Code:
     
    Blockbuster, 18. Oktober 2013
    #41
  12. Dann lese ich da auch noch Bestellungen - dazu fällt mir Kunde, Auftrag, Rechnung ... ein.
    Das sieht mir ehrlich gesagt irgendwie nicht nach einem Projekt für Anfänger aus.
    maike
     
  13. leeres Formular

    Hi,
    Es handelt sich hier auch nicht um ein Projekt mit dem man einen Anfänger beschäftigt. Die Datenbank soll auch nach meinen 6 Monaten hier funktionieren und weiterhin genutzt werden. Sie wird fester Bestandteil sein.

    ABER: Auch wenn ich Bestellungen geschrieben habe, wird dies hier nicht benötigt. Die Tabelle muss keinen Verlauf von Bestellungen festhalten sondern dient rein zur Kalkulation der EKP von Baggern.
     
    Blockbuster, 18. Oktober 2013
    #43
  14. Ja. Und wenn ein und derselbe Artikel von mehreren Lieferanten zu beziehen ist, muss wieder - zwischen Artikel und Lieferanten - ein m:n Relation erstellt werden. Auch hier sinnvollerweise mit Datum, denn:
    Lieferant A bietet Artikel Y heute für 100,- an
    Lieferant B bietet Artikel Y heute für 110,- an aber
    Lieferant A bietet Artikel Y morgen für 99,- an

    BTW (was mir gearde mal auffällt): der Titel "leeres Formular" für diesen Thread ist ja geradezu ... ja, was ist er denn?

    Ich dachte bisher, es geht um VK Preise ... na ja, das macht das Ganze ja etwas einfacher *wink.gif*
     
    hcscherzer, 18. Oktober 2013
    #44
  15. \@maike: also ich habe jetzt dank deines Artikels verstanden wofür ich die m:n tblBaggerBauteile brauche. Mir ist trotzdem noch nicht ersichtlich wie diese Tabelle aussieht. Ich habe hier ja nur ein Feld für die Bauteile obwohl es mehrere Bauteile pro Bagger sind. Oder sieht das dann so aus:

    Code:
    ??
     
    Blockbuster, 18. Oktober 2013
    #45
Thema:

leeres Formular

Die Seite wird geladen...
  1. leeres Formular - Similar Threads - leeres Formular

  2. leere Zelle in Zeile finden

    in Microsoft Excel Hilfe
    leere Zelle in Zeile finden: Hallo Liebe Excel Profis, ich bin noch recht unbedarft was VBA angeht. Man kopiert und liest und bastelt und versucht alles zu verstehen. Aber irgendwann kommt man nicht weiter. Ich habe eine...
  3. VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen

    in Microsoft Word Hilfe
    VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen: Hallo zusammen, ich habe eine Word-Vorlage mit Platzhaltern, in die ich mit VBA Daten aus einer Excel-Datei einfüge (in eine Excel-Zeile schreibe ich alle Daten für ein neues Word-Dokument). So...
  4. Unterbericht erzeugt leere Seite

    in Microsoft Access Hilfe
    Unterbericht erzeugt leere Seite: Hallo zusammen, ich habe eine HauptBericht mit drei Unterberichten. Der Hauptbericht enthält den eindeutigen schlüssel mit Adressdaten im Gruppenkopf über den die Ureports verknüpft sein. Nicht...
  5. MS Access - Formular: Kein Datensatz mit passenden Schlüsselfeldern

    in Microsoft Access Hilfe
    MS Access - Formular: Kein Datensatz mit passenden Schlüsselfeldern: Hey Ihr Lieben, in meinem Formular habe ich ca. 10 Felder zur Dateneingabe. Darunter einige Textfelder. Bei Eingabe wird in meiner z-Tabelle ein neuer Datensatz + neue ID eingefügt und in meiner...
  6. Erstellen eines Formulars mit dem Tool zum Erstellen von leeren Formularen

    in Microsoft Access Tutorials
    Erstellen eines Formulars mit dem Tool zum Erstellen von leeren Formularen: Erstellen eines Formulars mit dem Tool zum Erstellen von leeren Formularen Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010...
  7. In Formular eingebettetes Formular ist leer

    in Microsoft Access Hilfe
    In Formular eingebettetes Formular ist leer: Hallo Leute, ich habe folgendes Problem: Mit einem Abfrage-Assistenten habe ich eine Abfrage (Event) erstellt, die alle Daten einer Tabelle erfasst und diese nach Datum absteigend sortiert....
  8. Neues leeres Feld in ein Formular einfügen

    in Microsoft Access Hilfe
    Neues leeres Feld in ein Formular einfügen: Hallo, ich habe eine Access Datenbank in der ich meine Filmsammlung verwalte. Nun möchte ich zu dieser Datenbank (im Formular) ein weiteres Feld einfügen, wo ich hineinschreiben kann, wo sich...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden