Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Colonna calcolata con Ado.Net
venerdì 01 settembre 2006 - 11.05
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
StefanoLep
Profilo
| Senior Member
248
messaggi | Data Invio:
ven 1 set 2006 - 11:05
Salve a tutti, devo aggiungere una colonna calcolata ad un DataGridView, non posso utilizzare il metodo:
MioDT.Columns.Add("NomeCol", System.Type.GetType("System.String"), "MiaFormula")
perchè la formula è piuttosto complessa e non saprei scriverla in SQL. Cerco di spiegarmi: su DB ho un campo Long che esprime la durata in secondi, quando visualizzo questo campo però devo mostrare la durata come HH:MM:SS che considero una stringa. Ovviamente utilizzo una griglia per visualizzare i dati.
P.S. Ringrazio Matteo Raumer per l'articolo : "Colonne calcolate e parola "Child" con ADO.NET" link:
http://www.dotnethell.it/articles/ADOChildTables.aspx
StefanoLep
Profilo
| Senior Member
248
messaggi | Data Invio:
ven 1 set 2006 - 13:17
In VB ho scritto una semplice funzione che accetta un parametro numerico e restituisce una stringa in formato hh:mm:ss che è appunto la durata che voglio visualizzare, in pratica se sul db il record ha valore 1 voglio visualizzare 00:00:01
se ha valore 100 visualizzo 00:01:40
Il fatto è che se utilizzo il metodo: DT.Columns.Add("NomeCol", System.Type.GetType("System.String"), "MiaFormula"), "MiaFormula" deve essere scritta con linguaggio SQL e quindi volevo sapere se qualcuno ha un'altra soluzione per aggiungere una colonna calcolata.
StefanoLep
Profilo
| Senior Member
248
messaggi | Data Invio:
lun 4 set 2006 - 09:49
Ciao, ho risolto (anche se il metodo non è elegantissimo), ciclo su tutti i valori della colonna per recuperare il valore numerico da passare alla funzione e poi prendo il risultato per inserirlo nella colonna a fianco:
For X = 0 To GRD.RowCount - 1
GRD.Rows(X).Cells("Durata in HH:MM:SS").Value = _
MiaFunzione (GRD.Rows(X).Cells("Durata in secondi").Value)
Next X
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !