19/03/2024 - Brunico59 ha scritto:
Per generare la tabella a 4 colonne riportata sopra (Codice, IdRisorsaProf, Anno/Mese, ggAtribMese ho fatto ricorso a una query di accodamento, piuttosto normale.
Fino a qua ti seguo…
19/03/2024 - Brunico59 ha scritto:
La tabella nasce con tre campi compilati e con un quarto da compilare.
Non sempre puoi aggiornare i dati da una vista tabella (o campo) derivata da una query (mancherebbero le condizioni che l'anno generata).
Se, ad esempio, estrapoli i clienti di milano e cambi la città con torino, non ti ritrovi più il cliente nella lista della query.
Se, altro esempio, estrapoli un cliente e il suo estratto conto derivato dalla tabella, supponiamo, scadenze, non puoi scrivere un importo diverso nel campo “saldo” perché deriva dalla tabella estratticonto. Per modificare il saldo devi necessariamente editare la tabella estratticonto.
Spero di essere stato chiaro.
A parte che non vedo come hai creato la query, viene spontaneo chiedere: non potevi aggiornare quell'unico campo sempre da sql? Update bla bla dati in select… bla bla… attingendo ad un dato esterno.
Supponiamo tu abbia pippo ed effettua un pagamento, puoi non accedere alla tabella estratticonto ma lanciare una sql che punta alla tabella estratti ed inserisce un pagamento, poi aggiorni la query. L'importo per il record selezionato puoi inserirlo da una inputbox che si apre al pulsante “aggiungi pagamento”. Specularmente puoi avere anche il pulsante “storna pagamento” (o in unico input l'importo col segno meno per stornare e più per aggiungere). Gli altri campi saranno id, dataoperazione, descrizione (pagamento/storno), importo. Sempre nell'esempio che faccio io.
Aggiungi la tabella col campo da modificare, la metti come figlia alla query dal campo in comune ed editi la tabella.
Dopo l'inserimento fai un requery e risolvi.
Questo da quello che ho capito.
P.s. per modificare i dati è sempre buona norma aprire il form che li gestisce. Una query serve per confrontare i dati e, all'occorrenza, prelevare l'id, aprire il form di gestione, posizionarsi all'id prelevato, andare in fase di edit e modificare il record.
Quindi se devo modificare il cliente apro il form clienti, per le fatture apro il form fatture, per lo scadenziario apro il form scadenziario ecc..