Query di accodamento da casella di riepilogo (?)

di il
24 risposte

Query di accodamento da casella di riepilogo (?)

Salve, ho una combo che, insieme ad altri campi, popola una tabella tramite query di accodamento. Fin qui nessun problema. Ora avrei necessità di selezionare più voci da questa combo (quindi penso di trasformarla in riepilogo o sbaglio?) e avere la possibilità di popolare più record (ognuno con il campo selezionato).
E' possibile in linea teorica?

Grazie per le eventuali risposte.

24 Risposte

  • Re: Query di accodamento da casella di riepilogo (?)

    Una casella di riepilogo può essere progettata "a selezione multipla", leggi qui
    https://support.office.com/it-it/article/inserire-una-casella-di-riepilogo-a-selezione-multipla-ee579158-e894-4c9b-bce8-6a579277b7ae
    Però non si capisce (almeno io) cosa devi fare. Descrivi tutto passo passo e con i nomi propri.
  • Re: Query di accodamento da casella di riepilogo (?)

    Ciao e grazie per la risposta. L'architettura della casella di riepilogo l'ho fatta ma volevo capire se era la scelta corretta per la mia esigenza.
    Cerco di semplificare sperando di non omettere nulla.
    Ho una maschera (semplifico a 2 i campi)
    id_azienda COMBO
    id_mansione COMBO

    Selezionando i valori dei due campi, popolo una tabella con una query di accodamento (in formato tabella dati). Tutto corretto e tutto funzionante. Ok

    Ora vorrei scegliere l'azienda e diverse attività (esempio 2) e fare in modo che la query di accodamento mi popoli 2 righe con nome azienda e attività relativa.

    Chiedevo se fosse possibile e se fosse il percorso corretto.
    Grazie
  • Re: Query di accodamento da casella di riepilogo (?)

    Perché utilizzi una maschera "a parte" e poi implementi l'"accodamento"? Non puoi fare queste operazioni nella tabella/maschera direttamente interessata (senza query di accodamento)?
    Forse intravedo quello che devi fare, ma se espliciti un caso più complesso, che ne deve valere la pena, veniamo a capo meglio della situazione.
  • Re: Query di accodamento da casella di riepilogo (?)

    Perchè ho in realtà diversi campi di diverse tabelle e preferisco accodare così una volta selezionati i campi, il risultato va in una tabella finale creata ad hoc generata senza dover agire su più tabelle. Non utilizzo una maschera a parte, la maschera comprende la tabella finale in accodamento e ha delle combo da cui prende i dati da inserire.
    In più ho dei filtri sulla tabella finale ottenuta dalla query di accodamento che mi permettono di avere già una visuale sui dati inseriti. La maschera è struttura così e funziona, in più mi evita degli errori di inserimento perchè le combo hanno ovviamente un tasto registra che attiva la query e i dati non vengono poi più toccati.
  • Re: Query di accodamento da casella di riepilogo (?)

    A patto che tu abbia una situazione tabellare normalizzata, forse le idee chiare ce le hai già, ma io non ho capito dov'è il problema. Il "piccolo" esempio che hai citato prima...non mi fa "afferrare" a pieno il problema. Qualcosa mi dice che la "multiselezione" non sia la soluzione ideale.
    Per me devi spiegare tutto passo passo con i nomi propri.
  • Re: Query di accodamento da casella di riepilogo (?)

    Sì le idee chiare ce le ho Io ho bisogno di popolare la tabella di tanti record quante sono le attività che scelgo ma per come l'ho strutturata (la query d'accodamento) mi inserisce campi nulli se creo una casella di riepilogo e prendo più attività.

    Io di solito, semplificando, faccio :
    id_azienda da combo : ABC
    attività da combo : RITIRO MERCE

    E la query si popolo di un record ABC RITIRO MERCE

    Ora vorrei fare ABC - Ritiro Merce - Sostituzione Valvole

    e avere nella tabella due righe ABC RITIRO MERCE e ABC SOSTITUZIONE VALVOLE
    Questo è il mio "problema"...

    Grazie
  • Re: Query di accodamento da casella di riepilogo (?)

    Basta fare un ciclo sugli elementi della casella di riepilogo a selezione multipla verificando quale elemento è selezionato.
    Se lo è, aggiungi il record, altrimenti no.
    Non è così complicato.
  • Re: Query di accodamento da casella di riepilogo (?)

    Vedo che gibra ha proposto una soluzione.
    Forse vado fuori tema. Un'altra idea: per esempio potresti pensare a una "tabella di appoggio" dove compili i molti record relativi a IDMansione. Poi strutturi la query di accodamento in modo che prenda in considerazione IDAzienda e tutti gli IDMansione. Al termine dell'accodamento devi aver cura poi di cancellare tutti i record dalla tabella di appoggio.
  • Re: Query di accodamento da casella di riepilogo (?)

    OsvaldoLaviosa ha scritto:


    Vedo che gibra ha proposto una soluzione.
    Forse vado fuori tema. Un'altra idea: per esempio potresti pensare a una "tabella di appoggio" dove compili i molti record relativi a IDMansione. Poi strutturi la query di accodamento in modo che prenda in considerazione IDAzienda e tutti gli IDMansione. Al termine dell'accodamento devi aver cura poi di cancellare tutti i record dalla tabella di appoggio.
    Grazie, valuterò anche questa opzione.
  • Re: Query di accodamento da casella di riepilogo (?)

    gibra ha scritto:


    Basta fare un ciclo sugli elementi della casella di riepilogo a selezione multipla verificando quale elemento è selezionato.
    Se lo è, aggiungi il record, altrimenti no.
    Non è così complicato.
    Grazie mille della risposta. Mi potresti spiegare cosa intendi con "un ciclo sugli elementi della casella di riepilogo"? So che esiste il ciclo per recordset ma purtroppo non ho dimistichezza e non saprei come impostarlo. Io quando li seleziono e registro la selezione, mi accoda solo un record e per giunta nullo per quel che riguarda l'Id_mansione come se l'avere selezionato più mansioni comporti la nullità del campo.

    Sotto il tasto REGISTRA ho, nella parte di riempimento della tabella, questo codice (semplificato così da concentrare l'attenzione su come ho strutturato il tutto)

    DoCmd.OpenQuery "Accoda_A_Tabella_Finale", acNormal, acEdit

    Me.CCAZIENDA = ""
    Me.CCMANSIONE = ""
    Me.CCDIPENDENTE = ""
    Me.CTNOTE = ""

    Me.Form.FilterOn = False
    Me.Requery

    Grazie
  • Re: Query di accodamento da casella di riepilogo (?)

    alice84 ha scritto:


    Grazie mille della risposta. Mi potresti spiegare cosa intendi con "un ciclo sugli elementi della casella di riepilogo"?
    Casella di riepilogo con filtro multiplo in Access
    http://www.alfainfo.it/casella-di-riepilogo-con-filtro-multiplo-access/
  • Re: Query di accodamento da casella di riepilogo (?)

    gibra ha scritto:


    alice84 ha scritto:


    Grazie mille della risposta. Mi potresti spiegare cosa intendi con "un ciclo sugli elementi della casella di riepilogo"?
    Casella di riepilogo con filtro multiplo in Access
    http://www.alfainfo.it/casella-di-riepilogo-con-filtro-multiplo-access/
    Ciao e grazie per il tuo tempo e il link però io non devo filtrare dalla casella di riepilogo. Io devo inserire i dati, nel link si parla solo di filtrare i dati dalla casella. Io invece devo inserire una volta selezionati i dati multipli dalla casella, non consultare.

    Grazie
  • Re: Query di accodamento da casella di riepilogo (?)

    alice84 ha scritto:


    Ciao e grazie per il tuo tempo e il link però io non devo filtrare dalla casella di riepilogo. Io devo inserire i dati, nel link si parla solo di filtrare i dati dalla casella. Io invece devo inserire una volta selezionati i dati multipli dalla casella, non consultare.
    Vedo che non hai capito nulla.
    Pazienza, io ci ho provato.
  • Re: Query di accodamento da casella di riepilogo (?)

    gibra ha scritto:


    alice84 ha scritto:


    Ciao e grazie per il tuo tempo e il link però io non devo filtrare dalla casella di riepilogo. Io devo inserire i dati, nel link si parla solo di filtrare i dati dalla casella. Io invece devo inserire una volta selezionati i dati multipli dalla casella, non consultare.
    Vedo che non hai capito nulla.
    Pazienza, io ci ho provato.
    Complimenti. Meno male che ci sono fenomeni come te. Mi dai un link su come filtrare i record utilizzando una casella di riepilogo che non è ciò di cui ho bisogno e per cui ho chiesto umilmente aiuto. Lascio a te la comprensione.
Devi accedere o registrarti per scrivere nel forum
24 risposte