Как в DataGridView записать программно данные, добавить строку и вывести туда итог - Visual Basic .NET
Формулировка задачи:
Доброе время суток!
Подскажите пожалуйста как сделать следующее
У меня вывело результат из mysql хочу красиво дописать в низу строку типо как итог: значения : значения: значения
Решение задачи: «Как в DataGridView записать программно данные, добавить строку и вывести туда итог»
textual
Листинг программы
- ' Универсальная процедура с входными параметрами для выборки из бызы
- ' iTableName - Имя создаваемой таблицы в iDataSet
- ' iCommandText - Текст команды
- ' iName - Имя дочерней процедуры
- Public Sub SelectQueryData(ByVal iTableName As String, ByVal iCommandText As String, Optional ByVal iName As String = "")
- Try ' Настраиваем команду SQL
- With SqlCom
- ' Если таблица iTableName существует то, очищае ее
- If iDataSet.Tables.Contains(iTableName) Then iDataSet.Tables(iTableName).Clear()
- SqlCom.Connection = Conn ' Указываем подключение
- SqlCom.CommandText = iCommandText ' Указываем текст запроса
- End With
- ' Настраиваем Адаптер
- With iDataAdapter
- On Error GoTo UpdateTableName ' Если ошибка, значит привязка к DateSet уже определена
- .SelectCommand = SqlCom ' Указываем команду на выгрузку данных из базы
- .Fill(iDataSet, iTableName) ' Выгруженные данные заливаем в DateSet и именуем
- UpdateTableName:
- .Update(iDataSet, iTableName) ' Значит просто обновляем таблицу
- End With
- ' ======================================================================================================
- iDataAdapter.Dispose() ' Освобождаем ресурсы от DataAdapter
- iDataSet.Dispose() ' Освобождаем ресурсы от DataSet
- Conn.Close() ' Закрываем соединение
- ' Сообщение при неудачном подключении к базе данных
- Catch ex As Exception
- MsgBox(ex.Message, MsgBoxStyle.OkOnly Or MsgBoxStyle.Critical & Chr(10) & _
- "Ошибка вызова прощедуры: " & iName, Application.ProductName)
- Conn.Close()
- End Try
- End Sub
- ' Выборка заявлений в суд
- Public Sub GetPr_PetitionsDebt()
- ' Выгружаем заявлений в суд
- iTableName = "PetitionsDebt" ' Имя будущей таблицы
- iCommandText = "SELECT * " & _
- "FROM vPr_PetitionsDebt " & _
- "WHERE(AbonentId =" & My.Settings.CurrAbonId & ") " & _
- "ORDER BY DtPeriodStart" ' Текст SQL запроса")
- SelectQueryData(iTableName, iCommandText, "GetPr_PetitionsDebt") ' Выполняем универсальный Селект
- ' Добавление итоговы сумм в конец iDataSet
- Dim iCount As Integer = iDataSet.Tables("PetitionsDebt").Rows.Count ' Кол-во исков
- Dim iSumDebt, iSumGovTax As Double ' Сумма долгов и госпошлин
- If iCount <> 0 Then
- iSumDebt = SumValueInDateSet("PetitionsDebt", "DebtSumm")
- iSumGovTax = SumValueInDateSet("PetitionsDebt", "GovTax")
- ' Запись итоговых сумм в массив
- With iDataSet.Tables("PetitionsDebt")
- Dim rowArray(7) As Object
- rowArray(0) = DBNull.Value
- rowArray(1) = DBNull.Value
- rowArray(2) = DBNull.Value
- rowArray(3) = DBNull.Value
- rowArray(4) = "Итого"
- rowArray(5) = iSumDebt
- rowArray(6) = iSumGovTax
- .Rows.Add.ItemArray = rowArray
- End With
- End If
- End Sub
- ' Суммирование значений по столбцу в таблице из iDataSet
- Public Function SumValueInDateSet(ByVal iTableName As String, ByVal iColumnName As String)
- Dim Counter As Double = 0 ' Счетчик строк
- Dim iSum As Double = 0 ' Накопитель суммы
- ' Цик по строкам iDataSet если он не пустой
- If iDataSet.Tables(iTableName).Rows.Count <> 0 Then
- For Each iRow As DataRow In iDataSet.Tables(iTableName).Rows
- Counter = iRow.Item(iColumnName).ToString
- iSum = Counter + iSum
- Next
- Return iSum
- End If
- Return 0
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д