Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Aggiungere riga calcolata a una datagridview popolata da query

    Ciao a tutti,
    ho una datagridview che popolo dopo una query (db postgre), assegnando come datasource della griglia la datatable che ho riempito (fill) dopo la query.
    Va tutto bene e la datagridview viene popolata in modo automatico.
    Il problema è che vorrei aggiungere alla tabella una nuova colonna con valori da calcolare a runtime.
    Ho cercato un po' sul web e sul forum ma non ne sono venuto a capo.
    Mi chiedo se sia più facile popolare automaticamente la DataGridView (come faccio ora) e aggiungere una colonna calcolata, oppure popolare la griglia in modo completamente autonomo.
    Vi allego un po' di codice

    codice:
     Dim tabella As New DataTable
            tabella.Columns.Add("col1")
            tabella.Columns.Add("col2")
            tabella.Columns.Add("col3")
            Dim set As New DataSet
            set.Tables.Add(tabella)
            Dim adapter As New OdbcDataAdapter
            adapter.SelectCommand = New OdbcCommand("select col1, col2, col3 from mia_tabella")
            adapter.SelectCommand.Connection = PDR.connessione_db
            adapter.Fill(tabella)
    
    DataGridViewMia.DataSource = tabella

  2. #2
    Ciao.
    Il problema è che vorrei aggiungere alla tabella una nuova colonna con valori da calcolare a runtime.
    Scusa .... forse non ho capito io ..... ma ne hai aggiunte tre a run-time ... aggiungi anche la quarta ... no?!?
    codice:
    tabella.Columns.Add("col4")
    ad ogni modo non hai specificato che tipo di calcolo devi fare ed in base a quali criteri.
    col1+col2?
    col1-col3?
    col3/col2?


    Facci sapere...
    Ciao

  3. #3
    Ciao Jeremy,
    la posso anche aggiungere, ma il problema è che da query posso popolarne sono tre perchè tante sono le colonne che estraggo dal db.
    La quarta dovrei popolarla a runtime, in modo molto semplice per la verità:

    - se col2 = true, col4 (da generare) sarà = col3 * 2
    - se col2 = false, col4 (da generare) sarà = col3 * 4

    Non saprei come procedere, se è possibile generare questi dati direttamente nella query o se devo farlo in visual basic.

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Puoi calcolare la colonna sia direttamente nella query, sia da codice.
    Dipende dalle esigenze, se le colonne non saranno mai modificate è sufficiente calcolare dalla query, in caso contrario dovrai ricalcolare dalla griglia.

  5. #5
    Grazie a tutti ho risolto, semplicemente, aggiungendo e calcolando nel codice il valore della quarta colonna.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.