Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Sintaxe
Error.Record(
reason as text,
optional message as nullable text,
optional detail as any,
optional parameters as nullable list,
optional errorCode as nullable text
) as record
Sobre
Retorna um registo de erro dos valores de texto fornecidos para razão, mensagem, detalhe e código de erro.
-
reason: A causa principal do erro. -
message: (Opcional) Uma descrição do erro. -
detail: (Opcional) Informação detalhada adicional sobre o erro. -
parameters: (Opcional) Uma lista de valores que fornecem contexto adicional para o erro, normalmente usada para diagnóstico ou tratamento programático. -
errorCode: (Opcional) Um identificador para o erro.
Exemplo 1
Lida com um erro de divisão por zero.
Utilização
let
input = 100,
divisor = 0,
result = try if divisor = 0 then
error Error.Record(
"DivideByZero",
"You attempted to divide by zero."
)
else
input / divisor
in
result
Output
[
HasError = true,
Error =
[
Reason = "DivideByZero",
Message = "You attempted to divide by zero.",
Detail = null,
Message.Format = null,
Message.Parameters = null,
ErrorCode = null
]
]
Exemplo 2
Tratar de uma entrada com um erro de identificação de cliente inexistente. Se não ocorrer erro, indique uma entrada bem-sucedida.
Utilização
let
CustomerId = 12345,
result = try if CustomerId > 9999 then
error Error.Record(
"CustomerNotFound",
Text.Format("Customer ID #{0} wasn't found.", {CustomerId}),
"Customer doesn't exist.",
{
Text.Format("Invalid ID = #{0}", {CustomerId}),
"Valid IDs: https://api.contoso.com/customers"
},
"ERR404"
)
else CustomerId
in
result
Output
[
HasError = true,
Error = [
Reason = "CustomerNotFound",
Message = "Customer ID 12345 wasn't found.",
Detail = "Customer doesn't exist.",
Message.Format = "Customer ID 12345 wasn't found.",
Message.Parameters = {
"Invalid ID = 12345",
"Valid IDs: https://api.contoso.com/customers"
},
ErrorCode = "ERR404"
]
]