Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia
Criei esta função para me dar o resultado 9999 em caso de erro na fórmula, mas está a dar erro a compilar, agradeço ajuda
ALTER FUNCTION [dbo].fcnCalcDist
RETURNS FLOAT
AS
BEGIN
DECLARE @RET FLOAT
BEGIN TRY
SET @RET=(ACOS(SIN(@LAT1PI()/180)SIN(@LAT2PI()/180)+COS(@LAT1PI()/180)COS(@LAT2PI()/180)COS((@LONG2PI()/180)-(@LONG1PI()/180)))6371)
END TRY
BEGIN CATCH
SET @RET= 9999
END CATCH
RETURN @RET
END
Obrigado pela ajuda
Qual a solução que você sugere para não dar erro a minha view?
No último link tem um exemplo bacana de fazer o que precisa \o/
No último link tem um exemplo bacana de fazer o que precisa \o/
Obrigado pela ajuda, abraço
Não é possível utilizar BEGIN TRY dentro de funções:
https://msdn.microsoft.com/pt-br/library/ms186755(v=SQL.120).aspx.aspx)
Interoperabilidade
As instruções a seguir são válidas em uma função:
-
https://connect.microsoft.com/SQLServer/feedback/details/132225/try-catch-fails-inside-a-function
http://www.sqlservercentral.com/Forums/Topic524905-149-1.aspx