Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Aufbau der Datenbankstruktur korrekt?

Begonnen von -Tom-, Dezember 31, 2009, 18:12:07

⏪ vorheriges - nächstes ⏩

-Tom-

Zitat von: MzKlMu am Februar 07, 2010, 23:59:24
Hast Du das beachtet, hatte ich schon mal geschrieben:
ZitatBeim Motor sind auch die Momente nicht notwendig, die ergeben sich aus der Leistung. Die Drehmomente müssen in das Getriebe.

Habe die Momente jetzt ins Getriebe gesetzt.

Habe jetzt versucht die Formular zu den Vorgängen des Motors einzubauen, aber ich hänge da schon wieder bei den Beziehungen und den gebundenen Feldern. Bekomme schon wieder den Fehler 3201.

Kannst Du mir vielleicht das ganze mal erklären ohne es einzubauen so dass ich das ganze nachvollziehen kann was ich falsch mache?

DB09 anbei.

Tom

[Anhang gelöscht durch Administrator]
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

MzKlMu

#61
Hallo,
na, die 09 hätten wir dann schon mal erreicht. Hoffentlich wird das nicht noch dreistellig.  ;D

Zur Sache:
Wenn der Motor erfasst ist, ist dieses Formular erledigt. Der Einbau bzw. Vorgänge zum Motor sollten auf einem anderen Formular erfolgen.
Das Formular wird sonst viel zu überladen. Außerdem lässt sich viel besser eine Hirachie realisieren, denn der, der den Motor erfasst kann ja ein ganz anderer sein als der, der den Motor einbaut.
Grundage für dieses neue Formular ist die Tabelle "tbl_VorgaengeZumMotor". Hierin wird der Motor an Hand der eindeutigen SZNr mit einem Kombi ausgewählt und als Fremdschlüssel im Feld "MotorGrunddatenID_F" gespeichert. Die Grundaten des Motor können noch angezeigt werden, müssen aber nicht. Der Motor ist auch so ausreichend bestimmt.
In diesem Formular werden alle Daten zum Vorgang erfasst.
So entsehen z.B. folgende Datensätze im Laufe der Lebendsdauer des Motors.
Beschaffung
Auf Lager
Einbau
Ausbau
Inspektion
Einbau
Ausbau
Inspektion
Einbau
Ausbau
Überholung
Einbau
Ausbau
Verschrottung

Zum Einbau gibt es ein Ufo das die Details zum Einbau zeigt.

Versuche es mal.


Gruß Klaus

-Tom-

Zitat von: MzKlMu am Februar 09, 2010, 19:56:41
Grundage für dieses neue Formular ist die Tabelle "tbl_VorgaengeZumMotor". Hierin wird der Motor an Hand der eindeutigen SZNr mit einem Kombi ausgewählt und als Fremdschlüssel im Feld "MotorGrunddatenID_F" gespeichert.

Ich habe das ganze mehrmals versucht komme da aber irgendwie nicht klar. Habe es mit der SZNr so versucht wie Du es beim Formular MotorErfassung gemacht hast, aber da erhalte ich immer die Fehlermeldung "Das Microsoft Jet-Datenbankmodul erkennt "MotorGrunddatenID" nicht als gültigen Feldnamen oder -ausdruck"

Das ist ja eigentlich auch klar da das Formular ja auf der Tabelle "tbl_VorgaengeZumMotor" passiert und dort gibt es den Feldnamen ja nicht. Der Versuch mit "tbl_MotorGrunddaten.MotorGrunddatenID" hat auch nicht geklappt.

Habe das ganze dann mal anders versucht, Habe ein Formular mit der Tabelle "tbl_MotorGrunddaten" als Grundlage, und darin befindet sich ein Ufo mit den Daten der Tabelle "tbl_VorgaengeZumMotor" und hier kann ich dann auch über die SZNr auswählen.

Allgemein habe ich nun noch Probleme wie ich die Vorgänge speichern soll.

Vielleicht kannst Du Dir das nochmal anschauen.

Der erste Versuch ist im Formular frm31MotorVorgang und der zweite im Formular frm03MotorVorgang zu sehen.

Tom

[Anhang gelöscht durch Administrator]
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

-Tom-

Hallo MzKlMu,

Ich wollte mal nachfragen ob Du mal Zeit hattest Dir meine letzte DB anzuschauen.

Tom
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

-Tom-

Hallo,

Ich melde mich nach langer Zeit mal wieder, hatte vorher leider keine Zeit mich damit weiter zu beschäftigen.

Ich habe es jetzt soweit gebracht dass ich im Formular anhand der SZNr auswähle und dann die entsprechenden Daten angezeigt bekomme.

Jetzt habe ich dazu noch ein paar Fragen

Wenn ich das Formular frm03MotorVorgang öffne wird mir immer der erste Datensatz der Tabelle tbl_VorgaengeZumMotor angezeigt, gibt es auch eine Möglichkeit erst nach der Auswahl eines Motors einen Datensatz anzuzeigen?

Wie soll ich die Vorgänge genau in der Tabelle speichern?
Soll ich diese direkt in die Tabelle eingeben oder wie angedeutet über das Register Neuen Vorgang erstellen?

Ich weiß irgendwie nicht wie ich die Vorgänge am besten abspeichere.

-Tom-

Im Anhang DB11



[Anhang gelöscht durch Administrator]
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

Lernwilliger

Zitat von: -Tom- am Dezember 31, 2009, 18:12:07
Hallo,

Ich habe ein Formular das 70 Felder enthält, einige sind reine Textfelder, manche sind Kombifelder und dann noch Kontrollkästchen.

Zu jedem Kombifeld gibt es eine zugrundeliegende Tabelle.

z.B.

tbl_spannung
tbl_strom
tbl_leistung
...
..
.

Diese 70 Felder habe ich nun in mehrere Tabellen zusammengefasst.


tbl_Motorgrunddaten1
-> tbl_spannung
-> tbl_strom
-> tbl_leistung
...
..
.

tbl_Motorgrunddaten2
-> tbl_antriebsart
-> tbl_wellenlänge
-> tbl_wellendurchmesser
...
..
.

tbl_Motorgrunddaten3
-> farbe
-> gewicht
...
..
.

tbl_getriebe
-> ...

tbl_bremse
-> ...

Diese  Tabellen fasse ich dann in der Tabelle tbl_Motordaten zusammen.

Zwischen den Tabellen habe ich Beziehungen mit referentieller Integrität eingestellt.

Ist dieser Aufbau so korrekt?

Tom




database

Hallo Lernwilliger,

1. Lektion:  Kopiere keine Startbeiträge auf die 5. Seite


Grüße
Peter

-Tom-

Wollte mal nachfragen ob noch jemand Zeit und Lust hat mir bei meinem Projekt zu helfen!?

-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

Hallo, guten Morgen,

ich denke, dass du hier IMMER Hilfe erwarten kannst - aber kannst du deine Frage nicht auf ganz einfache und konventionelle Art und Weise stellen?
Als neuer User mit obiger Aktion in einem alten Beitrag wirst du nicht recht viel erwarten können  ;)

ZitatWollte mal nachfragen ob noch jemand Zeit und Lust hat mir bei meinem Projekt zu helfen!?
Also dann - bitte konkrete Fragen zu einem speziellen NEUEN Thema in einen neuen Tread verpacken und wenn der alte hier abgschlossen ist bitte auf 'gelöst' setzen,
wenn noch Fragen zum gegenständlichen Problem bestehen ... hier posten (DIE FRAGE) ... und dann geht's weiter!  ::)

Grüße
Peter

-Tom-

Zitat von: database am Dezember 18, 2010, 09:01:45
Als neuer User mit obiger Aktion in einem alten Beitrag wirst du nicht recht viel erwarten können  ;)

Ich bin kein neuer User ;) ich bin der Beitragsstarter!

Zitat von: database am Dezember 18, 2010, 09:01:45
ZitatWollte mal nachfragen ob noch jemand Zeit und Lust hat mir bei meinem Projekt zu helfen!?

wenn noch Fragen zum gegenständlichen Problem bestehen ... hier posten (DIE FRAGE) ... und dann geht's weiter!  ::)

Habe ich doch ;)

Zitat
Hallo,

Ich melde mich nach langer Zeit mal wieder, hatte vorher leider keine Zeit mich damit weiter zu beschäftigen.

Ich habe es jetzt soweit gebracht dass ich im Formular anhand der SZNr auswähle und dann die entsprechenden Daten angezeigt bekomme.

Jetzt habe ich dazu noch ein paar Fragen

Wenn ich das Formular frm03MotorVorgang öffne wird mir immer der erste Datensatz der Tabelle tbl_VorgaengeZumMotor angezeigt, gibt es auch eine Möglichkeit erst nach der Auswahl eines Motors einen Datensatz anzuzeigen?

Wie soll ich die Vorgänge genau in der Tabelle speichern?
Soll ich diese direkt in die Tabelle eingeben oder wie angedeutet über das Register Neuen Vorgang erstellen?

Ich weiß irgendwie nicht wie ich die Vorgänge am besten abspeichere.

-Tom-

Im Anhang DB11

-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

Hallo,

da dürften wir dann aneinander vorbeigepostet haben - ich meinte nicht den, von dir zitirten Beitrag sondern den #65 vom User 'Lernwilliger'

Sorry, aber da ist's wirklich daneben gegangen.

Nachdem MzKlMu - wie ich gesehen habe - sehr viel mit dir an der DB gemacht hat denke ich, dass er vielleicht wieder einsteigen möchte.

Gruß

database

Hallo,

also ich habe mir die Nr.11 angesehen.

ZitatWenn ich das Formular frm03MotorVorgang öffne wird mir immer der erste Datensatz der Tabelle tbl_VorgaengeZumMotor angezeigt, gibt es auch eine Möglichkeit erst nach der Auswahl eines Motors einen Datensatz anzuzeigen?

Für das Unterformular tbl_VorgängeZumMotor.... hast du in den Formulareigenschaften (Daten) Verknüpfen von / Verknüpfen nach eingetragen - nimm das raus.
Die Datenherkunft für das UFo änderswt du dann dahingehend, dass du für das Feld 'MotorGrunddaten_F' das Kriterium [Formulare]![frm03MotorVorgang]![cboSZNrSuchen] einträgst.
Dann änderst das Ereignis After_Update für das Kombi cboSZNrSuchen - nimm alles raus und schreibe:

Me.tbl_VorgaengeZumMotor_Unterformular.Requery
Me!cboSZNrSuchen = Null


Dadurch wird ein leeres UFo angezeigt, wenn du das HaFo öffnest - also auch dann wenn zum Eintrag im Kombi cboSZNrSuchen kein Vorgang gespeichert wurde.
Wählst du - nach deinem Beispiel - den Eintrag 2 oder 4 aus werden die entsprechenden Einträge der Vorgänge im UFo angezeigt. (getestet)

2. Frage:

ZitatSoll ich diese direkt in die Tabelle eingeben ...
Wenn das von MzKlMu so 'angedeutet' wurde - ich habe die letzten 65 Beiträge nicht wirklich alle durchstudiert - dann gehe ich davon aus, dass er das auch GENAU so gemeint hat!
Es gibt keinen Grund, Daten direkt in die Tabellen zu schreiben, die Eingaben haben ausschließlich über entsprechende Formulare zu erfolgen.

Was mir bei der ganzen Vorgangsgeschichte allerdings aufgefallen ist:

Vorgang zum Motor ist scheinbar nicht gleich Vorgang zum Motor ... ??? ??? ???

Das ist ein wenig verwirrend, da du die Register in deinem HaFo so beschriftet hast, dass der Eindruck entsteht die unter 'Neuen Vorgang erstellen' erfasste Daten würden dann unter 'Vorgänge zum Motor' erscheinen - tun sie aber nicht, da hierbei 2 unterschiedliche Tabellen bedient werden!
Da solltest du deine Phantasie nochmal schwer strapazieren um das zu begradigen.  ;)

Grüße
Peter




-Tom-

Zitat von: database am Dezember 19, 2010, 17:46:37
Dadurch wird ein leeres UFo angezeigt, wenn du das HaFo öffnest - also auch dann wenn zum Eintrag im Kombi cboSZNrSuchen kein Vorgang gespeichert wurde.
Wählst du - nach deinem Beispiel - den Eintrag 2 oder 4 aus werden die entsprechenden Einträge der Vorgänge im UFo angezeigt. (getestet)

Genau so soll es sein.

Zitat von: database am Dezember 19, 2010, 17:46:37
Das ist ein wenig verwirrend, da du die Register in deinem HaFo so beschriftet hast, dass der Eindruck entsteht die unter 'Neuen Vorgang erstellen' erfasste Daten würden dann unter 'Vorgänge zum Motor' erscheinen - tun sie aber nicht, da hierbei 2 unterschiedliche Tabellen bedient werden!

Sollte nun begradigt sein.

Ich habe das ganze mit dem Eintragen der Vorgänge jetzt mal eingebaut, ist meine Vorgehensweise da so in Ordnung?
Ein Problem habe ich jetzt vorerst noch und zwar möchte ich nachdem ich einen Vorgang eingetragen habe mit dem Wechsel auf "Vorgänge zum Motor" den aktuellen Motor mit den neuen Vorgang angezeigt bekommen.

Habe das so versucht:

Private Sub RegisterStr2_Change()
Select Case RegisterStr2
 Case 0
     Me.frm03VorgaengeZumMotorUfo.Requery
     Me.frm03MotorVorgangUfoGrunddaten.Requery
End Select
End Sub


Aber da wird mir nur eine leeres Ufo angezeigt da die MotorGrunddatenID nicht übergeben wurde, aber wie muss ich die genau übergeben?

DB12 im Anhang

-Tom-


[Anhang gelöscht durch Administrator]
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

#73
Hallo,

ja, so sieht das schon viel besser aus, jetzt sind die Felder auf den richtigen Seiten angelangt  ;D

Zitat... mit dem Wechsel auf "Vorgänge zum Motor" den aktuellen Motor ...
Muss ich mir noch in Ruhe ansehen, ev. muss der ausgewählte Motor im Kombifeld stehen bleiben, bis eine neue Auswahl erfolgt.
Aber wie gesagt - ich schau' da noch nach und gebe dir Bescheid.

So, ist schneller möglich gewesen als angenommen.
Die geänderte Version befindet sich bereits hier im Anhang.  8)

Habe im Modul1 eine Function erstellt (aktuellerMotor), welche an die Abfrage hinter dem Unterformular die MotorGrunddatenID übergibt.
Diese Info bezieht die Function aus der globalen Variable, welche du After_Update des Kombifeldes mit der MotorGrunddatenID befüllst.
Wechselst du nun die Register, beziehen sich die angezeigten Daten immer auf den zuvor ausgewählten Motor, bis eine neue Auswahl erfolgt.

Hoffe das kommt deinen Vorstellungen entgegen  ;)

[Anhang gelöscht durch Administrator]

-Tom-

Zitat von: database am Dezember 20, 2010, 13:37:19
So, ist schneller möglich gewesen als angenommen.
Die geänderte Version befindet sich bereits hier im Anhang.  8)

Perfekt!

Danke

-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen