Formularfeld via Makro befüllen

Das Textverarbeitungsprogramm

Moderator: Moderatoren

Twelve0fNine
Beiträge: 4
Registriert: Mi, 29.01.2014 10:06
Wohnort: Kassel

Formularfeld via Makro befüllen

Beitrag von Twelve0fNine »

Hi, habe folgendes Problem:
Ich habe ein Formular für ein Fax mit mehreren Feldern. Wenn der jenige der dieses Fax ausfüllt nun in einem dieser Formularfelder seinen Namen ausfüllt sollen alle anderen Felder die sich auf ihn Beziehen, wie z.B. "Abteilung" sich automatisch befüllen.

Code: Alles auswählen

REM  *****  BASIC  *****

Sub Main
	Dim sPartner, Testtext As string
	Dim Context, DB, Connection, QueryErg As Object
	Dim DBName, sSQL As String
	Dim Statement As Variant
End Sub

Sub Macro1

    sPartner = ThisComponent.DrawPage.Forms.getByIndex(0).getByName("ComboBox")
	
    DBName = "KR-DATA"
    Context = createUnoService("com.sun.star.sdb.DatabaseContext")
    DB = Context.GetByName (DBName)
    Connection = DB.GetConnection ("","")
    sSql = "SELECT `Abt` FROM `Mitarbeiter` WHERE `Gesprächspartner` = '"+sPartner.text+"';"    
    Statement = Connection.CreateStatement
    QueryErg = Statement.ExecuteQuery(sSql)
    Testtext = QueryErg.GetString(1)
    'ThisComponent.DrawPage.Forms.getByIndex(0).getByName("Textfeld 1").text = QueryErg.GetString(1)
    
    Connection.Close()
End Sub
aber leider funzt es nicht ... habt ihr ne Idee wo mein Fehler liegt? Dieses Makro wird gestartet nach Auswahl eines Eintages im Feld "Gesprächspartner" (ComboBox) ... die SQL-Abfrage ist richtig ... nur ab da komme ich nicht weiter
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Formularfeld via Makro befüllen

Beitrag von F3K Total »

Hi,
warum schreibst Du eine Makro Frage im WRITER-Forum?
Versuche es mal so:

Code: Alles auswählen

    if QueryErg.next then Testtext = QueryErg.GetString(1)
    ThisComponent.DrawPage.Forms.getByIndex(0).getByName("Textfeld 1").text = Testtext 
Gruß R
Antworten