Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: gromax am Mai 27, 2016, 17:07:39

Titel: Bücherverwaltung - Eingabe der Autoren
Beitrag von: gromax am Mai 27, 2016, 17:07:39
Liebe Access-Profis,
ich bin auf dem Weg, eine DB zur Bücherverwaltung zu entwickeln.
Jetzt stehe ich vor der Aufgabe, mittels eines Formulars zu einem Buchtitel den Autor/die Autoren einzupflegen; dieses umfasst zwei Vorgänge: Die Auswahl bereits eingepflegter bzw. die Neu-Eingabe von noch nicht der DB bekannten Autoren/innen.

Meine bisherige Lösung:
Ich habe die tblAutoren mit der tblBuecher in Beziehung gesetzt (vgl. DB-Beziehungen.jpg) und kann dort das Mehrwertefeld (mehrere Autoren) aufrufen und entsprechende Eingaben vornehmen.
Dieses funktioniert auch in meinem Formular.

Eine m:n-Beziehung hatte ich vorab schon eingearbeitet, nur hatte ich dann das Problem, dass in einer Bücherliste entsprechend der Anzahl der Autoren mehrere Zeilen für ein Buch untereinander aufgeführt werden.

Mein Wunsch wäre aber:
Weiterhin die Mehrfach-Auswahl in einem Mehrwertefeld, das auch ggf. die Eingabe eines neuen Autors ermöglicht; das Mehrwertefeld lässt dieses überhaupt nicht zu.

Wie setze ich denn dieses Vorhaben um?

Für eine Hilfe bin ich wie immer sehr dankbar.

Viele Grüße
gromax
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: PhilS am Mai 27, 2016, 18:00:09
ZitatEine m:n-Beziehung hatte ich vorab schon eingearbeitet, nur hatte ich dann das Problem, dass in einer Bücherliste entsprechend der Anzahl der Autoren mehrere Zeilen für ein Buch untereinander aufgeführt werden.
Für die (schreibgeschützte) Darstellung hilft es vielleicht wenn du alle Autoren eines Buches durch Komma getrennt darstellst (http://codekabinett.com/rdumps.php?targetDoc=access-vba-daten-spalte-kommagetrennt-ausgeben).

Zur Handhabung der Eingabe bei dem Mehrwert-Feld kann ich mangels Erfahrung wenig sagen. - Ich würde eher die komplette M:N-Beziehung selbst modellieren und dann ein Unterformular in Endlos- oder Datenblatt-Ansicht für die Eingabe verwenden.
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: MzKlMu am Mai 27, 2016, 18:55:58
Hallo,
ich würde unter allen Umständen eine vollständige n:m Beziehung mit 3 Tabellen aufbauen. Diese Mehrwertfelder sind mir viel zu sperrig. Auf einer MS Seite gibt es ein 2 seitige aufwendige Erklärung wie man mit diesen Feldern umgehet. Das ist alles viel zu kompliziert.
Zitatdass in einer Bücherliste entsprechend der Anzahl der Autoren mehrere Zeilen für ein Buch untereinander aufgeführt werden.
und wen stört es ?
Eine Abfrage würde man ohnehin nicht direkt ansehen. Für eine Bücherliste nimmt man einen Bericht der das Buch in einem Gruppenkopf anzeigt und im Detailbereich dann die Autoren. Ideal für eine Liste. Den gleichen Bericht kannst Du auch ohne Autoren ausdrucken, indem man einfach den Detailbereich ausblendet.
Für ein Formaulardarstellung kannst Du ein Hafo verwenden für die Bücher und ein Ufo für die dazu gehörenden Autoren. Sowohl im Bericht als auch im Formular wird das Buch immer nur 1x angezeigt.

Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: gromax am Mai 28, 2016, 14:57:49
Hallo Phil, hallo Klaus,

vielen Dank für Eure Antworten; Ihr habt mich überzeugt, dass ich die m:n-Variante weiter verfolge. Doch lasst mich dazu noch eine Ergänzungsfrage stellen:
In meiner DB sind ja schon viele Autoren hinterlegt; wie gestalte ich denn die Eingabe von bereits bekannten Autoren und - sollte ein neuer Autor benannt werden - und neuer Autoren geschickterweise in einem Formular?

Viele Grüße
gromax
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: gromax am Mai 28, 2016, 17:56:28
Hallo, liebe Access-Profis,

nun bin ich ein Stück weiter gekommen; ich habe ein Unterformular zur Autoreneingabe eingepflegt. Diesem habe ich ein Lösch-Button per Makro (Papierkorb) beigefügt, so dass ich bei Falsch-Eingaben diesen Datensatz auch gleich lösen kann.

Die Eingabe in meinem Formular funktioniert; jetzt habe ich aber das Problem, dass ich bei angefangener Eingabe und folgendem Abbruch nicht mehr aus dem Unterformular herauskomme, sondern immer die Meldung "Sie wollten den Null-Wert einer Variablen zuweisen, die nicht den Datentyp Variant hat".

Ich habe in keinem Feld einen Standard-Wert vorgegeben und auch keine Option auf 'Eingabe erforderlich' gesetzt!

Meine Fragen:
- Wie kann ich diese Fehlermeldung unterbinden?
- Kann man diesen Makro-Code durch VBA ersetzen; wennja, wie sieht der denn aus?
- Könnte man in diese Kombinationsfelder nicht komma-getrennt neue Autorennamen eingeben und diese werden gleich in die Tabelle tblAutoren mit Vor- und Nachnamen übernommen? Ganz ambitioniert - ich weiß!

Vorab vielen Dank!

Viele Grüße
gromax
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: DF6GL am Mai 28, 2016, 19:01:30
Hallo,


-- Beziehungen korrigieren. (Löschen und neu setzen)
-- Benamsungen konsequenter gebrauchen.
-- FormFelder gleich wie Tabellenfelder benamsen (Auch wenn es anderslautende Meinungen gibt)
-- Datenherkunft der Formulare nicht auf verknüpfende Abfragen stellen. (Ich benutze nur in besonderen Fällen Abfragen, und auch dann nur auf eine Tabelle bezogen,z. B. wenn definiert sortiert werden soll.)
-- "GesamtName" überflüssig,  kann aus Vor- und Zuname jederzeit zusammengesetzt werden.
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: gromax am Mai 29, 2016, 17:08:41
Hallo Franz,

vielen Dank! Super - das funktioniert!
Den Direktzugriff auf die Tabellen - ohne Umweg über die Abfragen - finde ich hilfreich; da hat sich bei mir etwas festgesetzt, das die Konstruktion der DB unnötig komplifiziert!

Kann ich trotzdem nochmals eine der anderen Fragen aufrufen?
- Wie kann ich denn reagieren, wenn kein in der DB hinterlegter Autor ("Der von Ihnen eingegebene Text ist kein Element der Liste.") eingetragen werden soll?

Viele Grüße
gromax

Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: MzKlMu am Mai 29, 2016, 17:11:35
Hallo,
hier kann man das Ereignis "Bei nicht in Liste" nutzen.
Siehe hierzu:
FAQ 4.13 Kombinationsfeld - Eintrag hinzufügen  (http://www.donkarl.com?FAQ4.13)
Titel: Re: Bücherverwaltung - Eingabe der Autoren
Beitrag von: gromax am Mai 29, 2016, 21:12:04
Hallo Klaus,

gute Hilfe, vielen Dank! Da komme ich weiter!

Alles Gute
gromax