[gelöst] Daten von Seite 1 auf angehängte Seite übernehmen
Verfasst: Mo, 04.04.2011 10:28
Hallo,
ich habe ein Hauptformular, dessen Textfelder über eine Datenbankabfrage gefüllt werden.
Nun gibt es weitere "unabhängige" Formulare die angehängt werden sollen. Beides funktioniert bis dahin.
Wie kann ich den jeweiligen Inhalt von den Textfelder des Hauptformular nach dem Anhängen des Unterformular in dessen Textfelder bringen?
Die Textfelder haben in Haupt- und Unterformular die gleichen Namen, nur Hauptform hat DB-Verbindung.
Formal ausgedrückt soll das etwa so funktionieren:
Gehe auf Seite 1 und gib mir den Inhalt von Textfeld1, trage diesen im Textfeld1 der Seite n (eigene) ein.
Textfeld2, 3, ... analog
Wie komme ich aber ausgehend von Seite n an die "Daten" von Seite1?
Bieher sieht das ganze (in Auszügen) so aus:
Hauptformular
Unterformular:
Danke schon mal im Voraus
ich habe ein Hauptformular, dessen Textfelder über eine Datenbankabfrage gefüllt werden.
Nun gibt es weitere "unabhängige" Formulare die angehängt werden sollen. Beides funktioniert bis dahin.
Wie kann ich den jeweiligen Inhalt von den Textfelder des Hauptformular nach dem Anhängen des Unterformular in dessen Textfelder bringen?
Die Textfelder haben in Haupt- und Unterformular die gleichen Namen, nur Hauptform hat DB-Verbindung.
Formal ausgedrückt soll das etwa so funktionieren:
Gehe auf Seite 1 und gib mir den Inhalt von Textfeld1, trage diesen im Textfeld1 der Seite n (eigene) ein.
Textfeld2, 3, ... analog
Wie komme ich aber ausgehend von Seite n an die "Daten" von Seite1?
Bieher sieht das ganze (in Auszügen) so aus:
Hauptformular
Code: Alles auswählen
' Database
Dim Context As Object, DB As Object, Connection As Object, QueryErg As Object
Dim DBName As String, SQL As String
Dim Statement As Variant
' FormObjects
Dim oForm As Object
Dim oText(11)
'--------------------------------------------------------------------------------------------- Baustelle!
'Sub clearForm
'end Sub
'--------------------------------------------------------------------------------------------- Teilbaustelle!
Sub Value_ANr
'clearForm
oANr = inputBox ("Auftragsnummer","Eingabe erforderlich","Bitte Auftragsnummer eingeben")
oForm = thisComponent.drawpage.forms.getbyindex(0)
oText(1) = oForm.getByName("o_anrede")
oText(2) = oForm.getByName("o_name")
oText(3) = oForm.getByName("o_titel")
oText(4) = oForm.getByName("o_strasse")
oText(5) = oForm.getByName("o_ort")
oText(6) = oForm.getByName("r_anrede")
oText(7) = oForm.getByName("r_name")
oText(8) = oForm.getByName("r_titel")
oText(9) = oForm.getByName("r_strasse")
oText(10) = oForm.getByName("r_ort")
oText(11) = oForm.getByName("langtext")
oEdit = oForm.getByName("chk_edit")
DBName = "REPARATUR"
Context = createUnoService("com.sun.star.sdb.DatabaseContext")
DB = Context.GetByName (DBName)
Connection = DB.GetConnection ("","")
Sql = "SELECT `objekt_anrede`,`objekt_name`,`objekt_titel`,`objekt_strasse`,`objekt_ort`,`rechnung_anrede`,`rechnung_name`,`rechnung_titel`,`rechnung_strasse`,`rechnung_ort`,`langtext` FROM `REPARATUR` WHERE `key` = '"+oANr+"';"
Statement = Connection.CreateStatement
QueryErg = Statement.ExecuteQuery(SQL)
for i = 1 to 11
oText(i).text = trim(QueryErg.GetString(i))
if i = 11 then
TempText = trim(QueryErg.GetString(i))
oText(i).text = Replace(TempText, Chr(10)+ Chr(13), "")
end if
next i
Connection.Close()
if oEdit.state(1) then
for i = 1 to 10
oText(i).ReadOnly = false
next i
end if
End Sub
Code: Alles auswählen
' FormObjects
Dim oForm As Object
Dim oText(5)
Sub fillForm
oForm = thisComponent.drawpage.forms.getbyindex(0) <-- 0= Seitenzahl? also Seite1?
oText(1) = oForm.getByName("o_anrede")
oText(2) = oForm.getByName("o_name")
oText(3) = oForm.getByName("o_titel")
oText(4) = oForm.getByName("o_strasse")
oText(5) = oForm.getByName("o_ort")
for i = 1 to 5
oText(i).text =... ???
next i