Seite 1 von 1

Re: Problem bei Verknüpfung mit Subformular

Verfasst: Mo, 04.05.2009 12:24
von Tomtiger66
Hallo,
Hier ist mein Problemdokument zur Ansicht:
Das betreffende Formular heisst "Listenfeld-Einheiten"
Das Macro ist aktiviert, daher läuft die Auswahl aus dem Listenfeld ins leere.
Um das Macro schnell zu deaktivieren ist es am einfachsten die Nachfrage nach der Macroaktivierung
beim öffnen des Dokuments zu verneinen. (falls Macrosicherheit auf mittel eingestellt ist)
DB-mit Listbox-bug.odb
(39.7 KiB) 105-mal heruntergeladen

Thomas

Ein Problem gelöst, aber neues aufgetaucht

Verfasst: Sa, 09.05.2009 21:26
von Tomtiger66
Hallo, habe das Problem mit dem Listenfeld selbst lösen können: Einfach eine neue Tabelle erstellt und die Felder "Id sowie Hausnummer erstellt. Die restlichen Felder habe ich dann aus der alten Tabelle mit Copy & Paste eingefügt.
Nachdem ich sie mit dem Formular Listenfeld-Einheiten verknüpft hatte, blieb der ausgewählte Name in dem Listenfeld nach dem aktualisieren über den Push-Button stehen.
Das aktualisieren über das Macro geht leider immer noch nicht, da muß der Fehler woanders liegen.
Nun hat sich ein anderes Problem ergeben: Ich wollte danach die alte Tabelle löschen, aber sie will sich nicht löschen lassen.
Die Fehlermeldung lautet
Table is referenced by a constraint in table SYS_REF_SYS_FK_85_89 table: Konto in statement [DROP TABLE "Einheiten"]
. Ich habe aber meine Abfragen und Formulare durchgeguckt, es existiert keine(s) mehr mit einer Verknüpfung zu "Einheiten"
Was kann man hier tun?
Und wie komme ich mit dem Macro weiter?

Bin Anfänger in Base und habe bisher nur ein bisschen mit Lotus Approach gemacht. Diese Datenbank,an der ich hier arbeite soll eine Häuser- und Mieter- Verwaltungsdatenbank für den kleinen Wohnpark sein, in dem ich seit kurzem wohne. Da mir der Opensource-Gedanke gefällt, würde ich das Projekt gerne mit Open Office machen. Wenn sie dann fertig ist, würde ich sie auch gerne als Open Source-Projekt zur Verfügung stellen.
Als Literatur nutze ich das Buch "Datenbanken mit OpenOffice.org 3 Base..", aus dem ich auch das Macro habe. Leider komme ich mit den Infos über Macros in dem Buch nicht so recht weiter, wenn ich das gelesene richtig verstanden habe, müsste es eigentlich so funktionieren.

Über eine Antwort in diesem bisher eher stillen Forum würde ich mich sehr freuen
Noch mal vielen Dank im Vorraus,


Thomas

Re: Problem bei Verknüpfung mit Subformular

Verfasst: Sa, 09.05.2009 22:51
von eBayer
das sieht mir ganz nach einer aktiven, noch nicht aufgelösten Beziehung aus.
hast Du da mal nachgeschaut? wäre logisch, daß Du keine Tabelle löschen kannst, wenn sie noch mit einer andern verknüpft ist.
hast Du möglicherweise mal mit Beziehungen herumprobiert und bist Dir dessen nicht mehr bewusst?
Du findest es unter Extras - Beziehungen.
Gruss, eBayer

Re: Problem bei Verknüpfung mit Subformular

Verfasst: Sa, 09.05.2009 23:18
von Tomtiger66
Hallo eBayer,
Treffer, das war es, vielen Dank! Hatte die Tabellen dort tatsächlich miteinander verknüpft. :D
Fehlt jetzt nur noch die Sache mit dem Macro.

LG

Thomas

Re: Problem bei Verknüpfung mit Subformular

Verfasst: Do, 11.06.2009 23:34
von Tomtiger66
Hallo,
Nun hat sich die Sache vollständig geklärt.
1. Der Fehler mit dem leeren Listbox-Feld nach der Auswahl eines Items lag an daran, das in beiden Tabellen die Verknüpften Felder zwar vom gleichen Feldtyp Typ [CHAR] waren, aber die Zeichen-Länge in der einen Tabelle mit 50, in der Anderen jedoch mit 4 Zeichen angegeben waren! Vielleicht können die Leute, die sich das von mir angehängte Beispiel runtergeladen haben, ein Feedback posten, ob es bei euch auch funktioniert.. ;)

2. Zu dem Macro: ich habe dann in einem englischen Forum ein Macro gefunden und so angepasst, das die Daten des Formulars gleich gespeichert werden, so das man keine Rückfrage beim schließen bekommt. Die auskommentierten Zeilen sind Variationen. Vielleicht können sie ja noch von Nutzen sein:

Code: Alles auswählen

Sub Reload_aus_Forum (oEv as object) 

oEv.source.model.commit()   '... commits the value from the combobox into its bound field 
'   oEv.source.model.parent.GetByName("Name_des_Unterformulars_1").Reload()   '... reloads the subform. 
'   oEv.source.model.parent.GetByName("Name_des_Unterformulars_2").Reload()   '... reloads the subform. 
oForm = ThisComponent.drawpage.forms.getByName("Name_des_Hauptformulars")
	oForm.updateRow()      'geänderten Datensatz speichern
	oForm.reload()        'Formular neu einlesen
Vielen Dank noch mal an eBayer für nette Unterstützung! :D

Thomas