Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отчёт / 25 сообщений из 44, страница 1 из 2
15.07.2003, 15:45
    #32208555
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Всем привет!

я из Аксеса (2000 мдб)в запросе к SQL серверу вызываю стор процедуру с Selectом
т,е стор процедура должна вернуть выборку для отчёта
В QA она выполняется без проблем
а в аксесе в запросе к серверу говорит что не может вернуть записи
в свойствах запроса установлено вернуть записи

вот текст вызова
declare @Date1 datetime
declare @Date2 datetime

set @Date1='01/01/2003'
set @Date2='02/01/2003'

exec UP_RepSumMishtah @Date1, @Date2

как с этим бороться?
...
Рейтинг: 0 / 0
15.07.2003, 15:50
    #32208567
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Хорошо бы конечно увидеть текст хп ,но смею предположить,что в хп не стоит
set nocount on
...
Рейтинг: 0 / 0
15.07.2003, 15:59
    #32208588
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
вот текст
CREATE proc dbo.UP_RepSumMishtah @dateBeg datetime , @dateEnd datetime
as
set nocount on

SELECT SUM([tmp _plan_row].act_katif) AS Sumkatif,
SUM([tmp _plan_row].act_merkazi) AS Summerkazi,
SUM([tmp _plan_row].act_meshuklad) AS Summeshuklad,
SUM([tmp _plan_row].act_kfooim) AS Sumkfooim,
SUM(0) AS Harig,
TRCKS.TRACK_ASMASHTA
FROM PLAN_KOTERET INNER JOIN
plan_tmp ON PLAN_KOTERET.PLAN_NUMBER = plan_tmp.plan_num INNER JOIN
[tmp _plan_row] ON plan_tmp.id = [tmp _plan_row].plan_tmp_num FULL OUTER JOIN
TRCKS ON plan_tmp.track = TRCKS.TRACK_ID
WHERE (PLAN_KOTERET.PLAN_DATE >= @dateBeg) AND
(PLAN_KOTERET.PLAN_DATE <= @dateEnd)
GROUP BY TRCKS.TRACK_ASMASHTA

UNION ALL

SELECT SUM(0) AS Sumkatif,
SUM(0) AS Summercazi,
SUM(0) AS Summeshuclad,
SUM(0) AS Sumkfooim,
SUM(TRCKS.TRACK_NEFA) AS Harig,
TRCKS.TRACK_ASMASHTA
FROM PLAN_KOTERET INNER JOIN
plan_tmp ON PLAN_KOTERET.PLAN_NUMBER = plan_tmp.plan_num FULL OUTER JOIN
TRCKS ON plan_tmp.track = TRCKS.TRACK_ID
WHERE (PLAN_KOTERET.PLAN_DATE >= @dateBeg) AND
(PLAN_KOTERET.PLAN_DATE <= @dateEnd) AND
(plan_tmp.sevev = N'ח')
GROUP BY TRCKS.TRACK_ASMASHTA
ORDER BY TRCKS.TRACK_ASMASHTA

return
GO
...
Рейтинг: 0 / 0
15.07.2003, 16:03
    #32208603
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Вчитался в вопрос и понял что возможно поспешил с советом
exec UP_RepSumMishtah @Date1, @Date2 - Это синтаксис SQL сервера
Насколько я понимаю из Access ты можешь вызвать хп через метод
Execute объектов Connection или Command(Что гораздо лучше)
...
Рейтинг: 0 / 0
15.07.2003, 16:11
    #32208624
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
>Насколько я понимаю из Access ты можешь вызвать хп через метод
Execute объектов Connection или Command(Что гораздо лучше)

это ещё не известно лучше ли

через Execute или Command можно затащить результат хп в рекордсет
а у репорта нет рекордсета
у него только рекордсорс
вот поэтому я и вызываю в аксесе в запросе к серверу

извратилась- собираю програмно текст запроса вместо хп и без
set nocount on возвращает мне записи в отчёт ,
но хотелось бы по человечески
...
Рейтинг: 0 / 0
15.07.2003, 16:15
    #32208633
Nick987
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
По-моему, какраз в данном случае set nocount on не нужен. (Первый же оператор выводит записи)
...
Рейтинг: 0 / 0
15.07.2003, 16:16
    #32208637
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
а что нужно?

написать в заголовке помогите девушке?
...
Рейтинг: 0 / 0
15.07.2003, 16:19
    #32208639
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
У отчёта есть параметр OpenArguments, туда можно передавать Select из хп вот таким образом:
Код: plaintext
inparam =  "exec  my_sp"  & My_InputParametr

Затем открывать отчёт:
Код: plaintext
DoCmd.OpenReport  "My_Report" , acViewPreview, , , acWindowNormal, inparam

Потом на открытие отчёта:
Код: plaintext
If Not IsNull(Me.OpenArgs) Then Me.RecordSource = Me.OpenArgs


Ну и на NoData написать обработку.
...
Рейтинг: 0 / 0
15.07.2003, 16:20
    #32208642
Nick987
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Просто убери set nocount
...
Рейтинг: 0 / 0
15.07.2003, 16:28
    #32208654
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
спасибо , попробую с OpenArgs

а на set nocount отчёту глубоко пелевать и убирала и добавляла



PS. а VIG был прав про заголовок :)
...
Рейтинг: 0 / 0
15.07.2003, 16:55
    #32208720
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
>У отчёта есть параметр OpenArguments, туда можно передавать Select из хп вот таким образом:


нет у отчёта такого параметра
он есть у формы
а форма мне не подходит
то есть ваше решение только для формы
а как быть с отчётом?
...
Рейтинг: 0 / 0
15.07.2003, 16:57
    #32208728
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Какой версии Access?
...
Рейтинг: 0 / 0
15.07.2003, 17:00
    #32208732
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Передать что угодно в отчет можно через глобальную переменную.
...
Рейтинг: 0 / 0
15.07.2003, 17:01
    #32208734
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
в самом начале писала

Аксес2000 (мдб)
а ты в каком это проверял?
...
Рейтинг: 0 / 0
15.07.2003, 17:03
    #32208740
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
>Передать что угодно в отчет можно через глобальную переменную.

а по-конкретнее пожайлуста
...
Рейтинг: 0 / 0
15.07.2003, 17:06
    #32208749
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
В 2002, тогда пользуемся глобальной переменной.
В 97 такая строка
Код: plaintext
1.
DoCmd.OpenReport  "My_Report" , acViewPreview, , , acWindowNormal, inparam

не будет работать, в 2000-м не работал.
Не внимательно прочитал:)
Через глобальную переменную - на OnOpen обращаемся не к OpenArgs, а к переменной.
...
Рейтинг: 0 / 0
15.07.2003, 17:08
    #32208755
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Public XXX As String
XXX = ...
DoCmd.OpenReport ...

А в отчете на OnOpen:

Me.RecordSource = XXX
...
Рейтинг: 0 / 0
15.07.2003, 17:13
    #32208766
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Цитирую К.Маркса (тьфу,К.Гетца)

"Свойство отчетов InputParameters
позволяет запрашивать у пользователя параметры хранимой процедуры..."
Еще там написано что свойство работает абсолютно аналогично одноименному свойству формы

to be continued
...
Рейтинг: 0 / 0
15.07.2003, 17:13
    #32208767
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
не работает
говорит что для репрорта не поддерживается, только для формы
...
Рейтинг: 0 / 0
15.07.2003, 17:18
    #32208779
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
VIG- на какой странице и какого тома?
может это про адп?
а 2000 мдб я InputParameters не нашла
...
Рейтинг: 0 / 0
15.07.2003, 17:37
    #32208799
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
я так и знала
Карл Маркс(в простонародье Гетц) том 2, стр 295
InputParameters новое свойство в проэктах Аксекса
а у меня мдб а не адр
жаль, очень жаль что так и не удалось послушать начальника транспортного отдела
...
Рейтинг: 0 / 0
15.07.2003, 17:43
    #32208812
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
т2,стр 295
но это действительно про adp.
Глубоко и искрене раскаиваюсь и надеюсь ,что самый гуманный суд в мире учтет мое чистосердечное признание.
...
Рейтинг: 0 / 0
15.07.2003, 17:53
    #32208822
TatianaT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
не издевайся
я прекрасно понимаю что даже лишний раз в хелп залезть- это уже трата времени, а тем более в книгах копаться ради чужой проблемы
без обид, договорились?

просто подумала что должен быть какой то способ заполучить результат хп в отчёт
...
Рейтинг: 0 / 0
15.07.2003, 17:58
    #32208832
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Ну так написали же: с помощью глобальной переменной объявленной на уровне модуля можно практически так же как и с OpenArgs передать в отчёт всё что угодно, в том числе и результат выполнения ХП, в чём проблема-то теперь?
...
Рейтинг: 0 / 0
15.07.2003, 18:00
    #32208834
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчёт
Я не издеваюсь- 2000 увидел ,а вот мдб нет-может монитор глючит?
מתנצל עד פעם
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отчёт / 25 сообщений из 44, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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