CLR: .Net / Mono / Boo / Otros CLR > ASP .NET
Comparar Registros(fila) En Un Dataset
(1/1)
tranagression:
Hola, Necesito saber como comparar dos registros en un dataset y si estan repetidos la specie y el country, el valor se sume y deje uno en el griview
Asi me sale....
--- Citar --- Specie Country Valor
Uno Brasil 2,420
Uno Brasil 2,000
--- Fin de la cita ---
Asi lo necesito....
--- Citar ---Specie Country Valor
Uno Brasil 4,420
--- Fin de la cita ---
--- Código: Text ---Dim comm As New SqlDataAdapter(SQL, cn) cn.Open() Dim dt As DataTable Dim dt2 As DataTable Dim ds As DataSet Dim myDataRow As DataRow Dim column As DataColumn Dim n As Integer dt = New DataTable comm.Fill(dt) dt2 = New DataTable column = New DataColumn() column.DataType = System.Type.GetType("System.String") column.ColumnName = "Specie" column.AutoIncrement = False column.Caption = "Specie" column.ReadOnly = False column.Unique = False dt2.Columns.Add(column) column = New DataColumn() column.DataType = System.Type.GetType("System.String") column.ColumnName = "Country" column.AutoIncrement = False column.Caption = "Country" column.ReadOnly = False column.Unique = False dt2.Columns.Add(column) column = New DataColumn() column.DataType = System.Type.GetType("System.String") column.ColumnName = "Valor" column.AutoIncrement = False column.Caption = "Valor" column.ReadOnly = False column.Unique = False dt2.Columns.Add(column) Dim ds As New DataSet comm.Fill(ds, "Report") n = dt.Rows.Count If n = 0 Then Else For Each myDataRow In ds.Tables("Report").Rows Dim sStatus, sNameSpecie,SCountry As String sCountry = myDataRow("country").ToString sValor = myDataRow("valor").ToString sSpecie = myDataRow("specie").ToString If sSpecie = "1" Then sValor = sValor +100 Else sValor = sValor -100 End If 'y otras funciones de calculo por eso dos datasets myDataRow = dt2.NewRow() myDataRow("Specie") = sNameSpecie myDataRow("Country") = sCountry myDataRow("Valor") = sValor+100 dt2.Rows.Add(myDataRow) GridView1.DataSource = dt2 GridView1.DataBind() Next End If cn.Close()
Gracias de antemano
Navegación
Ir a la versión completa