Cita: no se si tu solucion me refresca los valores del grid dinamicamente
Claro que no hay problema..., si se refrescan los valores.
Es mas... te voy a poner un ejemplo de como usar una funcion dentro de SQL Server y como la mandas a llamar para que te des una mejor idea..
Lo que voy a hacer es la clásica funcion de la suma que toma valores y regresa el resultado
Abres tu SQL Analyser y escribes ésto
Cita: CREATE Function Suma
( @a int, @b int)
returns int as
Begin
declare @c int
set @c = @a + @b
return @c
End
Y para accesar a ese valor lo puedes hacer de la forma tradicional, tomando en cuenta que hay que ponerlo con la nomenclatura de
NombreBase.propietatio.NombreFuncion
Ejemplo.
Cita: Dim strSelect As String
strSelect = "select
(12,10) as suma"
Dim oConn As New SqlConnection(ConfigurationSettings.AppSettings("N orthWind"))
Dim cmd As New SqlCommand(strSelect, oConn)
oConn.Open()
Dim r As SqlDataReader = cmd.ExecuteReader
If r.Read Then
Dim res As Integer = CInt(r("Suma"))
Response.Write(res)
End If
r.Close()
oConn.Close()
Y cuando lo ejecutes te devolverá el valor de 120
Con este ejemplo sería cosa de adaptarlo para hacer el cálculo que deseas no crees..??
Como una observacion mas...
Cita: al darle dAdapter.update(ds,"Tabla")
porque haces el update con un dataset..???

, te recomiendo que lo hagas con un command y le des un execute nonquery para que sea mas rápido

y no lo dejes volando un rato en la cache del cliente.
Pero bueno... ya esa sería otra historio, primero prueba con lo que te mande.
Espero que te sirva.
Saludos