powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как получить возвращаемое значение?
11 сообщений из 11, страница 1 из 1
Как получить возвращаемое значение?
    #32843957
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос №2 :))
Есть вызов некой процедуры (это ее кусок):
oCommand2.CommandText = "Search_Price_on_Kategory_for_Confirm"
oCommand2.CommandType = CommandType.StoredProcedure
oCommand2.Connection = oConnection2
oCommand2.Parameters.Add("@Data_viezd", SqlDbType.DateTime).Value =ДатаВыезда
oCommand2.Parameters.Add("@Name_of_category", SqlDbType.VarChar).Value = Название_категории
oCommand2.Parameters.Add("@Error_output", SqlDbType.Int).Value = -1
oCommand2.Parameters.Item(4).Direction = ParameterDirection.Output
oCommand2.Parameters.Add("@NDS", SqlDbType.Int).Value = -1
oCommand2.Parameters.Item(5).Direction = ParameterDirection.Output
Я ее запускаю таким образом:
oDatareader2 = oCommand2.ExecuteReader(CommandBehavior.CloseConnection)

While oDatareader2.Read
... получение данных
a=oDatareader2.GetValue(0).ToString
b=oDatareader2.GetValue(1).ToString
End While
Вопрос: Как получить выходные параметры Output?
P.S. Процедура возвращает параметры и еще некий набор данных из инструкции select внутри ее.
Спасибо!
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32843977
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
после ExecuteReader проверить например oCommand2.Parameters.Item(5).Value
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844128
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Kudinovпосле ExecuteReader проверить например oCommand2.Parameters.Item(5).Value
Когда пробую так, то выдаются входные параметры которые я передал, а у выходных пусто :(
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844167
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.DLL Alexey Kudinovпосле ExecuteReader проверить например oCommand2.Parameters.Item(5).Value
Когда пробую так, то выдаются входные параметры которые я передал, а у выходных пусто :( Почитайте здесь
Вам надо либо дочитать данные до конца и потом обращаться к Output параметрам, либо использовать NextResult
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844189
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey KudinovВам надо либо дочитать данные до конца и потом обращаться к Output параметрам, либо использовать NextResult

Ничего не понимаю, делаю тоже после reed? результат тот же :/
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844194
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.DLL Alexey KudinovВам надо либо дочитать данные до конца и потом обращаться к Output параметрам, либо использовать NextResult

Ничего не понимаю, делаю тоже после reed? результат тот же :/ Как описаны параметры в ХП покажите пожалуйста
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844196
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя выполнил oDatareader2.NextResult() и заработало.
Alexey Kudinov, а вы можете объяснить суть этого метода?
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844211
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALTER PROCEDURE dbo.Search_Price_on_Kategory_for_Confirm
@Kod_of_declare integer,
@Data_Zaezd datetime,
@Data_Viezd datetime,
@Name_of_category varchar(50),
@Error_output integer output ,
@NDS integer output,
@Valuta integer output --есть реальная маза выдать заодно и валюту по договору
AS
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844218
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.DLLХотя выполнил oDatareader2.NextResult() и заработало.
Alexey Kudinov, а вы можете объяснить суть этого метода? MSDN пишет MSDNAdvances the data reader to the next result, when reading the results of batch SQL statements

Used to process multiple results, which can be obtained by executing batch SQL statements.

By default, the data reader is positioned on the first result.
ADO вообще воспринимает все, что приходит с SQLServer-а как некие "рекордсеты". В т.ч. и OUTPUT параметры. Соответственно, чтобы доступится до второго "рекордсета" надо на него "переключить" DataReader
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844226
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.DLLALTER PROCEDURE dbo.Search_Price_on_Kategory_for_Confirm
@Kod_of_declare integer,
@Data_Zaezd datetime,
@Data_Viezd datetime,
@Name_of_category varchar(50),
@Error_output integer output ,
@NDS integer output,
@Valuta integer output --есть реальная маза выдать заодно и валюту по договору
AS Нормально.
Я бы ваши output параметры вернул вместе с основной выборкой. Как раз, чтобы не делать спец. обработки для них на клиенте.
Но это дело вкуса
...
Рейтинг: 0 / 0
Как получить возвращаемое значение?
    #32844236
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, процедура большая просто, нет сейчас желания с ней возиться.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как получить возвращаемое значение?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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