nombra a las transacciones independientemente, por que el motor no sabe que son dos, ya que todos los SP's se ejecutan bajo el mismo ambiente de ejecucion.
Si desde el SP1 haces un Begin Trans y desde el SP2 haces un RollBack o un Commit, SQL lo hará sobre la transaccion del SP1....
intenta algo como:
Código:
--desde el SP1
Begin trans T1
....
--Desde el SP2
Begin Trans T2
....
Commit Trans T2 ó Rollback Trans T2
--Regresando al SP1
Commit Trans T1 ó Rollback Trans T1
Me cuentas....
Saludos!