Subformular / Listenfeld

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo *,

der Assistent für die Formularerstellung wird Dir nur dann eine Tabelle für das Unterformular vorschlagen, wenn es sich um ein 1:n-Verhältnis von Formular zu Unterformular handelt. Falls Du also die Verhältnisse anders definiert hast wird eben einfach das Unterformular leer bleiben.
Beispiel Rechnungserstellung:
Tabelle 1: Rechnungsnummer und Datum
Tabelle 2: Warenanzahl, Warennummer, Rechnungsnummer als Fremdschlüssel.
Tabelle 1 ist die Tabelle, die beim Formular das Hauptformular bildet. Versuchst Du das mit Tabelle 2, so wird kein Subformular möglich sein.

Der Listenfeldassistent geht in der Regel dann auf, wenn Du ein Listenfeld neu erstellst, nicht wenn Du ein vorhandenes Feld in ein Listenfeld umwandelst. Du kannst aber die Listenfelder genauso gut (eigentlich sogar besser) direkt über die Feldeigenschaften erstellen. Einige Beispiele dazu findest Du im Base-Handbuch. Link dazu siehe unten.

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Danke für deine rasche Antwort. Jetzt glaube ich allerdings, bei mir ist der Wurm drin ;-) Es war wie von dir beschrieben: Tabelle 1 als Hauptformular, mit Tabelle 2 verbunden - aber Subformular kommt nicht.
Beim Listenfeld hatte ich vergessen, den Zauberstab anzuklicken ... danach ging es und der Assistent zeigt auch alle Verknüpfungen an. Aber Subformular will und will nicht. Ich werde mich jetzt weiter einarbeiten und alte Kenntnisse wiederbeleben, hoffentlich. Im Augenblick renne ich doch oft gegen die Wand :?
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

sicher, dass Du über Extras → Beziehungen gegangen bist? Ich frage nur, weil ich schon häufiger SchülerInnen gesehen habe, die das Ganze mit dem Abfragefenster verwechselt haben, in dem ja auch Tabellen miteinander verbunden werden.

Mit welcher Version von Base arbeitest Du? Welches Betriebssystem?

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Ja, Extras - Beziehungen - hinzufügen - Zellen miteinander verbinden - speichern. Im Listenfeldassistenten tauchen auch beide mit der Haupttabelle Verbundenen auf. Wobei ich nicht weiß, ob das mit der Beziehung zu tun hat oder nicht, vermute aber einfach mal, ja.

Ein zweites Problem habe ich jetzt noch, aber das liegt bestimmt an mir: ich wollte drei Eingaben der einen Tabellen, die durch ein Listenfeld gewählt werden können, ändern. Aber die Erlaubnis erteilt mir Base nicht - Fehler beim Einfügen. Egal, was ich tue. Das Feld steht auf Textvarchar, ohne Zwangseingabe. Aber ich darf nichts, gar nichts ändern - liegt das an der schon bestehenden Beziehung? Aber was ich eingetragen hatte, hatte ich ja auch erst nach Erstellung der Beziehung hinein geschrieben. Ich befürchte, ich arbeite zur Zeit an zu vielen Baustellen gleichzeitig :-(

Ich arbeite mit der aktuellen Version von Base 4.0.0. Und das auf Windows 8.
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

mach doch einfach einmal einen Screenshot der Beziehungsdefinition.
Kann es sein, dass Du da Inhalte ändern willst, die Du als Fremdschlüssel eingesetzt hast? Wie lautet die Fehlermeldung?

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Hmm, ja, die Tabelle besteht aus nur einer Angabe und die ist auch der Schlüssel. Ich hatte dann versucht, die Beziehung zu lösen, aber das hat keinen Unterschied gemacht. Geht es also nicht, dass man nachträglich eine Eintragung verbessern kann? Das wäre geradezu dramatisch, so oft, wie ich mich zur Zeit vertippe :lol:
Screenshot - ja, mache ich, muss nur schauen, wo ich es hochladen kann. Danke für deine Hilfe :-)
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

lade Dir einfach einmal das Handbuch runter. Dort steht auf S.65-68 einiges zur Verbindung von Tabellen. Du kannst die Verknüpfungen mit einem rechten Mausklick bearbeiten. Da musst Du dann entsprechende Einstellungen wählen, die ein Ändern oder Löschen des Schlüsselwertes ermöglichen.

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Das ist das PDF mit der Beispieltabelle oder gibt es noch ein anderes? Ich will jetzt nämlich verzweifeln, mir fehlt eine wichtige Wahlmöglichkeit und ich bin doch fast durch :-( Argh!!!
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

nimm einfach den folgenden Link. Das ist für die Version LO 4.1, aber da sind noch keine großen Unterschiede zu AOO 4.0 drin: https://wiki.documentfoundation.org/ima ... ig_V41.pdf

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Danke dir, ich habe es heruntergeladen. Leider bin ich zur Zeit so beschäftigt, erkältet und genervt, dass ich kaum ein Wort verstehe - das geht mehr in die Materie, als ich es im Moment aufbringen kann. Einige Dinge habe ich jetzt irgendwie hinbekommen, langfristig werde ich das alles wohl neu aufsetzen müssen und wohl auch noch mal in MySQL einsteigen müssen - das ist alles sooo lange her :-P

Was ich jetzt bräuchte, wäre ein mich auf den Assistenten verlassen können: suchen, klicken, speichern - läuft. Aber wie das so ist: der verspricht mir alles und hält nichts. Daher frage ich jetzt mal ganz dumm: Listenfeld - kann ich mehr als einen Eintrag auswählen? Bislang schaffe ich das nicht und genau das ist es, was mir jetzt gerade fehlt.
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,
michou hat geschrieben:Listenfeld - kann ich mehr als einen Eintrag auswählen? Bislang schaffe ich das nicht und genau das ist es, was mir jetzt gerade fehlt.
Das Listenfeld ist Eingabefeld für ein Feld der Datenbank. Es wählt dazu aus einer anderen Tabelle einen Wert aus und schreibt den entsprechenden Schlüsselwert in die Tabelle, die dem Formular zugrunde liegt. Tabelle des Formulares und Tabelle, die das Listenfeld beschickt, stehen in einem n:1-Verhältnis. Deshalb kann es gar nicht möglich sein, mit einem Listenfeld in einem Datenbankformular gleichzeitig mehrere Werte weiter zu geben.
Wenn Du mehrere Werte weiter geben willst, dann planst Du offensichtlich ein n:m-Verhältnis. Dazu brauchst Du eine Tabelle, die zwischen den beiden Tabellen als Mittler steht. Dann kannst Du in einem Formular ein Unterformular für diese Mittlertabelle einrichten. In diesem Unterformular brauchst Du ein Tabellenkontrollfeld. Dieses Tabellenkontrollfeld hat dann ein Listenfeld, mit dem Du entsprechend für jeden neuen Datensatz der Mittlertabelle einen neuen Wert aussuchen kannst. Du siehst also anschließend mehrere Listenfelder untereinander, die die verschiedenen Werte auch darstellen.

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Ok ... also drei Tabellen. für mich stellt sich das jetzt so dar, dass ich Tabelle 1 habe, in der die verschiedenen Behandlungen stehen. Diese können in Tabelle 2 eingegeben werden, jede Behandlung in ein Extrafeld. Und das wiederum taucht dann in Tabelle 3 auf ...?

Das bekomme ich beim besten Willen nicht hin :-( Ich stehe jetzt mal vor der Wand und werde dann wohl doch einen klassischen Karteikasten befüllen, bis ich irgendwann die Zeit habe, mich mit der Thematik richtig zu befassen. Ich danke dir sehr :-)

PS: oder gibt es eine Möglichkeit, eine Accesstabelle in OO zu überführen?
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

Du kannst zumindest lesend auf Access-Tabellen mit Base zugreifen, sofern Du ein Windows-Betriebssystem hast. Du kannst auch von Access aus als *.xls oder *.csv exportieren. Wenn Du aber sowieso nur eine Tabelle in Access hast, warum arbeitest Du denn dann mit verschiedenen Tabellen in Base?

Mir fehlt immer noch der Einblick, was Du überhaupt machst. So etwas wie ein kleiner Datenbankanfang ohne persönliche Daten hier als Anhang, ein Screenshot der Tabellenbeziehungen o.ä. Das ganze ist ohne praktisches Beispiel äußerst mühsam zu erklären. Vermutlich ginge die Datenbank auch wesentlich einfacher zu handhaben - vor allem, wenn ich jetzt eine Access-Tabelle höre.

Gruß

Robert
michou
**
Beiträge: 26
Registriert: Mo, 02.09.2013 13:33

Re: Subformular / Listenfeld

Beitrag von michou »

Nein, ich habe keine Access-Datenbank - nur der einzige Mensch in meiner Umgebung, der sich mit Datenbanken auskennt, arbeitet mit Access und seine Überlegung war, mir die Datenbank zu bauen und dann zu schauen, ob man sie übertragen kann. Habe aber schon erlesen, dass das so auch nicht möglich ist. Der gute Mensch hatte nach drei Tagen mit Base aufgegeben und dann eben den Accessvorschlag gemacht :lol:

Ja, was mache ich - entschuldige, ich bin wirklich durch den Wind. Ich war mir nicht sicher, ob ich hier einfach so was anhängen kann. Bei all der Bastelei ist das im Anhang heraus gekommen. Aber glücklich bin ich damit überhaupt nicht - es ist alles zu platzgreifend. Und immer wieder brach alles zusammen, ließen sich Bezüge nicht mehr ändern und immer wieder habe ich bei null begonnen und mir so einen zu leichten Weg gewählt.

Normalerweise bin ich übrigens klarer und vor allem weniger begriffsstutzig in Sachen Software.
Gästedatei.odb
(66.73 KiB) 222-mal heruntergeladen
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Subformular / Listenfeld

Beitrag von RobertG »

Hallo michou,

ich habe da einmal ein bisschen dran rumgewerkelt. Mit ein paar Tabellenänderungen habe ich Beziehungen aufgebaut, die für mich nach einigem Hinsehen ersichtlich waren. Die habe ich dann auch entsprechend in die Formulare eingebaut.
Bei Deinen Formularen waren die Eigenschaften so eingestellt, dass Du nur neue Daten eingeben konntest. Damit erzeugst Du ein Formular, mit dem Du dann auch keine alten Daten sehen kannst. Du hast also immer nur einen aktuellen Datensatz bearbeitbar. Ich nehme an, dass Du das nicht beabsichtigt hattest.

Das Ganze ist jetzt erst einmal ein Start. Die Verknüpfung der in Extras → Beziehungen nicht aufgeführten Tabellen habe ich mir jetzt nicht weiter angesehen. Dazu fehlt mir im Moment die Zeit und das Hintergrundwissen.

Mit Der Verwendung von Sonderzeichen im Datenbankbereich bin ich übrigens eigentlich etwas vorsichtiger. Das fängt schon beim Dateinamen an ...

Gruß

Robert
Dateianhänge
Gästedatei.odb
Überarbeitet Tabellenbeziehungen und Formulare
(63.88 KiB) 181-mal heruntergeladen
Antworten