Come fare la query?

per l id ci ho provato più di una volta senza risultati ok la barra di navigazione , altra domanda ho visto che il formulario puo contenere solo un altro sub formulario ma io devo importare i dati da tre query che devono aggiornarsi al variare del database . come rislovo questo problema ?

Incremento automatico: vedi immagine allegata alla mia risposta.
Un formulario può avere più subformulari, è solo la procedura guidata che ne prevede uno. Puoi aggiungere gli altri in un secondo momento.

scusa l ignoranza ma una volta creato il nuovo sub formulario come lo vedo e come ci inserisco i dati ?

Tenendolo selezionato, apri la finestra delle Proprietà, Dati ed imposti la tabella o la query da cui prelevare i dati. Ricordati di collegare il subform al form principale tramite Collega da e Collega per .Poi:

o trascini una griglia dalla barra laterale dei Controlli del formulario, Altri campi di controllo e segui la procedura guidata successiva;

oppure apri la finestra Aggiungi campo (icona in basso a sinistra) ed inserisci uno ad uno i campi che ti interessano

ho aggiunto il campo "saldo "al formulario, non so come ma dopo vari tentativi ci sono riuscito . altro problema quando inserisco i dati nel formulario principale per poter visualizzare i totali devo tornare indietro all ultima riga inserita mentre io vorrei che non funzionasse così, mi piacerebbe che i totali rimanessero anche se vado in una riga vuota, poi non c’è verso di fare l ID automatico e ultimo tocco vorrei aggiungere un campo mese dove poter , digitando il mese accedere alla tabella richiesta. si puo fare ?

Per l’ID automatico devi ripartire con una nuova tabella. Non è possibile su una tabella già esistente.

Se hai fatto delle modifiche fammele vedere allegando un nuovo file.

mi piacerebbe mandarti il nuovo file ma mi spieghi come fare ?

Come hai fatto la prima volta, aggiungendolo alla tua prima risposta, non è possibile farlo in questi commenti.

Questo sito non è per niente pratico …

non so se sono riuscito ma dovrei averlo allegato in coda al primo

Ho sistemato il database:

  1. Ho trasferito tutto da Firebird a HSQLDB. Non so che versione tu abbia, quando apri il database, se L.O. ti chiede di migrare a Firebird, rispondi di NO.
  2. Ho sistemato le tabelle con ID ad incremento automatico.
  3. Ho fatto comparire l’ID in tutte le Query.
  4. Ho collegato i due subformulari al formulario principale tramite i campi ID. In tal modo, quando ti sposti di record sul formulario principale, le informazioni dei due subformulari si aggiornano automaticamente.

Prova intanto così, poi fai le tue richieste precise.

Allego il nuovo database alla mia prima risposta.

così è pefetto . Al punto 1 quando ho aperto il db libreoffice non mi ha chiesto nulla , l ha aperto e basta.
2 sole richieste anzi 3 : un pulsante che svuoti il database , un pulsante che mi consenta di assegnare il nome di un mese al database in modo da potermi spostare da un mese all altro per 12 mesi ( si puo fare ?)in quest ultimo caso possono essere anche database indipendenti. Poi mi piacerebbe che i dati inseriti si vedessero nei campi senza bisogno di tornare indietro col cursore e se mi spieghi anche come si fa .non mi piace la pappa pronta voglio imparare.grazie charlie

  • Non è possibile mettere un pulsante che svuoti il database, puoi metterne uno che cancelli i record uno a uno. In alternativa puoi usare il codice SQL DELETE FROM "nomeTabella"da usare in “modo diretto”, cioè andando in menu > Strumenti > SQL.
  • Idem per il pulsante mese. Si fa una query ed un formulario che permetta di digitare il mese e ricavare i dati corrispondenti.
  • Non capisco la terza domanda

In realtà si può mettere un pulsante che svuota il database ma si deve usare una “macro” che, per il tuo livello di conoscenza, non so se è il caso di usare.

intanto ti ringrazio davvero di cuore per le sollecite e precise risposte .Per quanto riguarda la cancellazione dei record , ho visto che dal formulario in effetti si possono cancellare i record riga per riga ma questo non azzera il contatore automatico dell ID , al problema del mese posso ovviare copiando banalmente il file del db e rinominandolo ma rimane sempre il problema di di dover svuotare il database. La terza domanda verteva sul fatto che quando inserisco una riga di dati nel db , arrivato all ultimo campo digito invio e il cursore si posiziona sulla riga successiva ma nei campi dei sub form i dati spariscono e per farli ricomparire devo riposizionare il cursore sull ultima riga compilata.
Mi piacerebbe proprio mettere un pulsante che svuoti il db anche con una macro … questo piccolo programmino deve usarlo una persona che di computer ne capisce meno di me e vorrei automatizzare il maggior numero di operazioni possibili e renderlo impermeabile a possibili errori…

tempo fa ho seguito un corso di excel dove abbiamo creato delle macro … posso provarci

  • Ti allego il codice di una macro che cancella tutti i dati da Tabella generale, la compatta e azzera l’indice ID. L’operazione sarà irreversibile, quindi ho messo un messaggio di conferma.
  • Devi aggiungere un pulsante al formulario Tabella generale e collegare la macro all’evento Esegui l'azione del pulsante.

Il codice lo trovi nella mia prima risposta.

Per quanto riguarda l’aggiornamento dei campi dei subform, questo avviene solo al completamento del record del formulario principale. Inserendo il valore dell’ultimo campo, il cursore passa automaticamente ad un nuovo record che, essendo ancora vuoto, non dà risultati nei subform.

Si può mettere un pulsante che punti nuovamente al record precedente, ma equivale a tornare indietro con il cursore. Ho provato anche una macro ma, se rendo il ritorno automatico al record precedente, mi impedisce di inserire nuovi record.

grazie è perfetto così ,non so perchè applicando la macro mi dava errore di sintassi ( ho fatto copia e incolla del codice ) poi riscrivendolo pari pari tutto funziona. Boh! mi sono permesso di togliere il riferimento agli id nelle ricerche perchè altrimenti lui segnava i totali modificandoli a seconda della riga in cui era posizionato il cursore mentre a me serve che si vedano sempre i totali finali l’ultima domanda che ti faccio : all’inizio del database quando non tutti i campi relativi alle spese e agli incassi sono compilati , i campii del saldo e dei totali generali rimangono vuoti è possibile renderli attivi ( si dice così ?) anche se non ci sono tutti i dati ?

Perché le query facciano i calcoli, è necessario che tutti i campi siano compilati ed il record aggiornato, generalmente passando al record successivo.

benissimo . ti ringrazio infinitamente per l aiuto direi che la cosa puo dirsi conclusa