🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

GELÖST: Migrationshilfe Access -> LO Base!

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

GELÖST: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Do 13. Jun 2013, 15:36

Hallo,

ich habe eine .mdb wo ich in einem Formular bestimmte Kenndaten eingeben konnte.
Diese wurden dann in einer Tabelle gespeichert und ausgedruckt. Eigentlich nicht sonderlich spektakulär.
Da wir nun kein Access mehr im Unternehmen haben wollte ich das Ganze mit Base bewerkstelligen.

Mein Plan war folgender:
  • Eingabe der Daten in die Formularmaske
  • Beim Knopfdruck werden die Daten gespeichert
  • Danach wird eine Abfrage ausgeführt, welches anhand der Formulardaten die Werte aus der Tabelle filtern. Die Abfrage gibt somit dieselben Werte aus, die man soeben eingegeben hat.
  • Das Abfrageergebnis ist dann Grundlage eines Berichts (Ausdruck)
Beim Dritten Punkt hapert es. :roll: Bei Access konnte man in einer Query einfach ein Objekt/Element aus einerm Formular als Filterkriterium definieren.

Wie bekomme ich das hin? Ich habe hier im Forum schon eine Lösung gesehen wo man über eine Filtertabelle an einzelne Datensätze kommt. Aber es war ein reiner Filter ohne Eingabe neuer Daten.
Oder hat jemand eine bessere Idee? Gibt es eine bessere Lösung?
Dateianhänge
Formular
Formular
Screenshot-2013-06-13_15.29.40.png (24.94 KiB) 5811 mal betrachtet
Zuletzt geändert von ms-fu! am Mo 17. Jun 2013, 15:02, insgesamt 1-mal geändert.

pmoegenb

Re: Migrationshilfe Access -> LO Base!

Beitrag von pmoegenb » Do 13. Jun 2013, 16:29

Da kann man Dir nur den Gesamtband-Handbuch für Base empfehlen.

ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

Re: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Do 13. Jun 2013, 17:25

Danke, aber ich habe nicht die Zeit mich im Detail mi LO Base zu beschäftigen.
Außerdem habe ich Kapitel 4+5 bereits überflogen und ich hatte nicht den Eindruck, daß ich die Lösung meines Problems vor mir habe. Ich konnte nichts über Werteübergabe aus Formularen zu Abfragen finden.

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Migrationshilfe Access -> LO Base!

Beitrag von RobertG » Do 13. Jun 2013, 21:07

Hallo ms-fu,

ein Formular kann nur an einer Position Daten speichern. Dies ist dann der Datensatz, auf den Du zugreifen willst. Für eine Abfrage müsstest Du den Primärschlüssel dieses Datensatzes am besten an anderer Stelle (z.B. eine Tabelle "Filter") noch einmal abspeichern. Dies geht so nur mit einem Makro.
Die Abfrage liest dann diesen Filterwert aus und ist die Grundlage für einen Bericht (Du willst ja drucken).
Auch den Bericht startest Du mit einem Makro. Das kannst Du dann ja direkt mit dem Button entsprechend kombinieren.

Um ein entsprechendes Makro zusammen zu stellen musst Du im Formularnavigator nachsehen, welche Bezeichnung Dein Formular, ggf. auch Dein Subformular sowie das Feld mit dem Primärschlüssel haben. Dann kannst Du den Wert des Feldes auslesen und weiter in einer anderen Tabelle abspeichern, damit genau dieser Wert der ist, den Du für die Abfrage nutzt.

Vielleicht stellst Du einfach einmal keinen Screenshot, sondern eine entsprechende DB (ohne wichtige Daten) hier ins Netz. Geht nur als gepackte Datei, da *.odb nicht zugelassen ist.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

Re: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Do 13. Jun 2013, 22:13

Herzlichen Dank, Robert, das ist doch mal eine Ansage!
Dann weiß ich jetzt in welche Richtung es geht. Muß ich mich doch noch mit Makros rumplagen.
Mehr dazu (Beispiel-DB) morgen, wenn ich wieder im Geschäft bin.

Gruß
Michael

ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

Re: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Fr 14. Jun 2013, 08:01

Hier nun die Datei..

Das Wesentliche steht eigentlich schon im ersten Beitrag.
Aber nochmals zum Verdeutlichen:
  • Die eingegebenen Werte im Formular sollen in der Tabelle "Spooldatei" gespeichert werden
  • Gleichzeitig muß nun die ID in der Tabelle "Filter" hinterlegt werden
  • Mit Hilfe der Tabelle "Filter" wird in der Abfrage "Werkstoff_Abfrage" ein Einzelwert gefiltert
  • "Werkstoff_Abfrage" ist die Grundlage für "Werkstoff_Bericht" (Ausdruck)
Dateianhänge
Beispiel.zip
Beispieldatenbank
(16.87 KiB) 199-mal heruntergeladen

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Migrationshilfe Access -> LO Base!

Beitrag von RobertG » Fr 14. Jun 2013, 16:24

Hallo ms-fu!,

ich habe das einmal passen gemacht. Mit Deiner Filter-Datei hättest Du nichts eingeben können, weil der Primärschlüssel gefehlt hat. Dann habe ich die Abfrage angepasst, das Makro eingebaut - jetzt läuft es wohl so, wie Du es haben willst.

Gruß

Robert
Dateianhänge
Beispiel.odb.zip
Überarbeitetes Beispiel mit Druck des aktuell gespeicherten Datensatzes - Neueingabe nicht überprüft.
(16.61 KiB) 212-mal heruntergeladen
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

Re: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Fr 14. Jun 2013, 16:36

Vielen Dank, Robert! Das ging ja sehr fix. :)
Werde das Ganze gleich am Montag testen, sobald ich wieder auf Arbeit bin.

Habe mir in der Zwischenzeit (mal wieder) mit der API beschäftigt, aber ich werde damit einfach "nicht warm".

ms-fu!
Beiträge: 22
Registriert: Mo 16. Jul 2012, 10:48

Re: Migrationshilfe Access -> LO Base!

Beitrag von ms-fu! » Mo 17. Jun 2013, 14:49

Hallo Robert,

deine Lösung funktioniert einwandfrei! Vielen Dank nochmals!! :)
Das hat mir nun auch im Weiteren den Einstieg in LO Basic erleichtert (Gerade kämpfe ich mit GridControl..).

Das Ganze ist ein ziemlicher Graus, vor allem da ich es nicht schaffe die Eigenschaften im Debugger nachzuvollziehen, denn früher (Access) konnte man vieles aus den Informationen des Debuggers ableiten. Hier sollte meiner Meinung nach noch einiges verbessert werden. Sei's drum. Die Grundfunktion geht und das ist nun erstmal das Wichtigste für mich.

Schönen Tag noch.

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: GELÖST: Migrationshilfe Access -> LO Base!

Beitrag von RobertG » Mo 17. Jun 2013, 15:39

Hallo ms-fu,

kleiner Hinweis zum GridControl:
Zum Formular kommst Du mit
oForm = oDrawpage.Forms.getByName("MainForm")
Zum Feld kommst Du mit
oFeld = oForm.getByName("GridControl")
Die Spalten sind nicht mit Namen erreichbar. Hier geht es dann weiter mit
oSpalte1 = oFeld.getByIndex(1)

Die entsprechenden Eigenschaften lesen viele Leute mit xray aus. Ich weiß allerdings nicht, wo das zur Zeit zu erhalten ist, habe es selbst auch nicht weiter genutzt. Ich arbeite da mit einem Betrachter aus dem Makro-Buch von Thomas Krumbein ...

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten