PDA

Visualizza versione completa : Occorrenze uguali in combobox...


Fast-M
26-12-2004, 15.40.09
Salve, qualcuno sa come fare in modo che in access quando si ha una combobox che contiene elementi uguali, cioè con la stessa proprietà text, non venga sempre considerata la prima occorrenza di questi elementi uguali?
Faccio il solito esempio: ho una combobox che poggia su una tabella come origine record. La tabella ha due campi: Id e Campo1.
Per fare comparire nella combobox prima Campo1 e poi Id creo una normale query di selezione che mi inverte l'ordine dei campi e me li ordina secondo Id.
Così facendo, quando seleziono un elemento nel menu a discesa della combobox, nella proprietà text viene messo Campo1 e non Id.
Il problema è che per ottenere questo effetto principalmente visivo, non posso associare alla combobox il campo Id, ma per forza il primo campo visibile che è appunto Campo1.
Questo crea non pochi problemi perchè se nella tabella ci sono record che hanno Campo1 uguale, access mi considera sempre la prima occorrenza di quell'elemento se per esempio voglio ottenere la posizione di questo tramite la proprietà Listindex.
Inoltre se per caso c'è un record che ha Campo1 vuoto, access visto che ha Campo1 come campo associato non permette la selezione di quell'elemento o meglio la permette, ma poi nella proprietà Column della combobox si trova Null.
C'è una soluzione?
Grazie mille in anticipo!
:)

Dav82
26-12-2004, 17.06.08
Nella query su cui si poggia la combobox, fai innanzitutto un

SELECT DISTINCT

e poi un bel filtro con

WHERE Campo != NULL

Non so se la sintassi è quella usata da Access (NULL oppure qualcos'altro, il != magari non si scrive così...) ma il concetto mi sembra giusto. Togli quelli nulli ed elimini le ripetizioni con il DISTINCT (Access lo accetta? Boh :confused: Penso di sì!)

;)

Fast-M
27-12-2004, 03.09.10
Grazie Dav, ma questa è una soluzione sql, non access.
Cioè tu hai affrontato e risolto il problema a valle, non creando proprio la possibilità di avere ne occorrenze uguali, ne elementi nulli nella combobox, mentre io mi chiedevo se esiste un modo per far si che anche se una combobox ha occorrenze uguali si può ottenere comunque l'elenento selezionato.
Ho pensato che per il problema del campo vuoto associato si può temporaneamente spostare la boundcolumn su quella dell'id giusto per avere qualcosa nella proprietà column, ma non mi sembra una soluzione elegante.
:|

Dav82
27-12-2004, 12.03.47
Ops sorry, pensavo che costruissi la tabella ad-hoc per quella combobox e che servisse solo a quello ;)

In Access non so aiutarti, non sono un drago..... meglio Deep! :D