Visual Basic - Ingeniero Civil

Life is soft - evento anual de software empresarial
 
Vista:

Ingeniero Civil

Publicado por GUILLERMO ESCORCHA (2 intervenciones) el 30/04/2021 00:29:42
buenas tardes amigos llevo dias tratando de dar con el error 13 No coincide los tipos, este error me da en la linea de codio resaltada si me pueden ayudar a dar con el problema se los agradeceria


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Function Validar_Usuario(usuario As String, password_us As String) As Boolean
    Dim RecordsetTemp  As New ADODB.Recordset
    Dim Sql As String
    Dim Clave As String
 
 
    Clave = EncryptString("4nkiujn4", password_us, 1)
 
 
    Sql = "Select * From tblUsuarios where usuario = '" & usuario & "' and password_us = '" & Clave & "'"
    Set RecordsetTemp = ConexionADO
 
    If RecordsetTemp.RecordCount > 0 Then
       Glo_NombreUsuario = RecordsetTemp("nombres_apellidos")
       Glo_IdUsuario = RecordsetTemp("IdUsuario")
       Glo_IdentifUsuario = RecordsetTemp("identificacion")
       Validar_Usuario = True
    Else
       Validar_Usuario = False
    End If
 
End Function
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ingeniero Civil

Publicado por gilman (359 intervenciones) el 30/04/2021 08:25:22
RecodsetTemp es de tipo ADODB.Recordset, y, me imagino, ConexionADO de tipo ADODB.Connection y por eso la asignación falla con el error 13 No coinciden los tipos.

cambia la sentencia por:
1
2
Set RecordsetTemp = New ADODB.Recordset
    RecordsetTemp.Open(sql,conexionado,adOpenForwardOnly)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ingeniero Civil

Publicado por GUILLERMO ESCORCHA (2 intervenciones) el 02/05/2021 15:27:18
lamentablemente me sigue generando el mismo error y no se donde esta el problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ingeniero Civil

Publicado por Jose Luis C. M. (18 intervenciones) el 03/05/2021 23:02:39
Si ConexionADO ya está conectado a la base de datos, intenta así:

Set RecordsetTemp = ConexionADO.Execute(Sql)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 355
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ingeniero Civil

Publicado por raul (160 intervenciones) el 05/05/2021 15:57:04
Esta linea esta mal

Set RecordsetTemp = ConexionADO

lo legal seria

RecordsetTemp.open SQL, ConexionADO, adOpenDynamic, adLockReadOnly
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar