Visualizzazione dei risultati da 1 a 2 su 2

Discussione: (VB) Query cerca

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    271

    (VB) Query cerca

    Io ho 3 campi nel mio form : nome,cognome,codice fiscale
    l'utente può decidere di inserire 1 o 2 o tutti i 3 campi
    da lì parte il mio controllo.
    Io ho provato a fare così ma quando clicco il bottone cerca
    i campi rimangono vuoti.

    Private Sub cmdCerca_Click()
    Dim request As String
    Dim iNome As String
    Dim iCognome As String
    Dim iCodiceFiscale As String
    iCodiceFiscale = MaskCodiceFiscale.Text
    iNome = txtNome.Text
    iCognome = txtCognome.Text
    Dim dbConn As New Connection
    Dim dbrec As New ADODB.Recordset
    g_strConnectionString = "maia"
    dbConn.ConnectionString = g_strConnectionString
    dbConn.Open
    dbrec.Open "Pazienti", dbConn, adOpenForwardOnly, adLockOptimistic, -1
    request = "SELECT * FROM Pazienti"
    If iNome <> "" Then
    request = request & " Nome= '" & iNome & " ' "
    If iCognome <> "" Then
    request = request & " Nome= '" & iNome & " ' & Cognome= ' " & iCognome & " ' "
    If iCodiceFiscale <> "" Then
    request = request & " Nome= '" & iNome & " ' & Cognome= ' " & iCognome & " ' & CodFiscale='" & iCodiceFiscale & " ' "
    Set dbrec = dbConn.Execute(request)
    While Not dbrec.EOF
    txtNome = dbrec.Fields("Nome")
    txtCognome = dbrec.Fields("Cognome")
    MaskCodiceFiscale.Text = dbrec.Fields("CodFiscale")
    dbrec.MoveNext
    Wend
    End If

  2. #2

    ecco qui

    1° mancano un casino di End If oppure di "_"

    2° hai sbalgiato l' impostazione dell stringa di condizione...

    fai cosi......(utilizza un'altra variabile)

    codice:
    .......
    .........
    request = "SELECT * FROM Pazienti"
    If iNome <> "" Then _
        sWhere= " Nome= '" & iNome & "' AND" 
    
    If iCognome <> "" Then _
        sWhere = sWhere & " Cognome= '" & iCognome & "' AND" 
    
    If iCodiceFiscale <> "" Then 
        sWhere = sWhere & " CodFiscale='" & iCodiceFiscale & "'" 
    'controllo
    If sWhere<>"" then
        'controllo la fine della condizione...
        If right(sWhere,1)<>"'" then
            '...se non non è stata completata, cioè se non hai inserito il c.f., "substring"!!
            sWhere=left(sWhere,len(sWhere)-4) '4=len(" AND")
       endif
       request=request & swhere
    else
       msgbox "nessun parametro inserito!"
       exit sub
    endif
    
    Set dbrec = dbConn.Execute(request) 
    if dbrec.recordcount<0 then
      msgbox "nessun elemento trovato"
      dbrec.close
      dbconn.close
      set dbres=nothing
      set dbconn=nothing
    else
      txtNome = dbrec("Nome") 
      txtCognome = dbrec("Cognome") 
      MaskCodiceFiscale.Text = dbrec("CodFiscale") 
    endif

    tutto qua...........

    ciao

    by giuSp [.NetDeveloper]

    ___________
    un po' di VB non fa male!....?
    C# more power to you!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.