Reperire dati in Access

sabato 05 giugno 2004 - 18.35

mimmuzzo Profilo | Newbie

Salve a tutti,

negli ultimi giorni sto tentando di risolvere un dilemma ...
vi spiego subito di che si tratta.

La mia applicaizione interagisce con un db Access, in una form ho le seguenti text: città, provincia e cap.
La mia intnzione è quella di fare in modo che nel momento in cui l'utent einserisce una citta nella text, in automatico vengano visualizzati sulle altre due text la provincia di appartenenza e il cap.

Però vorrei che nel momento in cui l'utente preme la lettera (sulla text citta) per esempio 'M', vengano restituita la prima città che inizi con le prime n lettere e relative prov e cap.

La query da impostare è semplicissima però ogni volta che l'utente preme una lettere si devono eseguire le operazioni di connessione al db, esecuzione della query ecc.... allungando i tempi e rendendo pesante il codice.

Qualcuno conosce qualche tecnoca o soluzione a quanto detto ???
Grazie anticipatamente a tutti
Mimmo.


trinity Profilo | Guru

Ciao Mimmuzzo,
è molto semplice, basta che utilizzi una select sql con una like dentro. Ti spiego meglio la funzione like di sql ti permetterà di dire alla query sql di selezionare tutte le città in questo caso con le lettere che andrai a scrivere nella text città, quindi se scriverai solo M la query ricercherà tutte le città che iniziano con la lettera M e se aggiungi la proprietà ORDER BY per città, verranno visualizzate in ordine alfabetico per appunto città. per quanto riguarda la visualizzazione nelle text degli altri dati, io di solito faccio queste tipi di select nella proprietà Keypress della text di ricerca, attivando la funzione invio della tastiera, ossia, scrivo il testo da ricercare e al premere dell'invio passa il cursore su un secondo campo e contemporaneamente faccio ricerca e visualizzazione dei dati.

Ora devo andare ma se ti servono degli esempi di codice, non preoccuparti fammi sapere e domani mattina appena vado in ufficio ti posto degli esempi.


Ciao
Fabio

mimmuzzo Profilo | Newbie

Ciao ....
grazie mille per la risposta ...
Il metodo ke tu mi hai konsigliato è quello ke ho utilizzato fino a questo ora ...
Però facendo in questo modo ogni volta ke l'utente preme un tasto sarà necessario eseguire la query kon il costrutto like .... quello ke io stavo cercando è un modo per evitare di eseguire ogni volta la query ...

Se hai qualke altro suggerimento ...... scrivi pure.

Grazie ankora.
Mimmo

trinity Profilo | Guru

Come fai a non eseguire la query e se l'utente cambia la lettera di ricerca?

Ciao
Fabio

mimmuzzo Profilo | Newbie

Ciao fabio,

hai ragione per questo ti kiedevo se ci fosse qualke altro metodo ...
A me era venuto in mente di utilizzare un oggetto di tipo DataSet e lavorare con record disconnessi, quindi caricare prima tutti i dati nel dataset e successivamente impostare un filtro su tale oggetto.
In questo modo eviterei di aprire una connessione, eseguire la query ed chidere la connessione ogni volta che l'utente preme una lettera.

Che ne dici potrebbe funzionare kome metodo ???

trinity Profilo | Guru

Si, potrebbe funzionare perfettamente; anche se io sono molto scettico sull'utilizzo del dataset in quanto anche se in maniera disconnessa ti devi portare dietro un oggetto che contiene n tabelle.

Cmq puoi farlo tranquillamente

mimmuzzo Profilo | Newbie

Ok ....

grazie a tutti per i suggerimenti ....
Quindi alla fine seguirò la stada vecchia ... dicono che sia sempre la migliore ... -:)

Ciao Mimmo.

icemen Profilo | Newbie

Signori... avrei bisogno di un'aiuto
Ho dei dati in msaccess che devo, dopo aver filtrato, trasferire in una lettera tipo in word
Esempio: dalla rubrica fatta in access devo trasferire il campo note scelto all'interno di una lettera preimpostata in maniera tale che word automaticamente lo giustifichi visto che in msaccess non ho trovato il modo di farlo.
Grazie.

trinity Profilo | Guru

prova questo non so se può essere utile ma te lo posto ugualmente:

Da un documento WORD usa STAMPA UNIONE del Menù Strumenti.
In poche parole crei un documento base, lanci stampa unione e come origine dei
dati dai il nome (sfogliando) del file di Access e sucessivamente dell'oggetto
(Tabella o query).
Poi inserisci nel documento i campi unione che sono elencati dal primo pulsante.
In seguito se fai unisci dati (da strumenti - stampa uninione - 3a scelta)
Word ti crea un'altro documento con un numero di pagine pari ai tui record (se
la base è di un solo foglio).

Ciao
Fabio
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5