Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Heiko, > > Am 17.10.2010 09:41, schrieb Robert Großkopf: > > Damit sind wir im Prinzip beim 2. Problem. Ich kann zwar per Makro darauf > > aufmerksam machen, dass noch irgendwelche Eingaben fehlen, aber leider > > ist der Datensatz ja schon geschrieben. Damit produziere ich also nur > > ein nichtssagendes Fensterchen - beim nächsten Aufruf habe ich dennoch > > eine "Adresse", die nur aus einer Straße besteht. > > Wenn Du schon ein Makro in die Hand nimmst, kannst Du das Problem auch > mit ungebundenen Feldern lösen. Wenn Du die Daten speichern willst, > sammelst Du sie aus den Textfeldern ein und schreibst sie mittels SQL in > die Datenbank. Bei Auswahl eines Datensatzes holst Du die Daten per SQL > und schreibst sie in die ungebundenen Felder. > Bei Reset löschst Du den Inhalt der Felder... > > Ist freilich ein erheblich höherer Programmieraufwand, aber damit sollte > das gewünschte Verhalten des Formulares realisierbar sein... Auf ähnliche Weise versuche ich das gerade. Allerdings umgehe ich noch das Holen der Daten, indem ich alle Daten in das erste Formular packe und anhand einer Abfrage und einer einzeiligen Tabelle die Daten befülle. Dann speichere ich die Änderungen in dieser einzeiligen Tabelle ruhig ab, vergleiche per Makro mit den eigentlichen Tabellen und schreibe die Daten schließlich in die Ausgangstabellen, wie ich sie haben will. Der Aufwand ist allerdings mittlerweile fast genauso groß wie das Erstellen eines Datenbankformulars incl. Abspeicherfunktion fürs Web (PHP ...). Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hallo Robert, Am 17.10.2010 09:41, schrieb Robert Großkopf: > Damit sind wir im Prinzip beim 2. Problem. Ich kann zwar per Makro darauf > aufmerksam machen, dass noch irgendwelche Eingaben fehlen, aber leider ist > der > Datensatz ja schon geschrieben. Damit produziere ich also nur ein > nichtssagendes Fensterchen - beim nächsten Aufruf habe ich dennoch eine > "Adresse", die nur aus einer Straße besteht. > Wenn Du schon ein Makro in die Hand nimmst, kannst Du das Problem auch mit ungebundenen Feldern lösen. Wenn Du die Daten speichern willst, sammelst Du sie aus den Textfeldern ein und schreibst sie mittels SQL in die Datenbank. Bei Auswahl eines Datensatzes holst Du die Daten per SQL und schreibst sie in die ungebundenen Felder. Bei Reset löschst Du den Inhalt der Felder... Ist freilich ein erheblich höherer Programmieraufwand, aber damit sollte das gewünschte Verhalten des Formulares realisierbar sein... - -- Viele Grüße Heiko -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.16 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAky7O18ACgkQiEy3fOspk/PWbwCcCrUhyCqzpJuQ+mz1bPr4IeFz 88sAnRFjTZcrASqE8JHNhwU6OS2HtDzO =u5ei -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Jens, > > > Ich muss bei so einem Formular ja davon ausgehen, dass es andere Leute > > benutzen. Deswegen auch die Nutzung mit der Maus. Außerdem machen > > Listfelder bzw. Kombinationsfelder doch arg Probleme, wenn ich da ohne > > die Maus arbeiten will. > > Stimmt, ich habe aber mal folgendes gemacht: > Ich habe die Datenbank mit der Software aus Redmond nachgestaltet, auch > hier hast du das selbe Problem, klickt man auf das Formular wird > gesepeichert und wenn die Eingabe in das Datenfeld zwingend war. Kommt > eine Fehlermeldung. Das "lgeiche" oder besser ähnliche Verhalten wie bei > Base. > > Ich glaube das sich Formulare so verhalten sollten, aus meiner ERfahrung > heraus mit Datentypisten weiß ich das sie die Texteingane bevorzugen. > Deshalb ist zum Beispiel die Mausbedienung auch nicht unbedingt > empfehlenswert bei der Eingabe von Daten in Excel oder Calc. Aber das > geht jetzt zu weit, was ich damit sagen möchte vermutlich ist es ratsam > manchmal den Nutzer nicht einfach frei laufen zu lassen sondern ihn > vorher einzuweisen was und wie er was machen soll. ... da sind meine Datenbanken unter PHP/Apache/MySQL dann doch wohl deutlich ergonomischer zu nutzen. Nur gibt es leider bei zu vielen Leuten in meiner Umgebung nicht die Möglichkeit, sich eben mit ein paar Klicks einen kompletten Webserver aufzusetzen - die meisten haben eben kein Linux. Da wollte ich dann das ein-Dateien-Format von OpenOffice nutzen. Gestaltet sich nur leider etwas aufreibender als ich mir das vorgestellt habe. Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Robert, Ich muss bei so einem Formular ja davon ausgehen, dass es andere Leute benutzen. Deswegen auch die Nutzung mit der Maus. Außerdem machen Listfelder bzw. Kombinationsfelder doch arg Probleme, wenn ich da ohne die Maus arbeiten will. Stimmt, ich habe aber mal folgendes gemacht: Ich habe die Datenbank mit der Software aus Redmond nachgestaltet, auch hier hast du das selbe Problem, klickt man auf das Formular wird gesepeichert und wenn die Eingabe in das Datenfeld zwingend war. Kommt eine Fehlermeldung. Das "lgeiche" oder besser ähnliche Verhalten wie bei Base. Ich glaube das sich Formulare so verhalten sollten, aus meiner ERfahrung heraus mit Datentypisten weiß ich das sie die Texteingane bevorzugen. Deshalb ist zum Beispiel die Mausbedienung auch nicht unbedingt empfehlenswert bei der Eingabe von Daten in Excel oder Calc. Aber das geht jetzt zu weit, was ich damit sagen möchte vermutlich ist es ratsam manchmal den Nutzer nicht einfach frei laufen zu lassen sondern ihn vorher einzuweisen was und wie er was machen soll. Ich habe jetzt leider keinen Rat mehr wie man die Datenbank ändern kann, außer sie von neuen so zu erstellen, damit man das Problem umgehen kann. Sorry ... Jens - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Jens, > > > ich kann den Fehler bestätigen und finde ihn so sehr lästig! > > Ich arbeite aber anders, ich wechsle die Dateneingabenfelder nicht mit > > der Maus, daher fällt mir das nicht auf. > > Ich muss bei so einem Formular ja davon ausgehen, dass es andere Leute > benutzen. Deswegen auch die Nutzung mit der Maus. Außerdem machen > Listfelder bzw. Kombinationsfelder doch arg Probleme, wenn ich da ohne die > Maus arbeiten will. > > > > [...] > > > Vielleicht ist dieses Verhalten so gewollt - Datensicherheit bringt es > > > aber nicht, zumal es ja innerhalb des Hauptformulars anders > > > funktioniert. > > > > Glaube ich nicht, eine so genutzte Eingabe ist sehr speziell, vermutlich > > nutzt nicht jeder den Haken Datensatzeingabe erforderlich. > > Für mich sehe ich im Augenblick nur 2 Möglichkeiten: Keine Arbeit mit > Unterformularen sondern > - mit nebeneinander liegend Formularen oder Gerade getestet - geht nicht. Das erste Formular wird als das Formular angesehen, das auch den gesamten Anzeigehintergrund bestimmt. Sobald ich mich aus dem 2. Formular raus bewege (Mausklick) wird das 2. Formular abgespeichert. Sobald ich mich aus dem ersten Formular in ein Formularfeld des 2. Formulars bewege wird das erste Formular abgespeichert. > - mit einer temporären Tabelle, die den gesamten Inhalt eines bisherigen > Formulars in einem Datensatz anzeigt. Zur Zeit nutze ich den Mitgliedsnamen > als Filter für die Eingabetabellen - was in der 3.2 ja leider nicht > funktioniert (keine Eingabe in gefilterte Datensätze ...), erst wieder in > der 3.3. Diesen Weg werde ich jetzt einmal versuchen. Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Jens, > > ich kann den Fehler bestätigen und finde ihn so sehr lästig! > Ich arbeite aber anders, ich wechsle die Dateneingabenfelder nicht mit > der Maus, daher fällt mir das nicht auf. Ich muss bei so einem Formular ja davon ausgehen, dass es andere Leute benutzen. Deswegen auch die Nutzung mit der Maus. Außerdem machen Listfelder bzw. Kombinationsfelder doch arg Probleme, wenn ich da ohne die Maus arbeiten will. > > > [...] > > Vielleicht ist dieses Verhalten so gewollt - Datensicherheit bringt es > > aber nicht, zumal es ja innerhalb des Hauptformulars anders > > funktioniert. > > Glaube ich nicht, eine so genutzte Eingabe ist sehr speziell, vermutlich > nutzt nicht jeder den Haken Datensatzeingabe erforderlich. Für mich sehe ich im Augenblick nur 2 Möglichkeiten: Keine Arbeit mit Unterformularen sondern - mit nebeneinander liegend Formularen oder - mit einer temporären Tabelle, die den gesamten Inhalt eines bisherigen Formulars in einem Datensatz anzeigt. Zur Zeit nutze ich den Mitgliedsnamen als Filter für die Eingabetabellen - was in der 3.2 ja leider nicht funktioniert (keine Eingabe in gefilterte Datensätze ...), erst wieder in der 3.3. Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Robert, ich kann den Fehler bestätigen und finde ihn so sehr lästig! Ich arbeite aber anders, ich wechsle die Dateneingabenfelder nicht mit der Maus, daher fällt mir das nicht auf. [... ] Mit diesem Speicherverhalten lässt sich also nicht festlegen, dass bestimmte Felder auf jeden Fall ausgefüllt werden müssen. Es führt dazu, dass ich in Datenbanken, die ich unter Base bedienen will, "Eingabe erforderlich" grundsätzlich ausschalte und per Makro anschließend nachsehen lasse, ob auch die erforderlichen Felder ausgefüllt wurden. Bei meiner kleinen Datenbank komme ich recht gut klar wenn ich nur mit der Tabulatortaste in Unterformular arbeite, erst wenn ich die Eingabe im Unterformular beende und einen Datensatz vergesse (der eine Eingabe zwingend benötigt) meldet sich Base. *wunder* Damit sind wir im Prinzip beim 2. Problem. Ich kann zwar per Makro darauf aufmerksam machen, dass noch irgendwelche Eingaben fehlen, aber leider ist der Datensatz ja schon geschrieben. Damit produziere ich also nur ein nichtssagendes Fensterchen - beim nächsten Aufruf habe ich dennoch eine "Adresse", die nur aus einer Straße besteht. ja ... [...] Vielleicht ist dieses Verhalten so gewollt - Datensicherheit bringt es aber nicht, zumal es ja innerhalb des Hauptformulars anders funktioniert. Glaube ich nicht, eine so genutzte Eingabe ist sehr speziell, vermutlich nutzt nicht jeder den Haken Datensatzeingabe erforderlich. Ich melde mich "gleich" nochmal, ich bastle noch an was. Jens - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Jens, > > Bei mir ist es so, im Unterformular (Adressdaten) ändere ich zum > Beispiel einen Straßennamen, das Icon für "DAtensatz speichern" ist in > der Symbolleiste inaktiv. Ich lösche einige Buchstaben und das Icon wird > aktiv, ich ändere den Straßennamen und klicke auf das Formular, es wird > gespeichert. Das selbe auch wenn ich per Tabulator-Taste weiter springe. > > Ich vermute mal das ist so gewollt ist, mein PC (Linux + sehr kleine DB) > speichert aber so schnell, das es mir nicht auffällt. > > Es wäre auch schlecht, in meinen Augen, wenn er bei einer Datenbank > nicht bei jeder Änderung speichern würde. > > Kannst du mir / uns vielleicht erklären was bei deinem Speichervorgang > negatives in deinen Augen passiert. 1. Grund auf jeden Fall, warum das meines Erachtens nicht sein darf. Ich nehme einfach einmal das Adressbeispiel. Damit ich jemanden mit einer Adresse erreiche brauche ich in der Regel Postleitzahl, Ort und Straße. Die Nummer ist an manchen Orten vermutlich nicht zwingend. Es sollte also keinen Datensatz geben, in dem nicht Postleitzahl, Ort und Straße abgespeichert sind. Als Datenbänkler lege ich das bereits bei der Konstruktion meiner Tabellen fest. In der GUI von Base klicke ich "Eingabe erforderlich" an. Nun habe ich also 3 Felder in meiner Adresstabelle, die eine Eingabe erforderlich machen. Ich gebe den ersten Wert ein, klicke auf das Formular und eine Fehlermeldung kommt. Dieses "auf-das-Formular-klicken" ist übrigens auch bei Auswahlfeldern und bei Datumsfeldern, die mit einer Monatsansicht versehen sind, bereits gegeben. Aus diesem Grunde habe ich anfangs die Reihenfolge von Feldern im Formular ändern müssen und darauf achten müssen, dass die Bewegung mit dem Tabulator erfolgt - da wird nämlich nur dann gespeichert, wenn der Tabulatorsprung das Formular verlässt. Mit diesem Speicherverhalten lässt sich also nicht festlegen, dass bestimmte Felder auf jeden Fall ausgefüllt werden müssen. Es führt dazu, dass ich in Datenbanken, die ich unter Base bedienen will, "Eingabe erforderlich" grundsätzlich ausschalte und per Makro anschließend nachsehen lasse, ob auch die erforderlichen Felder ausgefüllt wurden. Damit sind wir im Prinzip beim 2. Problem. Ich kann zwar per Makro darauf aufmerksam machen, dass noch irgendwelche Eingaben fehlen, aber leider ist der Datensatz ja schon geschrieben. Damit produziere ich also nur ein nichtssagendes Fensterchen - beim nächsten Aufruf habe ich dennoch eine "Adresse", die nur aus einer Straße besteht. Das 3. Problem ist das, was mich momentan beschäftigt: Bei der Datenbank handelt es sich um eine Vereinsverwaltung (die vor einiger Zeit geplante "Beispieldatenbank", die ich inzwischen für einen Sportverein nutze). Ich habe in diesem Verein viele Familien. Jetzt rufe ich ein Mitglied auf und bekomme im Unterformular (eigentlich sogar, wegen der zwischengeschalteten Gruppe, UnterUnterformular) die Adresse angezeigt. Ich ändere die Adresse, weil eins der Familienmitglieder ausgezogen, aber noch weiter im Verein ist. Ich möchte natürlich vermeiden, dass alle Familienmitglieder mit in die 1-Zimmer-Wohnung ziehen. Die sollen also ihre alte Wohnung behalten können. Da brauche ich dann eine Zwischenabfrage, die vom Prinzip her lautet "Bezieht sich die Änderung auf die gesamte Gruppe". Bei "Ja" ziehen alle mit, bei "Nein" schreibe ich die ausgezogene Person automatisch in eine neue Gruppe mit der neuen Adresse. Leider ist diese Zwischenabfrage unnütz, da vor der Abfrage bereits die Abspeicherung erfolgt ist, die Adresse also sowieso schon umgeschrieben wurde. Vielleicht ist dieses Verhalten so gewollt - Datensicherheit bringt es aber nicht, zumal es ja innerhalb des Hauptformulars anders funktioniert. Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Robert, Ich habe das so gelöst, dass einzelne Personen eingegeben werden, eine Gruppe zugewiesen werden und dieser Gruppe dann eine Adresse, ein Konto usw. zugewiesen wird. Über die Auswahl der Person komme ich an die Gruppe und anschließend an Adresse und Konto. Von der Logik her müsste die Gruppe als Auswahl stehen, die Personen als Unterformular. Nur ist das vom Eingabeablauf (Mensch gegen Maschine) problematisch. Was mich aber stört: Bei jedem Unterformular ist es so, dass beim Verlassen eines Feldes und Klicken auf den Hintergrund die Abspeicherung läuft. Die Zuordnung ist dabei überhaupt kein Problem. Das Verhalten ist bei 1:1- Formularen genauso wie bei 1:n usw. Jetzt macht es klick, oder Groschen ist endlich gefallen, ich habe mir eine Datenbank nach deinem Muster zusammengebaut und damit experimentiert. Bei mir ist es so, im Unterformular (Adressdaten) ändere ich zum Beispiel einen Straßennamen, das Icon für "DAtensatz speichern" ist in der Symbolleiste inaktiv. Ich lösche einige Buchstaben und das Icon wird aktiv, ich ändere den Straßennamen und klicke auf das Formular, es wird gespeichert. Das selbe auch wenn ich per Tabulator-Taste weiter springe. Ich vermute mal das ist so gewollt ist, mein PC (Linux + sehr kleine DB) speichert aber so schnell, das es mir nicht auffällt. Es wäre auch schlecht, in meinen Augen, wenn er bei einer Datenbank nicht bei jeder Änderung speichern würde. Kannst du mir / uns vielleicht erklären was bei deinem Speichervorgang negatives in deinen Augen passiert. Jens P.S. Danke, dein Problem zwinkt mich mal wieder mit einer Datenbak zu beschäftigen :-) - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Jens, > > > bei der Zusammenfassung mehrerer Formulare in einer Datenbank stoße ich > > jetzt wieder darauf, dass Base beim Mausklick neben ein Eingabefeld > > Änderungen in einem Unterformular bedingungslos abspeichert. > > Bewege ich mich nur in einem einfachen Formular, so kann ich nach > > Herzenslust auf der Formularfläche hin- und herklicken. Erst ein > > Schließen des Formulars macht mich darauf aufmerksam, dass noch Daten > > gespeichert werden müssten. Ich denke, dass es so auch im Unterformular > > möglich sein müsste - nur wie? > > > > Warum mich das automatische Abspeichern stört? > > Zum einen ist es nicht möglich, in einem Subformular (ohne Probleme) > > Felder einzufügen, die unbedingt einen Inhalt brauchen. Das führt dann > > gegebenenfalls zu einer Fehlermeldung. > > Zum anderen ist es nicht möglich, den Inhalt des Subformulars vorher nach > > bestimmten Kriterien (Vollständigkeit, Zusatzabfragen etc.) zu > > analysieren, bevor er abgespeichert wurde. > > Beispiel: Im Hauptformular steht eine Person (Name, Vorname), im > > Unterformular steht eine Adresse. Ändere ich die Adresse, so will ich > > klären, ob die Änderung sich nur auf die eine Person oder auf die > > gesamte Familie bezieht. Geht so nicht, weil stumpf abgespeichert wird. > > Trifft also immer alle. > > Ich glaube das ist kein Problem des speicherns sondern ein > Zuordnungsproblem. Deshalb die erklärende Frage ob der Datensatz der > Adresse, zum Beispiel des Familienvaters, auch mit seiner Tochter > verbunden ist? Oder die Adressen der beiden mit dem Hauptdatensatz? Das Beispiel ist in sofern etwas unglücklich, als es vom eigentlichen Problem ablenkt. > > Für mich klingt das so, als ob die Daten im Unterformular auf die > Familie verweisen und nicht auf die Familienmitglieder. > > Anders gesagt, da (so vermute ich) die beiden Formulare verbunden sind > werden die Änderungen auc hautomatisch den jeweiligen Hauptdatensatz > zugewiesen. > > Kannst du die zuweiseungen der Datenfelder eventuell noch ein wenig > erläutern. Ich habe das so gelöst, dass einzelne Personen eingegeben werden, eine Gruppe zugewiesen werden und dieser Gruppe dann eine Adresse, ein Konto usw. zugewiesen wird. Über die Auswahl der Person komme ich an die Gruppe und anschließend an Adresse und Konto. Von der Logik her müsste die Gruppe als Auswahl stehen, die Personen als Unterformular. Nur ist das vom Eingabeablauf (Mensch gegen Maschine) problematisch. Was mich aber stört: Bei jedem Unterformular ist es so, dass beim Verlassen eines Feldes und Klicken auf den Hintergrund die Abspeicherung läuft. Die Zuordnung ist dabei überhaupt kein Problem. Das Verhalten ist bei 1:1- Formularen genauso wie bei 1:n usw. Gruß Robert - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base: Wie automatisches Speichern Subform abschalten?
Hallo Robert, bei der Zusammenfassung mehrerer Formulare in einer Datenbank stoße ich jetzt wieder darauf, dass Base beim Mausklick neben ein Eingabefeld Änderungen in einem Unterformular bedingungslos abspeichert. Bewege ich mich nur in einem einfachen Formular, so kann ich nach Herzenslust auf der Formularfläche hin- und herklicken. Erst ein Schließen des Formulars macht mich darauf aufmerksam, dass noch Daten gespeichert werden müssten. Ich denke, dass es so auch im Unterformular möglich sein müsste - nur wie? Warum mich das automatische Abspeichern stört? Zum einen ist es nicht möglich, in einem Subformular (ohne Probleme) Felder einzufügen, die unbedingt einen Inhalt brauchen. Das führt dann gegebenenfalls zu einer Fehlermeldung. Zum anderen ist es nicht möglich, den Inhalt des Subformulars vorher nach bestimmten Kriterien (Vollständigkeit, Zusatzabfragen etc.) zu analysieren, bevor er abgespeichert wurde. Beispiel: Im Hauptformular steht eine Person (Name, Vorname), im Unterformular steht eine Adresse. Ändere ich die Adresse, so will ich klären, ob die Änderung sich nur auf die eine Person oder auf die gesamte Familie bezieht. Geht so nicht, weil stumpf abgespeichert wird. Trifft also immer alle. Ich glaube das ist kein Problem des speicherns sondern ein Zuordnungsproblem. Deshalb die erklärende Frage ob der Datensatz der Adresse, zum Beispiel des Familienvaters, auch mit seiner Tochter verbunden ist? Oder die Adressen der beiden mit dem Hauptdatensatz? Für mich klingt das so, als ob die Daten im Unterformular auf die Familie verweisen und nicht auf die Familienmitglieder. Anders gesagt, da (so vermute ich) die beiden Formulare verbunden sind werden die Änderungen auc hautomatisch den jeweiligen Hauptdatensatz zugewiesen. Kannst du die zuweiseungen der Datenfelder eventuell noch ein wenig erläutern. Jens - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org