powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Наполнить ADODB.Recordset данными из ХП
8 сообщений из 8, страница 1 из 1
Наполнить ADODB.Recordset данными из ХП
    #32807662
Leon.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Access XP, ADP + MS SQL Server 2000, MDAC 2.8

На сервере создал хранимую процедуру [ap_Test], без параметров, возвращает набор строк (SELECT ... FROM ... WHERE...) -- работает в QA без проблем. Хочу в модуле Access'а создать рекодсет на основе строк, возвращаемых ХП. Делаю так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
    Dim rst         As ADODB.Recordset
    Dim cmd         As ADODB.Command
    
    Set cmd = New ADODB.Command
    cmd.ActiveConnection = CurrentProject.Connection
    cmd.CommandType = adCmdStoredProc
    cmd.CommandText = "[dbo].[ap_Test]"
    
    Set rst = cmd.Execute()
    rst.Open
    rst.MoveLast   'здесь возникает ошибка -- "operation is not allowed when the object is closed"
Что я делаю не так? Как правильно?

PS: похоже, сегодня день такой -- все спрашивают про ХП и ADO :-)
Подскажите и мне, пожалуйста -- на чужих примерах не научился..
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807724
ыыыыыы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а зачем open делать
а на какой строчке конкретно ругается, обычно такие ошибки пишет на open рекордсета
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807745
Leon.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ругается на rst.MoveLast
Open делаю потому, что состояние rst после Set rst = cmd.Execute()
остается adStateClosed. Вот я и подумывал -- не надо ли открыть явно?
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807808
ыыыыыы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у меня такая же конструкция без open
проходит без проблем
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807811
Birjan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А процедура сама отлажена?
Проверьте ее в QA. Возвращает ли она что-нибудь?
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807821
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
SET NOCOUNT ON
искать в форуме
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807828
Dats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот сдесь по-моему не так надо
cmd.CommandText = "[dbo].[ap_Test]"
а так
cmd.CommandText = "exec [dbo].[ap_Test]",

Можно проще сделасть, если не знаешь синтаксиса работы с SQL Server
На сервере ХП, на ее основе - View.
А View подключаешь к Access как связанную таблицу и работаешь с ней как с таблицей в Accesse.
...
Рейтинг: 0 / 0
Наполнить ADODB.Recordset данными из ХП
    #32807863
Leon.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В QA все возвращает, ОК.
SET NOCOUNT ON -- это помогло, спасибо!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Наполнить ADODB.Recordset данными из ХП
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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