von gigabert » Do, 17.09.2009 14:21
Hallo,
ich möchte in einem Formular einen neuen Datensatz eintragen und 3 Felder mit Eingaben aus einem Dialog vorbelegen. Das mit dem neuen Datensatz im Formular habe ich mittels einem anderen Thread gelöst bekommen. Ich schaffe es auch, die Felder aus dem Dialog auszulesen und in das Formular zu schreiben. Danach setze ich den Fokus in das nächste Feld und möchte weitere Eingaben machen und das Formular (den neuen Datensatz) dann speichern. Aber es gibt eine Fehlermeldung, dass die vorbelegten Felder keinen Inhalt hätten (wahrscheinlich von der Datenbank, weil die Felder dort mit NOT NULL angelegt sind). Dort ist aber auf jeden Fall ein eingetragener Text zu sehen. Ich vermute mal, dass ich den Eingabefeldern des Formulares den Wert falsch zuweise. Wenn ich in die vorbelegten Textfelder gehe und Text eingebe, dann gibt es keine Fehlermeldung und der Text kann auch in die Datenbank eingetragen werden. Ich dachte auch, ich hätte irgendwo mal gelesen, dass es zwei verschiedene Möglichkeiten gibt, einmal nur Text zuzuweisen und einmal einen Wert, der dann auch dem ResultSet zugewiesen wird. Aber ich finde das nirgendwo mehr. Vielleicht kann mir ja wer weiterhelfen.
Hier kommt mal der relevante Basic-Code:
Code: Alles auswählen
...
oDoc = ThisComponent
oForm = oDoc.drawpage.forms.getByName("MainForm")
oForm.ApplyFilter = false 'Filter aufheben
oForm.reload()
oForm.moveToInsertRow() 'neuer Datensatz im Formular
REM *** Felder vorbelegen ***
oForm.getByName("txtNachname").text = sNachname
oForm.getByName("txtVorname").text = sVorname
oForm.getByName("txtMatrikelnr").text = sMatrikelnr
FocusSetzen("txtCO") 'Fokus ins nächste Feld setzen
...
Gruss
Bert
Hallo,
ich möchte in einem Formular einen neuen Datensatz eintragen und 3 Felder mit Eingaben aus einem Dialog vorbelegen. Das mit dem neuen Datensatz im Formular habe ich mittels einem anderen Thread gelöst bekommen. Ich schaffe es auch, die Felder aus dem Dialog auszulesen und in das Formular zu schreiben. Danach setze ich den Fokus in das nächste Feld und möchte weitere Eingaben machen und das Formular (den neuen Datensatz) dann speichern. Aber es gibt eine Fehlermeldung, dass die vorbelegten Felder keinen Inhalt hätten (wahrscheinlich von der Datenbank, weil die Felder dort mit NOT NULL angelegt sind). Dort ist aber auf jeden Fall ein eingetragener Text zu sehen. Ich vermute mal, dass ich den Eingabefeldern des Formulares den Wert falsch zuweise. Wenn ich in die vorbelegten Textfelder gehe und Text eingebe, dann gibt es keine Fehlermeldung und der Text kann auch in die Datenbank eingetragen werden. Ich dachte auch, ich hätte irgendwo mal gelesen, dass es zwei verschiedene Möglichkeiten gibt, einmal nur Text zuzuweisen und einmal einen Wert, der dann auch dem ResultSet zugewiesen wird. Aber ich finde das nirgendwo mehr. Vielleicht kann mir ja wer weiterhelfen.
Hier kommt mal der relevante Basic-Code:
[code]...
oDoc = ThisComponent
oForm = oDoc.drawpage.forms.getByName("MainForm")
oForm.ApplyFilter = false 'Filter aufheben
oForm.reload()
oForm.moveToInsertRow() 'neuer Datensatz im Formular
REM *** Felder vorbelegen ***
oForm.getByName("txtNachname").text = sNachname
oForm.getByName("txtVorname").text = sVorname
oForm.getByName("txtMatrikelnr").text = sMatrikelnr
FocusSetzen("txtCO") 'Fokus ins nächste Feld setzen
...[/code]
Gruss
Bert