I have a stored proc that is selects data using

I have a vb class that uses the native SQL SERVER SQLOLEDB provider

the class uses a command object and adodb.stream to execute the proc

usually it it runs perfectly

but occasionally, due to constraints, bad user data or whatever, a RAISERROR in the proc is excuted and the proc returns at that point

raiserror ( 60000, -1, -1, @procname, 'my messager )
return 1

without the FOR XML EXPLICIT, I get MY custom error number, 60000, returned in the vb adodb connection errors object

in other words
will equal 6000

but with the FOR XML EXPLICIT, I never get my custom error

instead I get the generic MS SQL SERVER error -21237346 (or whatever)

how can I use FOR XML EXPLICIT and still get my custom error?