[Makro] Input übergibt Wert an SQL-Abfrage

amn.ssy

Erfahrenes Mitglied
Hallo,

nach diversen Tests mit einer Listbox (der Einfachheit halber) möchte ich den nachfolgenden Code auf eine Inputbox umstellen, der seinen Wert einer SQL-Abfrage übergibt und das Ergebnis in die Textfelder eines Writer-Formulares schreibt.

PHP:
' Globale Variablen für DB-Aktion
Dim Context, DB, Connection, QueryErg As Object
Dim DBName, sSQL As String
Dim Statement As Variant

' Globale Variablen für Objekte
Dim oDoc, oForm as Object

' Globale Variablen für PDF-Aktion
Dim datname, path, extension, pdfurl as String

Sub Value_ANr

	oANr = inputBox ("Auftragsnummer","Eingabe erforderlich")
	oDoc = thisComponent
	oController = oDoc.getCurrentController()
	oForm = oDoc.drawpage.forms.getbyindex(0)
	oText1 = oForm.getByName("txt1")
	oText2 = oForm.getByName("txt2")
	oText3 = oForm.getByName("txt3")
	oText4 = oForm.getByName("txt4")
	oText5 = oForm.getByName("txt9")
	
	
   		DBName = "REPARATUR"
		Context = createUnoService("com.sun.star.sdb.DatabaseContext")
		DB = Context.GetByName (DBName)
		Connection = DB.GetConnection ("","")
		sSql = "SELECT `objekt_anrede`,`objekt_name`,`objekt_strasse`,`objekt_ort`,`langtext` FROM `REPARATUR` WHERE `key` = '"+oANr+"';"	
		Statement = Connection.CreateStatement
		QueryErg = Statement.ExecuteQuery(sSQL)
		oText1.text = QueryErg.GetString(1)
		oText2.text = QueryErg.GetString(2)
		oText3.text = QueryErg.GetString(3)
		oText4.text = QueryErg.GetString(4)
		oText9.text = QueryErg.GetString(5)			
		Connection.Close()
End Sub

Als Ergebnis erhalte ich:
Anhang anzeigen 56768

Warum :(

Grüße
_opiWahn_
 
Zuletzt bearbeitet:
Na im schlimmsten Fall weil es entweder "oText1" oder "txt1" nicht gibt. Aber das hast du ja sicher schon selber geprüft!?

Kommentiere diese Zeile doch einfach mal aus und schau ob die folgenden Zeilen fehlerfrei abgearbeitet werden.
 
Thema erledigt?

Jetzt wäre es auch schön wenn man wüßte wie du es gelöst hast bzw. wodurch der Fehler ausgelöst wurde!
 
Hallo tombe,

wie ich kurz vor dir geschrieben habe, habe ich nach 1 Tag erfolgloser Fehlersuche den Makrocode gesichert, die Form neu erstellt und den Code wieder zurückgespielt.
Zum Glück hat's funktioniert. Wenn nicht wäre ich ganz schön am Ende gewesen.
Die Felder hat ich naturlich geprüft - o.B.

Grüße
opiWahn
 
Zurück