powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / RecordSource отчета в Access2000, adp
8 сообщений из 8, страница 1 из 1
RecordSource отчета в Access2000, adp
    #32109433
Фотография grinya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На основе заполненных полей, комбобоксов у меня берутся параметры для ХП (на MSSQL), и формируется строка типа strSQL = "uspr_FindFirms @par1 = <...>, @par2 = <...>, ..." Дальше я пытаюсь использовать результат этой процедуры для формирования отчета: открываю отчет с пом. DoCmd.OpenReport , на событие открытия отчета вешаю Me.RecordSource = strSQL. При открытии выдается ошибка "Не существет источник записей "uspr_FindFirms @par1 = ..."
Я неправильно задал источник или не на том этапе его меняю?
Как правильно сформировать отчет, имея строку запуска ХП?
Спасибо.
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109464
Julius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте сформировать эту строку так:

"EXEC dbo.uspr_FindFirms @par1 = <...>, @par2 = <...>, ..."
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109465
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во первых если uspr_FindFirms это ХР то ты забыл указать в запросе exec
Во вторых формировать строку RecordSource стоит только если не можеш обойтись стандартным способом (напр если одна итаже ХП используется для заполнения нескольких комбобоксов в одной форме с разными параметрами)
В третих для стандартной передачи параметров для формы или отчета на основе ХП существует свойство входящие параметры. Т.е. RecordSource записываеш имя процедуры ,а в вх парам чтото типа @Dog_ID =Forms![Dog_Vvod]!lngID, @DogDS_ID = Forms![DogDS_Vvod]!bytID
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109480
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Небольшая деталь:при указании ХП в источнике строк не забудь проставить префикс хозяина (напр dbo.МояХП)
В AccessXP есть отдельное свойство кот заполняется автоматом, и вообще лучше переходи на XP (по крайней мере пиши на нем сохраняя в формате 2000)
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109496
Фотография grinya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за дельные советы.
Попробовал exec dbo.uspr_FindFirm... - пишет "Не существует источник exec dbo.uspr_FindFirm..."
Стандартный способ - это без использования ХП вообще?
У меня вызов этой же ХП еще используется при заполнении формы, может как то можно все таки REcordSet формы вкачать в отчет?
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109505
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стандартный способ - это когда в свойстве источник строк просто указывается имя процедуры dbo.uspr_FindFirm , а в свойстве входные параметры указывается строка @Dog_ID int =Forms![Dog_Vvod]!lngID, @DogDS_ID tinyint = Forms![DogDS_Vvod]!bytID где
@Dog_ID ,@DogDS_ID - имена параметров ХП
tinyint,int - SQL типы параметров
Forms![Dog_Vvod]!lngID,Forms![DogDS_Vvod]!bytID - ссылки на обекты VBA значения которых следует передать в ХП

http://www.hiprog.com/access/default.asp?Chapter=113
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109547
Фотография grinya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятно со стандартным способом, но для получения значений параметров у меня отдельная функция была, там не все просто с формы бралось. Поэтому и хотел использовать уже готовую строку запуска процедуры.
...
Рейтинг: 0 / 0
RecordSource отчета в Access2000, adp
    #32109622
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ссылки на обекты VBA значения которых следует передать в ХП это не обязательно элементы формы , можно и функцию
@BegData datetime = dtGetDateBeg(),@EndData datetime = dtGetDateEnd()
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / RecordSource отчета в Access2000, adp
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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