He escrito una función que retorna en valor booleano, True, o False. Al ejecutar la aplicación, la misma se bloquea. Al buscar la causa descubrí que la función ExecQuerySingleResult cuando no se ejecuta correctamnete, en lugar de retornar False, retorna Null. El problema no fue difícil de solucionar, solo fue agregar un If, para convertir el Null en False, pero me quedo la duda, ¿que tipo de dato es Null
La función que tenía el problema era esta:
La versión corregida es
Entonces, si deseo que una función pueda retornar un valor Null, ¿Cómo lo hago?
La función que tenía el problema era esta:
UpdateStopLoss:
public Sub UpdateStopLoss(Asset As String, Market As String, StopLoss As Float) As Boolean
Dim Query As String
Dim Result As Boolean
Try
Query = "UPDATE `main`.`Pares` SET StopLoss = "& StopLoss &" WHERE Asset = '" & Asset & "' AND Market = '" & Market & "';"
Result = Sql1.ExecQuerySingleResult(Query )
Catch
Log(LastException)
End Try
Return Result
End Sub
La versión corregida es
UpdateStopLoss2:
public Sub UpdateStopLoss(Asset As String, Market As String, StopLoss As Float) As Boolean
Dim Query As String
Dim Result As Boolean
Result = False
Try
Query = "UPDATE `main`.`Pares` SET StopLoss = "& StopLoss &" WHERE Asset = '" & Asset & "' AND Market = '" & Market & "';"
If(Sql1.ExecQuerySingleResult(Query) <> Null) Then
Result = True
End If
Catch
Log(LastException)
End Try
Return Result
End Sub
Entonces, si deseo que una función pueda retornar un valor Null, ¿Cómo lo hago?
Last edited: