28/06/2024 - sihsandrea ha scritto:
se ripeti l'operazione si aggiorna?
per esempio:
situazione iniziale: A
aggiornamento: B
visualizzi: A
riaggiorni: C
visualizzi A oppure B?
dove A, B e C sono gli insiemi dei dati che vorresti ottenere.
SihsAndrea,rispondo subito alla tua domanda:
se ripeto l'operazione, la DGV mi da i dati aggiornati.
dove e quando fai l'update? e come lo fai….
dove e quando attivi la dgv?
ho provato a fare l'update prima della linea
Me.Bilancio_consuntivoTableAdapter.Fill(Me.NewCondominioDataSet.bilancio_consuntivo)
ma senza esito.
Il datasource del DGV è attivo dall'inizio, cioè prima che inizi la fase di elaborazione.
Di seguito ti fornisco un pezzetto del codice delle modalità usate per aggiornare la tabella principale (bilancio_consuntivo), ma tieni presente che sono previste la creazione via runtime di quattro relazioni e di molto codice ADODB per arrivare alla tabella principale, che alla fine contiene comunque esattamente i dati che vorrei che la DGV visualizzasse:
Dim query As String
Try
'1)accodiamo Proprietari a bilancio consuntivo
query = "Delete from bilancio_consuntivo"
cl.sql(query)
query = "INSERT INTO bilancio_consuntivo ( id_ana, anno, condomino, scala, interno, A, A1, A2, A3, A5, BC )
SELECT proprietari.id_ana, proprietari.anno, proprietari.condomino, proprietari.scala, proprietari.interno, proprietari.A, proprietari.A1, proprietari.A2, proprietari.A3, proprietari.A5, proprietari.BC
FROM proprietari
WHERE proprietari.id_ana=" & selezionato_id & " AND proprietari.anno=" & selezionato_anno
cl.sql(query)
Catch ex As Exception
MsgBox(ex.Message,, "1")
End Try
'2)ora,creaimo i totali delle spese definitive.
Try
query = "delete * from spesedefinitive"
cl.sql(query)
query = "INSERT INTO SpeseDefinitive ( tabella, scala, TotaleSpese )
SELECT uscite_dettaglio.tabella, uscite_dettaglio.scala, Sum(uscite_dettaglio.spesa) AS SommaDispesa
FROM uscite_dettaglio
WHERE uscite_dettaglio.ID_ANA=" & selezionato_id & " AND uscite_dettaglio.anno=" & selezionato_anno &
" GROUP BY uscite_dettaglio.tabella, uscite_dettaglio.scala
ORDER BY uscite_dettaglio.tabella;"
cl.sql(query)
Catch ex As Exception
MsgBox(ex.Message,, "2")
End Try
....omissis....
'aggiornamento bilancio consuntivo con spese individuali
query = "UPDATE bilancio_consuntivo INNER JOIN individuali ON bilancio_consuntivo.condomino = individuali.CONDOMINO SET bilancio_consuntivo.importo_INDIV = [individuali].[spesa]
WHERE bilancio_consuntivo.ID_ANA=" & selezionato_id & " AND bilancio_consuntivo.anno=" & selezionato_anno & " AND individuali.ID_ANA=" & selezionato_id & " AND individuali.ANNO=" & selezionato_anno
cl.sql(query)
'aggiornamento bialncio consuntivo con spese acqua
query = "UPDATE bilancio_consuntivo INNER JOIN acqua ON bilancio_consuntivo.condomino = acqua.CONDOMINO SET bilancio_consuntivo.importo_H2O = [acqua].[spesa]
WHERE bilancio_consuntivo.ID_ANA=" & selezionato_id & " AND bilancio_consuntivo.anno=" & selezionato_anno & " AND acqua.ID_ANA=" & selezionato_id & " AND acqua.ANNO=" & selezionato_anno
cl.sql(query)
'generazione totali per ogni spesa di ogni tabella (dati presi da Entrate)
query = "Delete from TotaliVersati"
cl.sql(query)
Grazie SihsAndrea. Grazie per tentare tu ed Oregon di aiutarmi.