• Domingo 22 de Diciembre de 2024, 14:02

Autor Tema:  Urgente Ayuda En Consulta  (Leído 1321 veces)

manuelbse

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Urgente Ayuda En Consulta
« en: Miércoles 4 de Mayo de 2005, 01:54 »
0
POR FAVOR NECESITO UNA MANITO, ESTOY TRABAJANDO EN UNA CONSULTA EN SQL, LA CUAL SE REALIZA MEDIANTE
VARIOS LIST DONDE UNO ESCOJE EL O LOS CAMPOS Q C QUIEREN HACER LA CONSULTA Y ESTOS CAMPOS ESCOGIDOS
SON REFLEJADOS EN UN LIST GENERAL,EL PROBLEMA SE M PRESENTA CUANDO A TRAVES DE UN BOTOM QUIERO
HACERE LA CONSULTA Y ME DA UN ERRO 91,AQUI LES ENVIO EL CODIGO ESPERO Q ME AYUDEN GARCIAS DE
ANTEMANO....

Private Sub Command3_Click()
Dim Var As String
Dim VarSQL As String
Static var2 As String
Static varn As Integer

If List5.List(List5.ListIndex) = "CÉDULA DE IDENTIDAD" Then
Var = "EMPLEADO_CCS.CI"
End If
If List5.List(List5.ListIndex) = "CÓDIGO DE NOMINA" Then
Var = "EMPLEADO_CCS.CodNom"
End If
If List5.List(List5.ListIndex) = "APELLIDOS Y NOMBRES" Then
Var = "EMPLEADO_CCS.APENOM"
End If
If List5.List(List5.ListIndex) = "DESCRIPCION DEL CARGO" Then
Var = "EMPLEADO_CCS.DESCAR"
End If
If List5.List(List5.ListIndex) = "CÓDIGO DE CARGO" Then
Var = "EMPLEADO_CCS.CODCAR"
End If
If List5.List(List5.ListIndex) = "TIPO DE PERSONAL" Then
Var = "EMPLEADO_CCS.TIPPER"
End If
If List5.List(List5.ListIndex) = "SITUACIÓN DEL CARGO" Then
Var = "EMPLEADO_CCS.SITCAR"
End If
If List5.List(List5.ListIndex) = "FECHA DE INGRESO" Then
Var = "EMPLEADO_CCS.FCHING"
End If
If List5.List(List5.ListIndex) = "SEXO" Then
Var = "EMPLEADO_CCS.SEXO"
End If
If List5.List(List5.ListIndex) = "SINDICATO" Then
Var = "EMPLEADO_CCS.DIGSIN"
End If
If List5.List(List5.ListIndex) = "CAJA DE AHORRO" Then
Var = "EMPLEADO_CCS.DIGCAJ"
End If
If List5.List(List5.ListIndex) = "FECHA DE NACIMIENTO" Then
Var = "EMPLEADO_CCS.FCHNAC"
End If
If List5.List(List5.ListIndex) = "ESTADO CIVIL" Then
Var = "EMPLEADO_CCS.CIVIL"
End If

If Var "" And varn = 0 Then
varn = 1
var2 = Var
var2 = var2 & "," & Var
End If

VarSQL = "SELECT '" & var2 & "' AS Datos FROM EMPLEADO_CCS INNER JOIN
Detalles ON EMPLEADO_CCS.CI = Detalles.ci;"

'AQUI ES DONDE ME DA EL ERROR 91
rsUsers.Open VarSQL, cnAP, adOpenDynamic, adLockPessimistic, adLockReadOnly

Do While rsUsers.EOF = False
MsgBox rsUsers!Dato
rsUsers.MoveNext
Loop

nelson_z

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Urgente Ayuda En Consulta
« Respuesta #1 en: Miércoles 4 de Mayo de 2005, 20:48 »
0
hola.

ya viste que valor trae la variable VarSQL, despues de que haces la  igualdad?


porque cuando llegas a este punto  Var solo contiene el nombre de la tabla.un campo

digamos que
Var="EMPLEADO_CCS.CI ",
cuando llega esta  if
varn=0
var2=""


If Var "" And varn = 0 Then
varn = 1
var2 = Var                                  <--- aqui var2="EMPLEADO_CCS.CI "
var2 = var2 & "," & Var  <--- aqui var2="EMPLEADO_CCS.CI,EMPLEADO_CCS.CI "
End If

entonces  al llegar a:

VarSQL = "SELECT '" & var2 & "' AS Datos FROM EMPLEADO_CCS INNER JOIN
Detalles ON EMPLEADO_CCS.CI = Detalles.ci;"

VarSQL="SELECT 'EMPLEADO_CCS.CI,EMPLEADO_CCS.CI'  AS Datos FROM EMPLEADO_CCS INNER JOIN
Detalles ON EMPLEADO_CCS.CI = Detalles.ci;"

y pienso que deberia ser:

VarSQL="SELECT EMPLEADO_CCS.CI  AS Datos FROM EMPLEADO_CCS INNER JOIN
Detalles ON EMPLEADO_CCS.CI = Detalles.ci;"

checa bien loq ue haces en el If... espero
que esto te sirva....

al rayo...