Cuestión : Xact_state o @@ TranCount para manejar restauraciones no actualizadas de la transacción de la jerarquía

Hola todos,

I tienen un proc del almacén que llame un proc recurrente del almacén que alternadamente pudo llamar algunos otros. Todos están poniendo al día diversas tablas etc en el sistema y todo el comienzo con una transacción. Tengo un bloque del retén del intento alrededor del código y ruedo detrás en errores.  El insecto que conseguía era….la petición de la TRANSACCIÓN de la RESTAURACIÓN NO ACTUALIZADA del

The no tiene ninguna correspondencia PARA COMENZAR TRANSACTION.

SO después de que lea un poco más en transacciones que ahora veo que si una restauración no actualizada se invita una transacción jerarquizada rueda de nuevo a la otra transacción. Cuando cojo el error yo intentar rodarlo detrás y lanzar el error encendido al proc de llamada del almacén. El procedimiento de llamada entonces intenta un rodillo detrás pero no hay ninguno. Esto parezco entender y ahora hace sense.

However (la pregunta antes de que le aburra todo) que miraba maneras de dirigir esto y que no sé si utilizar Xact_state o @@trancount para decidir si rodar detrás o not.

So en cada retén iba a poner un cierto código como. el
BEGIN TRY
de la materia del som del delcare del proc
del stor del

start…… COMIENZA TRANSACTION
… hace un cierto stuff
CONFÍA TRANS
END TRY
BEGIN CATCH
        -- rodar solamente detrás si éste es el tranaction
SI (XACT_STATE () = -1) Y (@@TranCount = RESTAURACIÓN NO ACTUALIZADA TRANS

de 1)
         -- construir un @errorMsg = un OBJECT_NAME SELECTOS (@@PROCID) del string
del error + “: “+ echado (XACT_STATE () como varchar (3)) +” --  @@TranCount =” + echado (@@TranCount como (3))
          --lanzar el proc

Do del almacén del extremo del
del RETÉN del EXTREMO del
del on
RAISERROR (@errorMsg, @errorSev, @errorState) del error… que necesito el XACT_STATE o apenas que utilizo el @@Trancount.  También noté en la depuración en SQL 2008 que si puse un reloj en la variable del @@TranCount, el minuto incorporé el proc del almacén que va incrementado y no cuando excuted la declaración… Comenzar la transacción. ¿Iguales cuando le llamé el rodillo detrás… no decrement, sólo al dejar al proc del almacén… ninguna ideas ni son éste apenas la depuración o servidor del SQL que sabía que tienen una transacción a comenzar de todos modos??

thanks M
class= del

Respuesta : Xact_state o @@ TranCount para manejar restauraciones no actualizadas de la transacción de la jerarquía

Otras soluciones  
 
programming4us programming4us