powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как поступить в таком случае!
5 сообщений из 5, страница 1 из 1
Как поступить в таком случае!
    #32602215
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
C помощью уважаемого Sa и других участников наконец разобрался с SQLDataReader.

У меня выполняется ХП и вот в чем заковырка. Я получаю 30 записей , у меня суммируется работа оборудования. Т.е ХП возвращает сколько минут скажем насос работал . А мне надо отобразить не просто значение в минутах ,а указать в формате hh:mm Ну например 125 минут была работа ,а функция вернет 02:05 , такую функция уже соорудил. Но какой элемент кроме грида можно использовать для отображения ? Вроде стандартный грид ,как мне подсказали не покатит. Он не поддерживает незабинденные данные.

Как же в этой ситуации поступить?
...
Рейтинг: 0 / 0
Как поступить в таком случае!
    #32602233
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну рецепты как сделать Unbound Column в DataGrid есть. Только здесь это не уместно.

Подсчитываете вы время где на сервере или при помощи DataReader?
И почему бы вам ни создать программно DataTable и поместить туда все результаты. Этот DataTable и показать в DataGrid.


Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Как поступить в таком случае!
    #32602288
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 sa

Время подсчитывается на сервере и ХП там торчит вот она

CREATE PROCEDURE GetOneMonth @m int, @year int AS

SELECT datepart(dd,TimeSt) as chislo,

sum(TrPump1_In) as p1,sum(TrPump2_In) as p2,
sum(PumpBBO1_In) as p3,sum(PumpBBO2_In) as p4,
sum(PumpSGU1_In) as p5,sum(PumpSGU2_In) as p6,
sum(TD13_In) as p7,sum(TD14_In) as p7

from

NewTable1 where datepart(mm,TimeSt)=@m and

datepart(yyyy,TimeSt)=@year

group by datepart(dd,TimeSt)

order by datepart (dd,TimeSt)

RETURN
GO



В клиенском приложение я получаю результат ХП и мне надо полученные значения в минутах преобразовать к формату HH:MM

>И почему бы вам ни создать программно DataTable

Как это сделать?
...
Рейтинг: 0 / 0
Как поступить в таком случае!
    #32602749
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А для чего вам вообще в этом случае использовать DataReader.
Думаю загружать данные сразу же в программно созданный DataTable логичнее.

Примерно так:
Код: plaintext
1.
2.
3.
4.
5.
Dim da As SqlDataAdapter = New SqlDataAdapter(cmd) // где cmd - ваш SqlCommand, Connection можно перед этим не открывать
Dim dt As DataTable = Me.CreateDataTable() // создаем программно DataTable
da.MissingSchemaAction = MissingSchemaAction.Error
da.Fill(dt) // Заполняем его при помощи DataAdapter
Me.DataGrid1.DataSource = dt // наш DataGrid на форме

Функция CreateDataTable() примерно такая, в замисимости от типа ваших данных:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Function CreateDataTable() As DataTable
        Dim dt As DataTable = New DataTable
        dt.Columns.Add("chislo", GetType(Integer))
        dt.Columns.Add("p1", GetType(System.Decimal))
        dt.Columns.Add("p2", GetType(System.Decimal))
        dt.Columns.Add("p3", GetType(System.Decimal))
        dt.Columns.Add("p4", GetType(System.Decimal))
        dt.Columns.Add("p5", GetType(System.Decimal))
        dt.Columns.Add("p6", GetType(System.Decimal))
        dt.Columns.Add("p7", GetType(System.Decimal))
        dt.Columns.Add("p8", GetType(System.Decimal))
        Return dt
End Function

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Как поступить в таком случае!
    #32602757
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что сказать? Спасибо большое Sa!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как поступить в таком случае!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]