Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите с хранимой процедурой в проекте ADP / 10 сообщений из 10, страница 1 из 1
19.06.2004, 14:33:28
    #32568403
Omar_K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Есть проект ADP. Существует форма с 2 мя комбо и одной кнопкой и текстбоксом.
пользователь выбирает из 2 комбо по одному целочисленному значению/
как сделать так чтобы после нажатия на кнопку запускалась хранимая процедура на сервере c параметрами выбраннами в 2 комбо и результат (там может быть только одно значение) отображался в текстбоксе.
Процедура Sp_myproc(int, int) выдает 1 значение.
...
Рейтинг: 0 / 0
19.06.2004, 15:15:32
    #32568423
Hummer from home
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Смотрим хелп по adodb.command - писать сейчас лень, там всё прозрачно написано.
Через коллекцию parameters - получаем значение выходного параметра из хранимой. А можно не выходной параметр а Return Value получать - но это по желанию.
...
Рейтинг: 0 / 0
19.06.2004, 15:48:48
    #32568427
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Зачем топики плодишь, а?
...
Рейтинг: 0 / 0
19.06.2004, 15:50:08
    #32568428
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Omar_K в другом топике писалЕсть процедура ostatok(int, int) выходное значение- real
Входные значения задаются из 2-х комбо выход должен отображаться в текстбоксе, после нажатия кнопки
Пожайлуйста подправте код

Private Sub Command6_Click()
Dim cn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
Dim param1 As Parameter, param2 As Parameter, param3 As Parameter
Dim provStr As String

cn.Provider = "sqloledb"

provStr = "Server=omar;Database=usilos_db;Trusted_Connection=yes"
cn.Open provStr
Set cmd.ActiveConnection = cn
cmd.CommandText = "ostatok"
cmd.CommandType = adCmdStoredProc

Set param3 = cmd.CreateParameter("Return", adReal, adParamReturnValue)
cmd.Parameters.Append param3

Set param1 = cmd.CreateParameter("Input", adInteger, adParamInput)
cmd.Parameters.Append param1
param1.Value = Me!Combo2

Set param2 = cmd.CreateParameter("Input", adInteger, adParamInput)
cmd.Parameters.Append param2
param2.Value = Me!Combo0

Set rs = cmd.Execute

rs.Open
Me!Text4 = rs.Fields(0)


rs.Close
cn.Close


End Sub
...
Рейтинг: 0 / 0
19.06.2004, 15:51:23
    #32568429
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
первая по жизне процедура+ADO - сильно не пинайте

Код: plaintext
1.
2.
3.
4.
5.
create procedure Foxstrot
@MyId int
As 
SELECT  *  from TComp  Where Comp_Id < @MyId
GO

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Dim MyBat As ADODB.Command
Dim PrStr As String
Dim MyRst As ADODB.Recordset
Dim MyConn As ADODB.Connection
PrStr = "Provider=SQLOLEDB;Data Source=172.27.48.1;Initial Catalog=INGA;Trusted_Connection=Yes;"
Set MyConn = New ADODB.Connection
MyConn.Open PrStr
Set MyBat = New ADODB.Command
MyBat.ActiveConnection = MyConn
MyBat.CommandText = "Foxstrot " & Me![P_1]
Set MyRst = New ADODB.Recordset
MyRst.Open MyBat
Do Until MyRst.EOF
Debug.Print MyRst( 0 ); MyRst( 2 ); MyRst( 3 )
MyRst.MoveNext
Loop
MyRst.Close
...
Рейтинг: 0 / 0
19.06.2004, 16:40:39
    #32568440
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
2 Shuhard

попробуй так:

Set MyRst = MyConn.Foxtrot(Me!P1)

долно работать

ЗЫ
...
Рейтинг: 0 / 0
19.06.2004, 19:10:59
    #32568475
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Victosha2 Shuhard

попробуй так:

Set MyRst = MyConn.Foxtrot(Me!P1)

долно работать

ЗЫ

я пока с mdb разминаюсь + пишу код подлиннее со всеми семействами
пытаюсь сменить моторные навыки от DAO
...
Рейтинг: 0 / 0
19.06.2004, 20:20:04
    #32568492
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
вырожденный случай
Код: plaintext
1.
Set MyRst = CurrentProject.Connection.Execute("Foxstrot(" & Me![P_1] & ")")
...
Рейтинг: 0 / 0
21.06.2004, 09:21:48
    #32568957
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Два ИМХО

1.
Если уж не используешь параметры (Parametrs), а пытаетесь их в текст запроса вставить, то наверное и текст надо с EXEC писать?

MyBat.CommandText = "Exec dbo.Foxstrot " & Me![P_1]

2.
В таких случаях (мне кажется) надо не ХП писать, а UDF - проблем будет меньше.
...
Рейтинг: 0 / 0
21.06.2004, 12:08:33
    #32569336
Latuk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с хранимой процедурой в проекте ADP
Предлагаю поменьше кода
Для начинающего это важно

1)Я полагаю что присоединенный столбец в комбо виден
т.е. значение контрола и будет выбранным параметром

2) Делаем в ХП параметры с таким же названием что и комбо но с @ в начале
в SELECT ХП-ки первым вставляем холостой столбец =1

3) делаем третий комбо =1 с источником ХП и невидимым первым столбцом

4)На Кнопку пишем ТретийКомбо.requery

Если уж очень надо отображать в текст то просто вешаем на кнопку

Текст=CurrentProject.Connection.Execute("МояХП @Парам1=" & cbo1 & ",@Парам2=" & cbo2 ).Fields(0).Value

Подразумевается что ХП возвращает через SELECT
при этом если SELECT не единственный в ХП не забудь
поставить SET NOCOUNT ON
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите с хранимой процедурой в проекте ADP / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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