STRQMQRY gibt keinen SQLCODE zurück, daher ist er auch nicht abzufragen.
-100 gibt es nicht, du meinst wohl 100.
100 gibt es nur wenn beim letzten Fetch keine Daten mehr da sind.
Mit MONMSG kannst du nur SQL-Fehler abfangen, die das Ausführen überhaupt verhindern.

Die Ausgabedatei wird ohne SQL-Fehler immer erstellt, ob Daten vorhanden sind kannst du per RTVMBRD ... NBRCURRCD(&RCDS) feststellen.