Hallo Robert,
ich hätt diese Mail weiter lesen sollen ... > Sql = "SELECT ""recID"" FROM ""Abgang"" WHERE ""Anzahl""='0'" > Abfrageergebnis = SQL_Anweisung.executeQuery(Sql)' Ergebnis auswerten > formneu = 2 > IF NOT isNull(Abfrageergebnis) THEN http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XStatement.html#executeQuery executeQuery liefert ein ResultSet, also eine Menge von Zeilen. Diese Menge kann leer sein, das Objekt, das sie repräsentiert, ist es aber nicht. Deswegen schlägt "NOT isNull(Abfrageergebnis)" immer zu. Wenn Du wissen möchtest, ob die Ergebnismenge leer ist, tut es wohl ein einfaches Dim bHatMindestensEinenDatensatz As Boolean bHatMindestensEinenDatensatz = Abfrageergebnis.next , denn per definitionem steht ein ResultSet immer *vor* dem ersten Datensatz, so dass das *erste* daran gerufene "next" auf den ersten Datensatz positioniert. Wenn es keinen solchen gibt, bewegst Du Dich unmitelbar von "vor dem ersten" (abfragbar mit isBeforeFirst, ansteuerbar mit "beforeFirst") zu "nach dem letzten" (isAfterLast/afterLast). Wie alle Positionierungsmethoden liefert "next" TRUE, wenn Du auf einem "echten" Datensatz stehst, und FALSE, wenn Du auf einem der beiden "virtuellen" Datensätze "before first"/"after last" stehst. Ciao Frank -- - Frank Schönheit, Software Engineer [email protected] - - Sun Microsystems http://www.sun.com/staroffice - - OpenOffice.org Base http://dba.openoffice.org - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
