Hallo alle,
nach langer erfolgloser Suche und viel probieren, wende ich mich an alle Mitglieder in diesem Board.
Folgendes Problem:
Unter Base habe ich ein Formular erstellt, das 3 MySql tabellen aus einer Datenbank verwalten soll (referent, vortrag, termin). Die Tabelle refernt enthält keine Verknüpfung zu anderen Tabellen. 'vortrag' verweist auf referent (mit refid) termin enthält 'vorid' aus vortrag.
Problem:
über Referent und Vortrag wähle ich eine 'vorid' aus. Diese möchte ich in das Feld 'vorid' in termin eintragen.
Hier der gedachtte und mehrmals verworfene code:
Code: Alles auswählen
Sub VORinVA
Dim refid as Integer
Dim I as Integer
Dim oDoc as Object
Dim oMyForm as Object
Dim oMyForm1 as Object
Dim oMyForm2 as Object
Dim oControl as Object
Dim DatabaseContext as Object
Dim forms as Object
Dim oMyFormDoc as Object
Dim datensatz as Object
Dim feld as Object
Dim Meldung as String
Dim oText as String
DataBaseContext = createUNOService("com.sun.star.sdb.DatabaseContext")
forms = DatabaseContext.getByName("forum").DatabaseDocument.getFormDocuments()
oMyForm1 = forms.getByName("Termin_neu").getcomponent().DrawPage.Forms.getbyname("Referent")
oControl = oMyForm1.getbyName("Vortrag").getbyName("fmtVORID")
oText = oControl.text
oMyForm = forms.getByName("Termin_neu").getcomponent().DrawPage.Forms.getByName("Termin")
'xRay oMyForm
oControl = oMyForm.getByName("fmtVORID")
'datensatz = oMyForm.createResultSet()
'feld = datensatz.Columns.getbyName("VORID")
'xRay datensatz
'msgBox Cstr(feld.value)
'xRay oControl
'xRay feld
'feld.isWriteable = true
'feld.value = oText
'oControl.text = oText
'msgBox oControl.currentValue
if oControl.currentValue <> oText Then
Meldung = "Bitte '"+oText+"' in Feld VORID eingeben!"
msgBox Meldung
end if
End Sub
Der richtige Text wird in oControl.text eingetragen und angezeigt. Leider stehe ich auf dem Schlauch, wenn es nun darum geht das unter 'fmtVORID' liegende Datenfeld zu modifizieren. (.currentvalue ändert sich nicht; feld.value ist schreibgeschützt).
Kann mir jemand auf die Sprünge helfen?
Vielen Dank
Christian