powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Сохраненная процедура MS SQL 2k с параметрами в .adp проекте в Access 2k
2 сообщений из 2, страница 1 из 1
Сохраненная процедура MS SQL 2k с параметрами в .adp проекте в Access 2k
    #32022498
Mitrish_v
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всех кого не затруднит прошу помочь мне хить чем нибудь по следующей проблеме:

Adp проект. Есть сохраненная процедура с несколькими параметрами.
Я хочу сделать следующее:
Форма на которой бы пользователь сам заносил в поля соответствующие параметры и наличествовала кнопка "Запуск сохр. процедуры"
Порывшись в хелпе к Access я вроде по разобрался что данные занесенные в поле на форме связываются с параметрами сохраненной процедуры через свойство InputParameters формы. Сделал вроде все согласно инструкциям - результата нет. При нажатии кнопки "Запуск сохр. процедуры" она выкидывает свои окна с запросом параметров процедуры не обращая внимания на те значения которые я ввел в форме. Я новичек в работе с Access и MS SQL но уже успел обратить внимание на скупость информации по работе с .adp проектами. Помогите кто чем сможет.

PS Если кто знает ссылки на документацию по работе с adp-проектами - киньте их пожалуйста в это ветку
...
Рейтинг: 0 / 0
Сохраненная процедура MS SQL 2k с параметрами в .adp проекте в Access 2k
    #32022529
Павел
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если процедура не является источником записей формы, то использовать InputParameters вообще не нужно. Подозреваю что это именно такой случай:

Create Procedure "sp_test" @prm1 Int, @prm2 Int, @prm3 Int Output -- Для примера можно вернуть клиенту что-то через @prm3
As
/*Set Nocount On --Если процедура возвращает набор записей и в процедуре Select более одного раза или есть Insert или Update то эта строка необходима!*/
/*Select * From SomeTable --Если процедура возвращает результирующий набор записей*/
Set @prm3 = @prm1 + @prm2 + @prm3
Return /*@prm1 + @prm2 + @prm3 --Если процедура возвращает специфичный код завершения (только Int)*/



На форме 3 поля: Поле1, Поле2, Поле3 и кнопка Кнопка1

Private Sub Кнопка0_Click()
Dim cmd As ADODB.Command, rs As ADODB.Recordset
Set cmd = New ADODB.Command
cmd.ActiveConnection = CurrentProject.Connection
cmd.CommandText = "sp_test"
cmd.CommandType = adCmdStoredProc
'cmd.Parameters.Append cmd.CreateParameter(, adInteger, adParamReturnValue) 'Если нужно ловить код завершения
cmd.Parameters.Append cmd.CreateParameter("@prm1", adInteger, adParamInput, , Me!Поле1)
cmd.Parameters.Append cmd.CreateParameter("@prm2", adInteger, adParamInput, , Me!Поле2)
cmd.Parameters.Append cmd.CreateParameter("@prm3", adInteger, adParamInputOutput, , Me!Поле3)
cmd.Prepared = False

'Set rs = cmd.Execute 'Если процедура возвращает резулбтирующий набор записей
'...
'rs.close
'Set rs = Nothing

'cmd.Execute 'Если не возвращает
'MsgBox cmd.Parameters(0) 'Так можно получить код завершения

MsgBox cmd.Parameters("@prm3")

Set cmd = Nothing
End Sub

Примерно так. Нужно добавить обработку ошибок. Если я не угадал и процедура все же источник записей формы, то несколько по другому.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Сохраненная процедура MS SQL 2k с параметрами в .adp проекте в Access 2k
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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