BEGIN TRANSACTION MAIN_TRAN;
SELECT @InTransaction = 1; -- Set Transaction Flag true
SELECT @InTransaction = 1; -- Set Transaction Flag true
BEGIN TRY EXEC sp_Address_Insert_Update @AddressID OUT,@sane_Address1,@sane_Address2,@sane_Zip,@sane_City,@sane_StateID,@sane_CountryID,@sane_AddressOnMap,@sane_lat,@sane_lon;
END TRY
BEGIN CATCH
SELECT @ErrMsg = (
SELECT *
FROM(
SELECT ERROR_MESSAGE()ErrorMessage,
ERROR_LINE()ErrorLine,
ERROR_PROCEDURE()ErrorProcedure)a
FOR XML AUTO,ELEMENTS,ROOT('root'));
GOTO ErrHandler;
END CATCH;
END TRY
BEGIN CATCH
SELECT @ErrMsg = (
SELECT *
FROM(
SELECT ERROR_MESSAGE()ErrorMessage,
ERROR_LINE()ErrorLine,
ERROR_PROCEDURE()ErrorProcedure)a
FOR XML AUTO,ELEMENTS,ROOT('root'));
GOTO ErrHandler;
END CATCH;
COMMIT TRANSACTION MAIN_TRAN;
ErrHandler:
IF @InTransaction=1
BEGIN
ROLLBACK TRANSACTION MAIN_TRAN
END;
RAISERROR(@ErrMsg,16,1,0);
RETURN 0;
IF @InTransaction=1
BEGIN
ROLLBACK TRANSACTION MAIN_TRAN
END;
RAISERROR(@ErrMsg,16,1,0);
RETURN 0;
No comments:
Post a Comment