Utilizzo casella di controllo per "selezione" righe maschera

di il
1 risposte

Utilizzo casella di controllo per "selezione" righe maschera

Ciao,
vi scrivo per chiedervi un suggerimento su come utilizzare il componete "casella di controllo" (casella di selezione/check) per la seguente funzione.
Ho una maschera di ricerca cioè con delle caselle di testo e caselle combinate con cui effettuo dei filtraggi e nel corpo della maschera e nel corpo della maschera mi vengono restituiti tutti i record frutto della query di ricerca, ora ho necessità di poter selezionare con una "casella di controllo" le righe da cui poter prendere l'indirizzo mail a cui mandare una determinata mail massiva.
Prima di andare oltre vorrei fare una premessa questo DB access in questo caso va a lavorare su delle tabelle su MSSQL e usato da più postazioni.
Vorrei poter aggiungere per ogni riga una casella di controllo non legata al db e tabella anagrafica in modo che da più postazioni posso selezionare le mie righe e mandare le mail sulla base delle selezioni dello specifico utente evitando in questo modo conflitti, ho tentato ad inserire una "casella di controllo" nel corpo della maschera ma alla selezione di una qualsiasi casella mi vengono in automatico selezionate tutte le altre.
Se non è possibile o se non ci sono altre soluzioni devo provvedere ad aggiungere una colonna in anagrafica per spuntare i singoli record a cui mandare la mia mail.

Vi ringrazio per il tempo che mi avere dedicato.
Ciao!

1 Risposte

  • Re: Utilizzo casella di controllo per "selezione" righe maschera

    Lo scenario che esponi è abbastanza comune, ma purtroppo la soluzione non è semplicissima... o meglio dipende da come devi gestire le cose.
    Se invece di usare una Maschera Continua per la selezione dei destinatari, ti potesse andare bene una ListBox a selezione Multipla Estesa, la cosa sarebbe semplice, vai a leggere l'elenco degli ITEMSELECTED e costruisci la stringa con i Destinatari, quando esci nulla è stato memorizzato ed in MultiUtenza è perfetto.
    Se invece devi, o preferisci usare una SubForm in visualizzazione continua per avere le CheckBox(Casella di controllo), allora devi sapere che se la CheckBox non è associata ad un Campo dell'Origine Record della Maschera non sarà possibile Gestirla.
    Ora essendo in MultiUtenza va da se che non puoi gestire un campo Boolean nella Tabella in quanto verrebbe modificato in contemporanea mettendo in crisi il sistema.
    Ne consegue che la soluzione deve essere in LOCALE.

    A questo punto credo ci siano solo 2 Opzioni:
    1° LOCALTABLE in Access nel Client con l'elendo dei Destinatari + la famosa CheckBox che è obbligatoria
    2° Usare un Recordset ADO in Memoria, con il quale replichi la struttura della Tabella come campi e sempre aggiungi un campo Booleano per la CheckBox... una volta creato il RS in memoria lo associ alla SubForm, che visualizzerà i dati associati a quest'ultimo.

    Sono entrambe soluzioni semplici e funzionali, la 2° non è molto conosciuta ma nulla di esageratamente complesso...
    Ti allego un Esempio che avevo preparato tempo fa giusto per farti capire:
    http://forum.masterdrive.it/microsoft-office-access-vba-23/vba-usare-ado-come-recordset-disconnessi-in-memoria-48877/
Devi accedere o registrarti per scrivere nel forum
1 risposte