Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Klaas am 04.01.11 - 08:37:42

Titel: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: Klaas am 04.01.11 - 08:37:42
Hallo,
ich arbeite grade an einer Verbindung zwischen einer IBM i5 und Notes.
Dabei nutze ich eine ODBC Schnittstelle.
Nun möchte ich nach meiner ersten Abfrage eine 2. Abfrage aus einer anderen Tabelle machen.
Diese Abfrage kann auch nichts zurück geben.
Aber egal wie ich versuche das ODBCResult auf eine leere Rückgabe zu überprüfen läuft es immer auf den Errorhdl. und "If Not result.Execute Then Goto Ende" wirkt nicht.
Habt Ihr eine Lösung?
Hier der Code der 2. Abfrage.
Code
'######################### 2. SQL-Abfrage ####################################################
	qry.SQL 				=  "SELECT IHIDNR , IHAEVK , IHAECM FROM ANWDTA.IDHINP WHERE IHIDNR = "+ uidoc.FieldGetText( "fdMAWSTeilID")
	If Not result.Execute Then Goto Ende
	result.FirstRow
	Dummy(0)				= Cstr(result.GetValue("IHAEVK"))+Cstr(result.GetValue("IHAECM"))
	Do
		result.NextRow
		Dummy(n)			= Cstr(result.GetValue("IHAEVK"))+Cstr(result.GetValue("IHAECM"))
		n					= n +1
	Loop Until result.IsEndOfData
	If Not doc Is Nothing  And Dummy(0) <>""Then 
		Call doc.ReplaceItemValue("fdMAWKdAMaßk", Fulltrim(Dummy) )
	End If	
Ich hoffe ich habe mich nicht zu kompliziert ausgedrückt.
Vielen Dank für eure Hilfe.

Klaas
Titel: Re: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: ata am 04.01.11 - 08:51:37
Hallo Klaas,

... works as designed. Der Execute lässt sich ausführen, auch wenn er leer liefert. Du musst das Result überprüfen - auf die schnelle gedacht...

Toni
Titel: Re: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: Klaas am 04.01.11 - 09:38:49
Habe ich.

Zum beispiel habe ich schon die probiert einfach das result aus zu lesen
Code
Dummy(0)				= Cstr(result.GetValue("IHAEVK"))
If Dummy(0) ="" Then Goto Ende
Oder auch
Code
If Cstr(result.GetValue("IHAEVK")) ="" Then Goto Ende
Aber jedes mal wenn ich irgendwelche anstallten mache das Result zu lesen läuft er auf einen Error, weil es ja leer ist.
Titel: Re: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: ata am 04.01.11 - 09:47:54
... dann fang den Fehler doch ab - du hast doch eine Fehlernummer...

=> On Error [Fehlernummer] GoTo [Sprungmarke]

Toni
Titel: Re: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: koehlerbv am 04.01.11 - 09:48:12
Du musst mit
result.IsResultSetAvailable
prüfen.

Bernhard
Titel: Re: result.Execute Problem mit 2 Abfragen in einem ODBCResult (läuft auf Error)
Beitrag von: Klaas am 04.01.11 - 09:56:59
Hallo Toni , hallo Bernhard,

ich habe jetzt dies hier eingefügt und es funktioniert so wie ich es mir vorgestellt habe.
Code
If Not result.IsResultSetAvailable Then Goto Ende

Vielen Dank für euer Hilfe.