Newsgroup: it.comp.lang.visual-basic
Titolo: Evitare duplicati in un datacombo

Ciao a tutti, ho una tabella access che appare + o - in questo modo:
MacroCat   Cat
        1          11
        1          12
        1          13
        1          14
        1          15
        1          16
        2          21
        2          22
        2          23
        3          31
        3          32
        3          33
'Il codice per aprire il recordset è questo:
rsServizi.Open "SELECT distinct MacroCat, Cat " & _
"FROM Servizi ORDER BY MacroCat;", MyCn, adOpenKeyset, _
adLockOptimistic, adCmdText
'Questo è invece il codice per riempire un datacombo
Set DataCombo1.DataSource = rsServizi
        Set DataCombo1.RowSource = rsServizi
        DataCombo1.DataField = "MacroCat"
        DataCombo1.ListField = "MacroCat"
        DataCombo1.BoundColumn = "MacroCat"
Vorrei che nel datacombo mi comparissero i numeri delle MacroCat non
duplicati. Come potrei fare? La Select Distinct non me l'accetta continuando
a mettermi tutte le voci del campo MacroCat.
Come potrei fare?
--
----|----|----|----|----|----|----|----|----|----|----|----|----|----|--
Vuoi vedere il mondo a 360°?
www.360net.it

 a mettermi tutte le voci del campo MacroCat.
Sei sicuro? Cosa significa "non me l'accetta"?
Ti riferisci all'accetta (attrezzo atto a spaccar legna) o a qualche errore,
oppure, semplicemente (sic!) al fatto che pare che la DISTINCT non venga
considerata?

Non viene considerata, continua a mettermi i doppioni


 Come potrei fare?
Curiosità: se vuoi vedere solo i macrocat, perchè raccogli anche i cat?
Salutoni
Sergio


Perchè in una textbox deve apparire la categoria in base alla Macrocategoria
cliccata nel datacombo.
Ciao :-)

 ha scritto nel messaggio
news:Fzdt9.19725$aL4.5...@news1.tin.it...
[cssoft]
Curiositŕ: se vuoi vedere solo i macrocat, perchč raccogli anche i cat?
[marco]
Perchč in una textbox deve apparire la categoria in base alla Macrocategoria
cliccata nel datacombo.
intendevo dire che forse il problema č lě: se fai una query come dici tu, ma
pretendi di raccogliere solo una macrocategoria, dovresti anche dire qual'č
la categoria che ti interessa. Ritorniamo al tuo esempio:
MacroCat   Cat
        1          11
        1          12
        1          13
        1          14
        1          15
        1          16
        2          21
        2          22
        2          23
        3          31
        3          32
        3          33
tu vorresti avere, di fatto solo tre record nella tua query, uno per
ciascuna macrocat (non credo che, all'interno del datacombo ci sia modo di
vedere un certo numero di elementi se i record del recordset sottostante
sono di piů), ma in quel caso, come fa il programma, in autonomia a decidere
quale dei 6 record relativi alla macrocat 1 deve farti vedere?
Mi sembra che il problema, cosě impostato non abbia soluzione.....
Inoltre, se io clicco una macrocat nel combo, quale delle cat (associate a
quella macrocat) deve apparire nella textbox?
Salutoni
Sergio


Scusa ho sbagliato la Categoria appare in un datagrid che è filtrato in base
a quello che c'è scritto nel datacombo.
Se la proprietà text del datacombo è 1 nel datagrid appariranno le categorie
da 11 a 16
Se la proprietà text del datacombo è 2 nel datagrid appariranno le categorie
da 21 a 23
Se la proprietà text del datacombo è 3 nel datagrid appariranno le categorie
da 31 a 33
Ciao. Scusa se ti faccio perdere tempo, magari se tu hai in mente qualche
altra soluzione, non ti impedisco assolutamente di dirmela :-)

[marco]
Scusa ho sbagliato la Categoria appare in un datagrid che è filtrato in base
a quello che c'è scritto nel datacombo.
Se la proprietà text del datacombo è 1 nel datagrid appariranno le categorie
da 11 a 16
Se la proprietà text del datacombo è 2 nel datagrid appariranno le categorie
da 21 a 23
Se la proprietà text del datacombo è 3 nel datagrid appariranno le categorie
da 31 a 33
Ciao. Scusa se ti faccio perdere tempo, magari se tu hai in mente qualche
altra soluzione, non ti impedisco assolutamente di dirmela :-)
scusami tu se, approfittando del fatto che ti do una mano, ti faccio un
piccolo appunto: quando rispondi ad un post spesso è inutile copiare
integralmente il post originale, elimina le parti inutili....
Torniamo al problema....
a mio avviso la soluzione consiste nell'avere due recordset: il primo che
contiene solo le macrocategorie, il secondo tutti i record, quando viene
selezionata una macrocategoria filtri il secondo record in base a quella.
Sarebbe più elegante cavarsela con un recordset solo, vediamo se qualcuno sa
come si fa....
Salutoni
Sergio

 a mettermi tutte le voci del campo MacroCat.
Il distinct ti restituisce record non duplicati, e visto che con la tua
select il record è costituito dai campi MacroCat e Cat, è naturale che ti si
presenti il problema nella combo.
Ciao, Alessandro

 Curiosità: se vuoi vedere solo i macrocat, perchè raccogli anche i cat?
Ottima e risolutiva osservazione:
Se faccio "Select Distinct Cognome, Nome From Rubrica" perchè mai dovrei
arrabbiarmi se mi restituisce Rossi Franco e Rossi Mario?