Formular / Subformular Problem: Synchronisierung der Abfrage

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

GBorn
Beiträge: 2
Registriert: Mo, 09.02.2004 21:08

Formular / Subformular Problem: Synchronisierung der Abfrage

Beitrag von GBorn »

Hallo, wer kann mir einen Tipp geben. Ich habe testweise zwei Tabellen Bestellung und Bestelldetails in MySQL angelegt. In einem Formular sollen nun in einem Textfeld die Datensätze des Felds "BestNr" eingeblendet werden (funktioniert auch).

In einem Unterformular habe ich ein Datagrid hinterlegt, welches mir die Datensätze der Tabelle "Bestelldetails" anzeigen soll. Hierzu wurde in den Formulareigenschaften des Unterformulars die korrekte Datenquelle (Firma) eingetragen. Das Feld "Art des Inhalts" steht auf SQL-Befehl und der Wert der Eigenschaft "Inhalt" ist "Select * from Bestelldetails where BestNr =:c1". C1 soll die Speichervariable zur Feldsynchronisation sein. Der Schreibweise nach wäre diese eine Parameterabfrage.

Im Feld "Verknüpfen von" steht der Wert "BestNr", was einem Feldnamen in der Tabelle "Bestellung" entspricht. Im Feld "Verknüpfen nach" steht die Variable "c1". So weit so gut.

Wenn ich jetzt jedoch das Formular aktiviere, erscheint statt der erwarteten Synchronisation der Tabellen bei mir das Dialogfeld "Parameter-Eingabe" und ich muss den Wert für das Feld "BestNr" eintippen. Dann werden im Subformular die Werte der SQL-Abfrage mit den Bestelldetails korrekt angezeigt. Aber eine Synchronisation zwischen den Tabellen findet nicht statt - blätter ich im Hauptformular, tut sich nichts im Unterformular.

Ich hätte jetzt aber (nach dem Lesen der Beschreibung "how_to_link_tables_using_named_parameters" und dem Lesen des Issues 19950 (de.openoffice.org/issues/show_bug.cgi?id=19950) erwartet, dass die Werte "Verknüpfen von" und "Verknüpfen nach" das Feld "BestNr" in der Tabelle "Bestellung" dynamisch zur Synchronisation des Subformulars benutzt werden.

Was mache ich falsch, oder was habe ich übersehen, dass bei mir eine Parameterabfrage als Dialog erscheint. Die Angabe :c1 im SQL-Befehl generiert ja eine Parameterabfrage. Wieso klappt es beim Beispiel aus Issue 19950? Müssen die Namen der Kontrollelemente mit dem Feldnamen übereinstimmen?

Ist das Problem mit dem EnableParameterNameSubstitution in OO 1.1 bzw. SO 7 behoben, oder muss man das Makro nach wie vor einbinden. Hab mal den Makrocode versuchsweise in das Formulardokument eingebaut, hat aber nichts gebracht.

Es ist zum Haare ausraufen - aber ich komm nicht auf den Fehler. Hat vielleicht jemand ähnliche Probleme gehabt und kennt die Lösung? Wer kann mir noch einen Tipp geben (abgesehen davon, sich beim Friseur einen Mecki schneiden zu lassen - von wegen Haare ausraufen ...;-).

Danke

G. Born

GBorn_NoSpam@web.de