Hallo zusammen
Wir haben einen kleinen Online-Shop, in dem Kunden Produkte bestellen (was sonst

). Die Bestellungen werden in einer MySQL-Datenbank gespeichert.
Ganz vereinfacht sieht die Tabellen-Struktur der DB folgendermassen aus:
Code: Alles auswählen
Bestellungen:
+----------+-----------+-------------+
| order_id | firstname | lastname |
+----------+-----------+-------------+
| 1 | Bergamin | Jean-Pierre |
| 2 | Müller | Hans |
| 3 | Muster | Peter |
+----------+-----------+-------------+
Produktebestellungen:
+----------+----------+--------+
| order_id | prod_id | amount |
+----------+----------+--------+
| 1 | N01 | 1 |
| 2 | FR04 | 9 |
| 2 | N03 | 2 |
| 2 | N01 | 1 |
| 3 | FR04 | 1 |
| 3 | N03 | 1 |
+----------+----------+--------+
Produkte:
+---------+------------------+-------+
| prod_id | descr | price |
+---------+------------------+-------+
| N01 | MS Office | 1500 |
| FR04 | OpenOffice | 0 |
| N03 | StarOffice 6 | 80 |
+---------+------------------+-------+
Nun möchte ich daraus automatisch eine Rechnung im OpenOffice-Writer (1.1 RC3) generieren. Als einziger Parameter dient die Bestellnummer. Es sollte also ein Dokument anhand einer Bestellnummer erstellt werden im Stil von:
Code: Alles auswählen
Müller Hans
Bestellnummer 2
Sie haben bestellt:
9 FR04 OpenOffice Fr. 0.- Fr. 0.-
2 N03 StarOffice Fr. 80.- Fr. 160.-
1 N01 MS Office Fr. 1500.- Fr. 1500.-
Total Fr. 1660.-
Mein erster Versuch sieht nun so aus, dass ich ein Formular (namens Bestellung) kreiert habe, mit dem man durch die Tabelle "Bestellungen" browsen kann. Das ist schon mal sehr praktisch.
Ich habe jetzt herausgefunden, dass man bei einem Unterformular einen Parameter für eine SQL-Abfrage angeben kann (mit "Verknüpfen von order_id" und "Verknüpfen nach x"). Also benutze ich für das Unterformular "SQL-Befehl" als "Art des Inhalts" und als "Inhalt" "SELECT amount, prod_id, descr, price FROM Produktebestellungen WHERE order_id = : x"
Hier hänge ich nun fest. Im Unterformular (namens Produkte) kann ich nun durch die Produkte browsen, die bestellt wurden, aber ich schaffe es nicht, sie einfach untereinander auszugeben.
Ich könnte zwar ein Tabellen-Kontrollfeld in das Unterformular einbinden, doch das sieht für den Ausdruck nicht wirklich gut aus.
Wie kann ich nun Felder einfügen, die sich auf die Datensätze beziehen, die mit dem SQL-Befehl im Unterformular auslese? Ich hab verschiedenes versucht, wie "Bestellung.Produkte.prod_id". Das funktioniert aber leider nicht. Wenn ich die Datenquelle des Unterformulars anzeigen lassen und die Datensätze (sprich die bestellten Produkte) ins Dokument ziehe, wird auch nichts eingefügt.
Ich habe auch schon versucht, das ganze auf einem mit dem AutoPiloten erstellten Bericht aufzubauen, dort verstehe ich allerdings überhaupt nicht, wie der Bericht mit Daten gefüllt wird.
Vielen Dank für eure Hilfe.
Grüsse
James