Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    [VB6]: Selezionare record con MsFlexGrid

    Ciao ragazzi,
    qui sotto vi espongo un pezzo di codice che utilizzo per riempire una MsFlexGrid di record pescati da un DataBase.mdb tramite una combobox chiamata CERCA:

    Dim qry_Risposte As String, I As Integer
    Dim rsQuiz As Recordset
    Dim miodb As Database
    Dim FORNITORE As String
    Dim FORNITORE1 As String
    Dim FORNITORE2 As String

    qry_Risposte = "SELECT CODICE,INDICE,CATEGORIA FROM TIP_MERCE WHERE TIPOLOGIA LIKE '" & (NomFornitore) & "'ORDER BY CODICE"
    Set miodb = OpenDatabase("C:\VENDITA\DB\DB_LO.mdb")
    Set rsQuiz = miodb.OpenRecordset(qry_Risposte, dbOpenDynaset)

    If rsQuiz.EOF = False Then
    rsQuiz.MoveLast
    rsQuiz.MoveFirst
    mi_TotaleArticoli = rsQuiz.RecordCount - 1

    ReDim tRiga(mi_TotaleArticoli)


    If mi_TotaleArticoli < mi_NroRighe Then

    Else
    m_fNoScroll = True

    End If

    For I = 0 To mi_TotaleArticoli

    If IsNull(rsQuiz.Fields("CODICE").Value) = False Then
    tRiga(I).FORNITORE = Trim(rsQuiz.Fields("CODICE").Value)
    Else
    tRiga(I).FORNITORE = vbNullString
    End If

    If IsNull(rsQuiz.Fields("INDICE").Value) = False Then
    tRiga(I).Descrizione = Trim(rsQuiz.Fields("INDICE").Value)
    Else
    tRiga(I).Descrizione = vbNullString
    End If

    If IsNull(rsQuiz.Fields("CATEGORIA").Value) = False Then
    tRiga(I).FORNITORE1 = Trim(rsQuiz.Fields("CATEGORIA").Value)
    Else
    tRiga(I).FORNITORE1 = vbNullString
    End If


    If I < 18 Then
    VENDITA.FLEX.AddItem tRiga(I).FORNITORE & vbTab & tRiga(I).Descrizione _
    & vbTab & tRiga(I).FORNITORE1
    End If

    rsQuiz.MoveNext

    Next


    End If
    DB.Close


    ...e fin qui tutto ok, ma se io volessi selezionare piu' tipologie in una combobox, rendendo chiaramente la combo multiselettiva?
    Spero di essermi spiegato bene!
    vr-claudio

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    ma se io volessi selezionare piu' tipologie in una combobox, rendendo chiaramente la combo multiselettiva?
    E come? La ComboBox non offre questa possibilità. Caso mai puoi farlo usando una ListBox.
    In questo caso dovrai comporre la clausola WHERE della query concatenando opportunamente le diverse condizioni di uguaglianza tra elementi selezionati e nomi dei fornitori. Anzi, anziché usare i nomi dei fornitori sarebbe molto meglio usare dei codici identificativi.

    Per il quesito che poni sarebbe stato sufficiente mostrare al massimo la query, senza obbligare il lettore ad esaminare una pagina di codice non formattato. Tra l'altro l'operatore LIKE usato così è inefficace e mi sembra anche che ci sia qualche apice di troppo.


  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Siccome non descrivi la situazione (il codice da solo non dice sempre tutto) non si capisce a cosa serva il tuo combobox (di cui nel codice non c'è traccia) quindi resta un mistero.

    Tiro ad indovinare: se devi impostare 3 condizioni suppongo che dovrai usare 3 combobox.

    Ciao

    Consiglio: prima di inviare i messaggi rileggili mettendoti nei panni di chi non sa niente del tuo progetto. In questo modo ci si rende conto se si è stati sufficientemente chiari, o no...

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    ...

    Provero' con la funzione WHERE e vi faro' sapere anche se so' gran poco...
    Grazie a tutti, vr-claudio

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    Ciao Grumpy

    gentilmente potresti aiutarmi con la funzione WHERE?
    Grazie vr-claudio

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    Ma tu vuoi selezionare i record per tipologia o per nome del fornitore ? Perché questa parte della query
    WHERE TIPOLOGIA LIKE '" & (NomFornitore)
    mi sembra un po' ambigua.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.