000
29.09.2009, 16:50 Uhr
siddy
|
Hallo, ich stehe vor einem relativ grossen Problem
und zwar versuche ich den Rückgabewert einer StoredProcedure die auf einem SQL-Server liegt mittels VBA (ADO) auszulesen,indirekt über einen Output parameter funktioniert dieses. Aber wie gesagt leider nur Indirekt.
Code: |
ALTER PROCEDURE [dbo].[MEINE_STOREDPROCEDURE]( -- Parameter inkl richtigem Datentyp @Parameter1 [int], @Parameter2 [nvarchar] (50), @Parameter3 [int], @Return [int] OUTPUT) AS /* hier befindet sich für mein Problem "unrelevanter" code */ COMMIT TRANSACTION [MEINE_STOREDPROCEDURE];
set @Return = 0; RETURN @Return ; END TRY BEGIN CATCH
ROLLBACK TRANSACTION [MEINE_STOREDPROCEDURE]; DECLARE @ErrMsg nvarchar(4000); SET @ErrMsg = ERROR_NUMBER() + 'Fehler in ' + ERROR_PROCEDURE() + ', Zeile ' + CAST(ERROR_LINE() AS nvarchar(4000)); RAISERROR(@ErrMsg, 15, 1);
set @Return = 1; -- indirekt RETURN @Return; --diesen WERT WILL ICH DIREKT auslesen
|
ausgelesen wird es in etwa so :
Visual Basic: |
Dim cmd As New ADODB.Command
// auslesen indirekt cmd.Parameters("@Return").Value
|
|