Hola a todos se me produce el siguente error al trabajar con transacciones
en mi stored procedured
Msg 3903, Level 16, State 1, Procedure USP_MNT_SISTEMAS_MIGRACION_EMPRESAS,
Line 53
The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION.
El procedimiento es el siguiente:
BEGIN TRY
BEGIN TRAN
DECLARE cursor1 CURSOR for SELECT A.IDEMPRESA, A.CODEMPRESA, A.CONTRASENA
FROM SISTEMAS_PORTAL_EMPLEO.DBO.TBLEMPRESAS A WHERE WEBORIGEN = @WEBORIGEN
AND A.IDEMPRESA > @ID_EMPRESA
OPEN cursor1
FETCH NEXT FROM cursor1 INTO @IDEMPRESA, @COEMPRESA, @PASSWORD
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO SISTEMAS_TD_USUARIOS(EMAIL,PASSWORD,IDROL,ACTIVO)
VALUES (@COEMPRESA,@PASSWORD,2,1)
PRINT 'USUARIO: ' + @COEMPRESA + ' HA SIDO INSERTADO EN TD_USUARIOS'
SELECT @ID = SCOPE_IDENTITY()
INSERT INTO SISTEMAS_TD_MIGRACION_EMPRESAS (IDPORTAL,IDEMPRESA)
VALUES (@IDEMPRESA,@ID)
INSERT INTO SISTEMAS_TD_EMPRESAS
(idusuario,razonSocial,
logo,idperfilProfesional,CIF,
nombreEmpresa,idFormaJuridica,
direccion,localidad,idProvincia,
numTrabajadores,URL,descripcionEmpresa,
idTipoEmpresa,stamp,otros)
SELECT B.IDEMPRESA,razonSocial,
logo,null,CIF,
nombreEmpresa,idFormaJuridica,
direccion,localidad,idProvincia,
numTrabajadores,URL,descripcionEmpresa,
idTipoEmpresa,stamp,otros
FROM SISTEMAS_PORTAL_EMPLEO.DBO.TBLEMPRESAS A,
SISTEMAS_TD_MIGRACION_EMPRESAS B
WHERE A.IDEMPRESA = @IDEMPRESA AND A.IDEMPRESA = B.IDPORTAL
PRINT 'USUARIO: ' + @COEMPRESA + ' HA SIDO INSERTADO EN TD_EMPRESAS'
FETCH NEXT FROM cursor1 INTO @IDEMPRESA,@COEMPRESA, @PASSWORD
COMMIT TRAN
END
close cursor1
deallocate cursor1
END TRY
BEGIN CATCH
ROLLBACK TRAN
DECLARE @ERR VARCHAR(8000)
SELECT @ERR = TEXT FROM SYS.MESSAGES
close cursor1
deallocate cursor1
RETURN
END CATCH
que puede estar ocurriendo
Leer las respuestas