Seite 1 von 1

Übernahme von DB-Daten nach Abfrage in Writer

Verfasst: Di, 21.11.2006 13:18
von oouserman
Hallo OpenOffice-User.

Ich möchte folgende Funktion realisieren, konnte aber im Forum
bisher keine Lösung zu diesem Problem finden:

Beim Öffnen eines bestimmten Dokumentenvorlage soll
eine kurze Eingabebox aufgehen, in welche ich eine
ID aus eine OO-Basedatenbank eingebe.

Je nachdem welche ID eingegeben wurde, soll
ohne große Umwege
in zuvor in dem Formular definierte Platzhalter
die Inhalte eingesetzt werden.

Es geht hierbei um eine firmeneinheitliche Briefvorlage, in welche
die Daten des Ansprechpartners aus der Datenbank
übernommen werden sollen.

Beispiel:

ID = 10
Anrede = Herr
Name = Mustermann
eMail = mustermann@email.zb

Beim öffnen der Vorlage wird nun abgefragt
(Eingabebox), welche
ID der Mitarbeiter hat und die Platzhalter werden nun
mit den Datenfeldern aus der Datenbank
(alternativ ginge auch eine CALC-Tabelle) gefüllt.

Hat hierzu jemand eine Idee?

Bin für jede Hilfe dankbar.

Verfasst: Di, 21.11.2006 13:35
von pmoegenb
Hallo oouserman,

ohne Basic und SQL geht dabei wohl nichts. Den Datensatz kannst Du mit einer SQL-Abfrage selektieren. Für das platzieren der Daten wirst Du aber Basic benutzen müssen. Folgende Beispiel öffnet eine Abfragebox:

Code: Alles auswählen

SELECT * FROM "TABELLE1" 
WHERE "ID" = :ID
und ermittelt den richtigen Datensatz.

Verfasst: Di, 21.11.2006 15:06
von oouserman
Hallo Peter,

vielen Dank für die superschnelle Antwort.

Hoffe ich nerve nicht aber...:

Da ich mit OO-Writer noch nicht soviel Erfahrung habe,
wie/wo platziere ich die SQL-Abfrage...?

Und wenn ich dann den Datensatz via SQL
ermittelt habe, kann ich dann nicht
einfach die (sonst manuell auszuführende) Funktion
"Daten in Felder" ausführen lassen?

Vielen Dank vorab.

Verfasst: Di, 21.11.2006 16:17
von pmoegenb
Hallo oouserman,
wie/wo platziere ich die SQL-Abfrage...?
In Base.
  • - Drucke F4 und es öffnet sich die Datenquelle-Übersicht.
    - Navigiere zu Deiner Datenquelle.
    - Klicke diese mit der rechten Maustaste an und wähle die Option Datenbankdatei bearbeiten.
    - Im Fenster OpenOffice.org Base im Teilfenster Datenbank Datenbank die Option Abfragen anklicken.
    - Im Teilfenster Aufgaben die Option Abfrage in SQL-Ansicht erstellen... anklicken.
Und wenn ich dann den Datensatz via SQL
ermittelt habe, kann ich dann nicht
einfach die (sonst manuell auszuführende) Funktion
"Daten in Felder" ausführen lassen?
Doch, natürlich.

Verfasst: Di, 21.11.2006 20:00
von oouserman
Hallo nochmal an alle Open-Office'rs,

die SQL-Abfrage funktioniert soweit; danke nochmals an Peter.

Die Funktion ist auf diesem Wege nur recht kompliziert zu erreichen
und selbst nach Selektierung des Datensatzes durch die Abfrage
kann die Funktion "Daten in Felder" nicht sofort ausgeführt werden ohne
den Datensatz im "Beamer" Taste (F4) nochmals anzuklicken.

Für den "normalen" User ist der Weg nach Start der Vorlage auch
ein wenig kompliziert.
Ich würde gerne bei uns im Betrieb OO durchsetzen und entwickele
aus diesem Grund einige einheitliche Vorlagen für alle Mitarbeiter.

Die Standartvorlage (Brief) würde ich gerne 'so' gestalten:

1. Öffnen der Vorlage im Writer
2. Es geht eine 'Inputbox' auf, in welche ich meine
Mitarbeiter-ID eingebe
3. Die Platzhalter (Sachbearbeiter/Rufnummer/E-Mail)
werden mit den Daten des Datensatzes
aus der Datenbank automatisch aktualisiert; ohne
das ich erst über F4 die Datenbank öffnen muß,
die Abfrage manuell starten, 'meine' Personal-ID anklicken,
dann den Button "Daten in Felder" anklicken muß und
dann mit F4 den "Beamer" wieder schließen muß

Hat das schonmal jemand 'so' realisiert...?

Danke im Voraus.
-------------------------
WinXPSP2 / OO 2.0.4