In SqlServer 2005 Express Ed. ho la seguente SP.
La quale verifica la partita IVA del cliente nella tabella clienti, se la stessa è già presente genera un errore (RAISERROR), diversamente procede all'INSERT. Ho testato la SP con dei parametri fittizi direttamente dal SQL Server Managment Studio ed ottengo tra i Messaggi la visualizzazione dell'errore, per cui la SP la considero funzionante. Il parametro di output (@idCliente) resta invalorizzato (null) e come RETURN_VALUE ho 0.
Il mio problema è recuperare/intercettare l'errore invocato nella SP, nel caso in cui il valore di partita IVA sia già presente in tabella, dalla pagina .aspx.
La pagina aspx, richiama l'esecuzione della SP mediante un SQLDataSource. La SP viene eseguita senza generare alcun errore, tant'è che in debug l'esecuzione passa all'evento inserting, anche se risutano 0 row Affected.
Grazie a tutti.
Sk
===========================================================================================
RISOLTO
Il problema era causato dal fatto che nell'istruzione RAISERROR della SP il valore della proprietà seveity era impostato troppo basso per essere rilevato dalle istruzioni TRY...CATCH, infatti dette istruzioni intercettano errori la cui severity sia maggiore di 10, per cui impostando ad 11 il valore funziona.
Grazie ancora e scusate.