inserire record selezionati da form a sottomaschera presente in altra form

Anonimo
2017-01-17T12:17:20+00:00

ciao a tutti,

partendo dal click di un pulsante presente in una maschera, vorrei poter inserire in una sottomaschera, presente in un altra maschera, i record che risultano spuntati ed eliminarli.

In pratica del file in allegato, aprendo la form frm_ricevute_disponibili e cliccando su cmd_inserisci dovrei inserire (accodare) nella sottomaschera tbl_bollettari i valori dei record che risultano spuntati nella frm_ricevute_disponibili ed eliminarli.

Provo a postare il link https://1drv.ms/u/s!Ag4bLvhg0xNWbphSB2ucaPi36no

Grazie a voi tutti

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2017-01-29T08:42:42+00:00

ciao Peppinp38,

grazie Sandro,

certo che mi piace il cascading comboBoxes, ho avuto di applicarlo nella classica gestione di regione, provincie, comuni....

[...]

esattamente lo stesso concetto :-).

[...]

Per concludere è possibile poter visualizzare nella M_gestioneServizi all'interno della Sottomaschera T_raccordoServiziBolletta anche il tipo di bollettario dopo aver selezionato l'id_bollettario, così come avviene per il numero_bollettario?

[...]

è sufficiente rivedere il recordSource della sottomaschera ed inserire un controllo.

ho approfittato per eliminare qualche ridondanza nelle tabelle...

Credo inoltre che mostrando il numero bollettario direttamente nella comboBox che con la qualche selezioni il bollettario e non il suo id, che dice poco, può permetterti di eliminare il controllo numero_bollettario, come evidenziato nell'immagine che segue nel rettangolo rosso :

Scarica le modifiche al link postato in precedenza.

[...]

Infine tutte le risposte da te date sono state tutte super utili; resto a disposizione anche in altri modi per ringraziarti ed onorarti per quanto fai per il forum... Grazie

prego. La community è formata da volontari ed io sono un utente come te, quindi grazie è sufficiente.

Buona domenica.

Ciao!

Sandro.

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

34 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2017-01-27T18:06:39+00:00

    ciao Peppino38,

    [...]

    1 - definire il tipo di bollettari a disposizione, che potranno aumentare anche in futuro, dala M_tipoBollettari

    2 - assegnare un numero al bollettario dalla M_bollettario

    [...]

    le operazioni 1 e 2 possono essere condotte da una maschera con sottomaschera che ti permettono di inserire un nuovo tipo di bollettario e i relativi bollettari. la M_tipoBollettari cha hai creato non è completa.

    Sfruttiamo quindi la forza relazionale del db per effettuare l'operazione con meno sforzi possibili.

    [...]

    3 - consegna del bollettario caricando il numero di bollette attraverso la M_Inserimento_Bollettari

    [...]

    punto 3 già operativo nessuna nota.

    [...]

    4 - accedere nella M_gestione servizi., inserire la data ed altri campi;

     sezionando il numero di bollettario (id_bollettario) automaticamente viene riportato il tipo di bollettario (id_tipoBollettari) e vengono riportati nella Combo NumeroBolletta le relative bollette disponibili per quel bollettario

     selezionando una bolletta automaticamente diminuiscono, per il record successivo il numero di bollette a disposzione sempre per quel bollettario

     terminate le bollette, sempre per quel bollettario, nell'id bollettario vengono visualizzati solo i numeri di bollettario rimasti disponibili.

    [...]

    idem come il punto 3.

    [...]

    Ho provato a cercare di capire la query, che dolori...

    [...]

    gli statements che ti ho suggerito sono tutt'altro che intuitivi, per cercare di analizzarli inizia a ragionare sulla parte interna delle queries e seguendo questo ordine :

    from, where, Group by, having, select, order by.

    Non voglio aggiungere troppo e mettere troppa carne al fuoco con il rischio di andare OT, ma la logica con cui viene eseguita la query non è la stessa con la quale viene scritta.

    [...]

    Terminate le bollette di un bolletario è possibile, per concludere, ringranziadoti come meglio credi, non visualizzare il relativo bollettario, nella F_inserimento verbali, già utilizzato, evitando di dover visualizzare nella cb_tipo_bollettario anche i numeri bollettari già utilizzati, e d inserire nella query, anche il tipo di bollettario (id_tipo_bollettario)?

    [...]

    della maschera F_inserimento verbali ne sentiamo parlare ora ed è mancate nella demo che hai messo a disposizione, peraltro, non è chiarissimo a cosa serva.

    Questa ultima parte inoltre mi risulta assolutamente oscura.

    Spiega meglio.

    Lascio qui per tuo opportuno riferimento il db modificato con la form M_bollettario con  relativa sottomaschera.

    Vai all'ultimo record e controlla il nuovo tipo di bollettario pippo con e bollettari 1,2,3 inseriti come esempio di quanto spiegato inizialmente in questo post.

    [...]

    Grazie infinite

    [...]

    prego, e facci sapere.

    Ciao,  Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2017-01-27T08:57:51+00:00

    avessi esplicitato meglio il "non rispondente" sarebbe stato più facile capire il problema che di fatto non ho capito :-).

    mi riferivo al db via via da me aggiornato...

    Almeno l'obiettivo di farmi capire devo raggiungerlo, anche se penso che è quasi fatta :-)

    Operazioni:

    1 - definire il tipo di bollettari a disposizione, che potranno aumentare anche in futuro, dala M_tipoBollettari

    2 - assegnare un numero al bollettario dalla M_bollettario

    3 - consegna del bollettario caricando il numero di bollette attraverso la M_Inserimento_Bollettari

    4 - accedere nella M_gestione servizi., inserire la data ed altri campi;

     sezionando il numero di bollettario (id_bollettario) automaticamente viene riportato il tipo di bollettario (id_tipoBollettari) e vengono riportati nella Combo NumeroBolletta le relative bollette disponibili per quel bollettario

     selezionando una bolletta automaticamente diminuiscono, per il record successivo il numero di bollette a disposzione sempre per quel bollettario

     terminate le bollette, sempre per quel bollettario, nell'id bollettario vengono visualizzati solo i numeri di bollettario rimasti disponibili.

    Ho provato a cercare di capire la query, che dolori...

    Terminate le bollette di un bolletario è possibile, per concludere, ringranziadoti come meglio credi, non visualizzare il relativo bollettario, nella F_inserimento verbali, già utilizzato, evitando di dover visualizzare nella cb_tipo_bollettario anche i numeri bollettari già utilizzati, e d inserire nella query, anche il tipo di bollettario (id_tipo_bollettario)?

    Posto il link

    Grazie infinite

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2017-01-25T20:35:19+00:00

    ciao Peppino,

    grazie Sandro

    [...]

    prego :-)

    avessi esplicitato meglio il "non rispondente" sarebbe stato più facile capire il problema che di fatto non ho capito :-).

    ho migliorato la query che rende i bollettari disponibili, in questo modo, modifica minimale, ma apprezzabile:

    SELECT A.id_bollettario,

                A.numero_bollettario,

                a.totBollette-b.totBolletteUsate AS BolletteDisponibile,

               B.totBollettarioInserito

    FROM

                (SELECT

                      T_bollettario.id_bollettario, numero_bollettario, Count(t_bollette.numBolletta) AS totBollette

                 FROM

                    T_bollettario

                LEFT JOIN

                    t_bollette ON T_bollettario.id_bollettario = t_bollette.id_bollettario

               GROUP BY

                  T_bollettario.id_bollettario, numero_bollettario)  AS A,

              (SELECT T_bollettario.id_bollettario, Count(T_raccordoServiziBolletta.NumeroBolletta) AS totBolletteUsate,   Count(T_raccordoServiziBolletta.id_bollettario) AS totBollettarioInserito

               FROM

                    T_bollettario

                LEFT JOIN T_raccordoServiziBolletta ON T_raccordoServiziBolletta.id_bollettario = T_bollettario.id_bollettario   GROUP BY

    T_bollettario.id_bollettario)  AS B

    WHERE

            A.id_bollettario=[B].[id_bollettario] AND B.totBollettarioInserito<[a].[totBollette] AND [a].[totBollette]-[b].[totBolletteUsate])>0;

    nel momento in cui inserisci il bollettario, ma non le bollette nello stesso records  (lasci null nella bolletta), se raggiungi il massimo numero di delle bollette per quel bollettario, anche se non hai inserito le bollette, il bollettario non è più disponibile. Più difficile a dirsi che a farsi...prova la differenza :-).

    Dopo di che ho apportato qualche modifiche minimale non degna di nota al codice e al recordsource della sottomaschera M_raccordoServiziBolletta.

    Tutto questo lo trovi qui.

    [...]

    Grazie ancora...

    HTH.

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2017-01-25T08:24:42+00:00

    grazie Sandro

    per la tua professionalità e pazienza...

    Provo a postare il mio linkcon le modifiche effettuate, ma sicuramente c'è ancora qualche problema in quanto non rispondente.

    Riesci a postarmi il link funzionante finora?

    Grazie ancora...

    La risposta è stata utile?

    0 commenti Nessun commento