Abfrage über ein Formular erstellen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Benutzeravatar
Ruckelshäuser
Beiträge: 8
Registriert: Do, 28.05.2009 11:25

Abfrage über ein Formular erstellen

Beitrag von Ruckelshäuser »

Hallo,

ist es in OOo Base möglich eine Abfrage über ein Formular auf Knopfdruck erstellen zu lassen ?

Dazu müssten die Informationen von Formularfeldern ausgewertet und eine Abfrage (SQL) generiert werden.

Grüße

Jens
OpenSuse 11.2 | OpenOffice 3.2 | MySQL 5.1.36 | Apache 2.2.13 (Linux/SUSE)
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: Abfrage über ein Formular erstellen

Beitrag von AndreasJBittner »

Hallo,

es ist wohl eher so, daß man eine Abfrage formuliert und sich das Ergebnis als/in einem Formular anzeigen läßt. Was ist denn der Hintergrund der Frage? Soll mit ja/nein-Boxen bestimmte Felder an-/ausgeblendet werden?

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
Benutzeravatar
Ruckelshäuser
Beiträge: 8
Registriert: Do, 28.05.2009 11:25

Re: Abfrage über ein Formular erstellen

Beitrag von Ruckelshäuser »

Hallo Andreas,

fogendes möchte ich realisieren.

Ich habe eine MySQL Adressdatenbank. Jeder Datensatz enthält eine ID, die diesen Datensatz eindeutig kennzeichnet.

Nun möchte ich die Personen aus der Adressdatenbank zu Aktionen, die diese Person gebucht hat, zuweisen.
Da ich aber nun nicht alle Adressdaten in der Buchungsdatenbank noch einmal haben möchte, möchte ich in der Buchungsdatenbank lediglich die ID des Datensatzes haben.
Soweit so gut, jetzt kommt die Bedienungsfreundlichkeit hinzu.
Es erschent mir nicht sinnvoll die ID bei der Buchung eingeben zu müssen, sondern ich möchte über ein Formular das "Produkt" aus der Buchungsdatenbank und die Tabelle der Adressen sehen. Nun möchte ich einen Adressdatensatz selektieren und dann über eine Schaltfläche (Button) lediglich die ID in der Buchungsdatenbank ablegen lassen.
Der eigentliche Schreibvorgang sollte über SQL problemlos machbar sein (hoffe ich jedenfalls), mein Problem ist jedoch das Auslesen der Tabelle, zur Ermittelung der ID per Knopfdruck.

Hoffentlich konnte ich die Problemlage ausreichend beschreiben.

Mit freundlichen Grüßen

Jens :-)
OpenSuse 11.2 | OpenOffice 3.2 | MySQL 5.1.36 | Apache 2.2.13 (Linux/SUSE)
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: Abfrage über ein Formular erstellen

Beitrag von AndreasJBittner »

Hallo Jens,

da brauchst Du doch keine Abfrage on the fly kreieren. Du hast eine Tabelle Kundendaten, in der jeder Kunde eine eindeutige ID hat, in Deiner "Bestell- oder Buchungs-DB" hast Du eine Spalte KundenID, die als ForeignKey definiert ist und die die KundenID enthält (das machst Du direkt in MySQL). Damit hast Du eine Beziehung zwischen den beiden Tabellen und Du brauchst jetzt nur ein Formular, daß die Bestelldaten in einem Subformular anzeigt. Et voila...
Du kannst Dir so in einer Liste im Subformular alle Bestellungen zu dem betreffenden Kunden anzeigen lassen. Ich hab sowas mal in MySQL/OOo gelöst, hab es aber nicht bei, kann ich am Wochenende zu Hause mal nachsehen.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
Benutzeravatar
Ruckelshäuser
Beiträge: 8
Registriert: Do, 28.05.2009 11:25

Re: Abfrage über ein Formular erstellen

Beitrag von Ruckelshäuser »

Hallo Andreas,

das wäre echt Prima, irgendwie habe ich da gerade Bohnen vor den Augen und komme nicht wirklich weiter.

Grüße

Jens :-)
OpenSuse 11.2 | OpenOffice 3.2 | MySQL 5.1.36 | Apache 2.2.13 (Linux/SUSE)
Benutzeravatar
Ruckelshäuser
Beiträge: 8
Registriert: Do, 28.05.2009 11:25

Re: Abfrage über ein Formular erstellen

Beitrag von Ruckelshäuser »

Ups, sorry,

jein... So soll es sein, bisher habe ich lediglich das Feld KundenID in der BuchungsDB, da steht aber noch nichts drin. Ich möchte das Feld über einen Button aus dem Formular heraus mit der ID füllen, aber halt so, dass die Anwender nicht erst die ID heraussuchen brauchen, sondern lediglich den Datensatz auswählen und dann auf den Knopf drücken.
Durch den Knopfdruck soll dann die ID aus der KundenDB in die BuchungsDB geschrieben werden... Oder verstehe ich Deine Antwort einfach nur falsch...

Grüße

Jens :-)
OpenSuse 11.2 | OpenOffice 3.2 | MySQL 5.1.36 | Apache 2.2.13 (Linux/SUSE)
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: Abfrage über ein Formular erstellen

Beitrag von AndreasJBittner »

Hallo Jens,

ja und nein. Wenn Du einen neuen Kunden/Bestellung anlegst, dann füllst Du den FK mit Deiner KdID, aber nicht im Formular sondern Du gibst es dem INSERT-statement mit. Wenn Du jetzt schon beide Tabellen sozusagen separat gepflegt hast mußt Du einmal die Zuordnung "händisch" eintragen (geht vielleicht mit einem UPDATE T_Best SET KdID .... WHERE ....).
Andererseits *mußt* Du ja schon in Deiner Bestell-Tabelle eine Information über den Kunden haben, sonst wüßtest Du ja nicht, was an wen gegangen ist. Stell doch mal das Ergebnis von DESCRIBE Kundentabelle und ~BestllTab ein, solange ich nicht genau weiß, was in Deinen Tabellen steht, kann ich Dir nicht helfen. Oder schick mal das CREATE-Script der beiden Tabellen, dann setz ich das mal in meiner DB auf.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
Antworten