Neuigkeiten:

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

Mobiles Hauptmenü

Eingabeformular efizienter gestalten

Begonnen von Chicago, Februar 19, 2012, 04:48:43

⏪ vorheriges - nächstes ⏩

Chicago

Hallo liebes Forum,

ich habe mir eine Musik-DB erstellt. soweit geht sie auch gut dank Adamo und einigen Foren-Seiten lesestoff.

Jetzt möchte ich aber gerne das Formular ein bischen Modifizieren, um mir auch schreibarbeit zu ersparen
und oder Strg+C ( +v).

Bestimmte Parameter bezüglich Cd-Attribut möchte ich automatisch machen lassen. Da VBA für mich Bömische Dörfer sind
wollte ich gerne wissen ob es auch ohne geht.
Ich hab so einiges probiert, was aber nicht funktioniert hat, warum auch immer.

Über ein Auswahlfenster/Box wollte ich das realisieren, bekomme aber nicht die Ausgewählten Daten in mein Formular bzw. Tabelle
geschrieben. Jetzt hab ich mal die DB im Anhang ohne meine miserablen versuche. Würde auch gerne das das Formular nur alleine auf dem Desktop sichtbar ist, ohne das Access-Fenster. Gelesen es geht mit Popup, was ich auch probiert hab, ergebnis war das ich es als popup im Access-Fenster hatte.

Würde mich freuen wenn mir jemand hilfestellung gibt, und es für einen Leien plausibel erklären könnte.


Als Anhang meine Datenbank, mit einer txt. wo ich es nochmals genauer erklärt habe. Auch meine denkweise bezüglich des Aufbaus ist dort dokumentiert. Verwende Access 2010, aber Anhang auf 2003 gespeichrt.

danke im vorraus

Chicago



[Anhang gelöscht durch Administrator]

database

Hallo,

ich hatte leider nur kurz Zeit dein Werk zu betrachten.

Das Tabellenkonzept dahinter stimmt nicht, es entspricht nicht den Normalisierungsregeln einer relationalen Datenbank.
Du erfaßt in der Tabelle 'tblName', die eigentlich tblInterpret benannt werden sollte die Namen von Interpreten und die Bezeichnungen von CDs in ein und dem selben Tabellenfeld.
In der Tabelle dürften eigentlich nur die Namen der Interpreten stehen - und deren Vor und Nachnamen wenn möglich nicht durch Kommas getrennt!
Die Bezeichnungen der CDs müssen in die Tabelle 'tblCD_Titel'
Die Beziehung zwischen 'tblCD_Titel' und tbl_Tracks' ist falsch, sie müßte richtigerweise zwischen tblCD_Titel.cd_id und tbl_Tracks.cd_id_f (1:n) eigestellt sein.
Da es aber vorkommen wird, dass 1 Track auf unterschiedlichen CDs vorkommt müsste diese Beziehung als m:n angesehen werden und wäre daher über eine Zwischentabelle aufzulösen.
Das gleiche würde dann eigentlich auch für die Beziehung zwischen den Interpreten und den CDs gelten!

Wenn du immer wiederkehrende Attribute in eine Tabelle schreiben willst, so ist für diese Attribute jeweils eine eigen Tabelle zu führen, die mit der Zieltabelle ihrerseits 1:n in Beziehung zu setzen wäre.
Fortlaufende Nummerierungen werden in keinen Feldern erfaßt, die ergeben sich automatisch durch Abfragen - es sei denn sie geben die Reihenfolge der Tracks einer CD wieder - (und nur dann) dann sind sie zu erfassen.

Das angehängte *.doc ... naja ein bisschen verwirrend ist das aber schon was du da schreibst. ;)

Chicago

#2
Hallo database,

danke für Deine Antwort.

Ich versuchs mal zu ändern und irgendwie auf die Reihe zu bekommen. Was die fortlaufende Nr. betrifft, da hast Du das richtig erkannt,
es ist die Trackreihenfolger auf der CD. Diese wollte ich mit einbringen um schneller einen Titel zu finden auf der CD.

Bei dem tblName, wenn ich den Name und Vorname in unterschiedlichen Feldern setzte, wie geht das denn mit den Untertabellen,
kommen die dann 2x rein... unter Vor und Nachname.

Was die Attribute betrifft..  Die Tabellen hab ich ja mit drin... aber noch nicht umgesetzt weil ich nicht wusste wie .....
vieleicht so... vereinfacht ausgedrückt.... und es ohne vba Kenntnise wohl eher nicht geht.
wenn attribut =1 ( CD von Künstler/Interpret) dann schreibe unter Interpret den Namen des Künstlers
wenn attribut =2 ( Sampler ) lasse Interpret leer wird dann bei Eingabe reingeschrieben.

Mein Eingabeformular ist auch nicht der bringer, hoffe Du hast kein Augenkrebs bekommen.
Werde mir jetzt Deine Antwort kopieren und ausdrucken und mich mal versuchen....

Werde mich bestimmt wieder Melden wenn ich an den Herrn komme der mir sagt ... hier ist die Grenze ... fg

Grüsse
Chicago

Edit: Soweit hab ich es jetzt geändert, das Ich Nachname,Vorname habe. Was ich mit doppelter Untertabelle vermutet habe ist nicht passiert. hurra.... Werde jetzt noch die Attribute für CD mit einbauen..... dann meld ich mich wieder und aktualisiere meine Zip-Datei oben. Oben in Version 2.... aber ich weiß nicht wie ich jetzt die verknüpfungen der Attribute erreichen kann.
Würde mich freuen wenn wieder hilfe kommt... verbesserungsvorschläge
Danke

database

Hallo,

ZitatBei dem tblName, wenn ich den Name und Vorname in unterschiedlichen Feldern setzte ...
Prinzipiell ist es so, dass solche Informationen gar nicht in anderen Tabellen auftauchen!
Tabellen, die mit der tblNamen in Beziehung stehen beinhalten als Fremdschlüssel lediglich die ID des Namen-Datensatzes.
Die Texte werden dann durch eine Abfrage dazu geliefert und in die entsprechenden Formularfelder eingetragen - natürlich können diese nach Belieben zusammengefügt werden (jedoch nur zum Zweck der Darstellung)

ZitatWas die Attribute betrifft ...   
Hier trifft au Formularebene das oben gesagte zu.
Wenn das Attribut 1 lautet, dann schreibe ins Fremdschlüsselfeld die ID des Interpreten und zeige in den Texfeldern den Namen an.
Wenn das Attribut 2 lautet, schreibe nichts sondern erwarte eine Eingabe oder Auswahl - das ließe sich relativ einfach mittels eines Kombifeldes lösen.

Ich habe mal ein wenig herumgesucht und folgendes gefunden - schau dir das mal an ...
http://www.dbwiki.net/wiki/Access_Beispieldatenbanken   suche da nach dem Beispiel 'CDArchiv' - vielleicht hilft dir das schneller weiter  ::)

Chicago

Hallo database,

nenn mich Blond oder so ..... aber mein Access 2010 streikt bei manchen einstellungen.
Hab mir das CDArchiv gezogen.... ober bekomme es nicht hin das bei Einstellung der Attribute auch nur
annähernd was in meine Felder eingetragen wird. Irgendwie komme ich da nicht ganz hinter....

Zitat
Zitat
das ließe sich relativ einfach mittels eines Kombifeldes lösen.

könntest Du mir das mal machen, ich steh da nämlich voll auf der Leitung?

Ich find es einfach nicht, wo ich das einstellen kann/muss.

grüsse

Chicago

database

Hallo,

dass das CDArchiv von DBWiki nicht ohne Anpassung funktionieren wird ist mir schon klar, es wurde auch mit Acc97 erstellt.
Es ging mehr darum dass du siehst wie die Formulare aufgebaut wurden nicht darum es anstatt deiner DB zu verwenden.

Ich schau mir deine Sache gerne an, habe aber relativ wenig Zeit, daher wird das schon etwas dahinziehen.
Vielleicht aber hat jemand anderer leichter Gelegenheit dazu...  :-\

Chicago

Hallo database,

danke für die antwort. Ich habe ja Zeit... werde weiter probieren und weiter lesen und tun....

würde mich aber trotzdem freuen, wenn Du es nicht aus den Augen verlieren könntest.
Fortschritte werde ich hier posten.


Grüsse

Chicago