|
|
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Всем привет! я из Аксеса (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 как с этим бороться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 15:45 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Хорошо бы конечно увидеть текст хп ,но смею предположить,что в хп не стоит set nocount on ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 15:50 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
вот текст 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 15:59 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Вчитался в вопрос и понял что возможно поспешил с советом exec UP_RepSumMishtah @Date1, @Date2 - Это синтаксис SQL сервера Насколько я понимаю из Access ты можешь вызвать хп через метод Execute объектов Connection или Command(Что гораздо лучше) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:03 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
>Насколько я понимаю из Access ты можешь вызвать хп через метод Execute объектов Connection или Command(Что гораздо лучше) это ещё не известно лучше ли через Execute или Command можно затащить результат хп в рекордсет а у репорта нет рекордсета у него только рекордсорс вот поэтому я и вызываю в аксесе в запросе к серверу извратилась- собираю програмно текст запроса вместо хп и без set nocount on возвращает мне записи в отчёт , но хотелось бы по человечески ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:11 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
По-моему, какраз в данном случае set nocount on не нужен. (Первый же оператор выводит записи) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:15 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
а что нужно? написать в заголовке помогите девушке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:16 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
У отчёта есть параметр OpenArguments, туда можно передавать Select из хп вот таким образом: Код: plaintext Затем открывать отчёт: Код: plaintext Потом на открытие отчёта: Код: plaintext Ну и на NoData написать обработку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:19 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
спасибо , попробую с OpenArgs а на set nocount отчёту глубоко пелевать и убирала и добавляла PS. а VIG был прав про заголовок :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:28 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
>У отчёта есть параметр OpenArguments, туда можно передавать Select из хп вот таким образом: нет у отчёта такого параметра он есть у формы а форма мне не подходит то есть ваше решение только для формы а как быть с отчётом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 16:55 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Передать что угодно в отчет можно через глобальную переменную. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:00 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
в самом начале писала Аксес2000 (мдб) а ты в каком это проверял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:01 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
>Передать что угодно в отчет можно через глобальную переменную. а по-конкретнее пожайлуста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:03 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
В 2002, тогда пользуемся глобальной переменной. В 97 такая строка Код: plaintext 1. не будет работать, в 2000-м не работал. Не внимательно прочитал:) Через глобальную переменную - на OnOpen обращаемся не к OpenArgs, а к переменной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:06 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Public XXX As String XXX = ... DoCmd.OpenReport ... А в отчете на OnOpen: Me.RecordSource = XXX ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:08 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Цитирую К.Маркса (тьфу,К.Гетца) "Свойство отчетов InputParameters позволяет запрашивать у пользователя параметры хранимой процедуры..." Еще там написано что свойство работает абсолютно аналогично одноименному свойству формы to be continued ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:13 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
не работает говорит что для репрорта не поддерживается, только для формы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:13 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
VIG- на какой странице и какого тома? может это про адп? а 2000 мдб я InputParameters не нашла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:18 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
я так и знала Карл Маркс(в простонародье Гетц) том 2, стр 295 InputParameters новое свойство в проэктах Аксекса а у меня мдб а не адр жаль, очень жаль что так и не удалось послушать начальника транспортного отдела ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:37 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
т2,стр 295 но это действительно про adp. Глубоко и искрене раскаиваюсь и надеюсь ,что самый гуманный суд в мире учтет мое чистосердечное признание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:43 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
не издевайся я прекрасно понимаю что даже лишний раз в хелп залезть- это уже трата времени, а тем более в книгах копаться ради чужой проблемы без обид, договорились? просто подумала что должен быть какой то способ заполучить результат хп в отчёт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:53 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Ну так написали же: с помощью глобальной переменной объявленной на уровне модуля можно практически так же как и с OpenArgs передать в отчёт всё что угодно, в том числе и результат выполнения ХП, в чём проблема-то теперь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 17:58 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Я не издеваюсь- 2000 увидел ,а вот мдб нет-может монитор глючит? מתנצל עד פעם ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:00 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
я из Аксеса (2000 мдб) Мдб там тоже есть:) Но я и 2000 не увидел)))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:03 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
можно я тоже посмеюсь? >с помощью глобальной переменной объявленной на уровне модуля можно практически так же как и с OpenArgs передать в отчёт всё что угодно, в том числе и результат выполнения ХП, в чём проблема-то теперь? ну не работает так и всё вот интересно , а Саныч свой совет проверял? вдруг у меня руки кривые? или смотрю в книгу а вижу... ну что вижу , а ничего не вижу? я думаю что тут проблема в чём-то другом вы ещё разок с начала прочитайте ведь в QA возвращает записи а в окошко запроса к серверу тоже должен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:18 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
> вот интересно , а Саныч свой совет проверял? Он им постоянно пользуется. (Саныч советом, не наоборот.) :^) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:22 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
наверное таки ручки кривые сделала так но ... у меня не работает отчёт при открытии орёт что записей не получил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:29 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Смеяться можно сколько угодно - это полезно для здоровья, я например, ни над кем в этом топике не смеялся. Тогда поставим вопрос по другому - вы строку подключения к серверу в запросе делаете? Полный текст запроса приведён или только часть? Если работаете с хранимыми процедурами, лучше переходить на adp. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:35 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
На всякий случай: я отвечал только на вопрос, как без OpenArgs передать что-то в отчет. На первоначальный вопрос этого топика я отвечать не берусь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:38 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
строку подключения к серверу в запросе делаю текст запроса приведён -Полный перейти на адп не могу ещё один момент если это селект из хп прямо написать в окошко запроса ксерверу и вместо переменных написать константу(програмно собрать тело запроса) всё работает вот так Strsql = " " Strsql = " SELECT SUM([tmp _plan_row].act_katif+[tmp _plan_row].act_merkazi+[tmp _plan_row].act_meshuklad+[tmp _plan_row].act_kfooim) AS Sumkatif," & vbCrLf Strsql = Strsql & " SUM(0) AS Harig," & vbCrLf Strsql = Strsql & " TRCKS.TRACK_ASMASHTA" & vbCrLf Strsql = Strsql & " FROM PLAN_KOTERET INNER JOIN" & vbCrLf Strsql = Strsql & " plan_tmp ON PLAN_KOTERET.PLAN_NUMBER = plan_tmp.plan_num INNER JOIN" & vbCrLf Strsql = Strsql & " [tmp _plan_row] ON plan_tmp.id = [tmp _plan_row].plan_tmp_num FULL OUTER JOIN " & vbCrLf Strsql = Strsql & " TRCKS ON plan_tmp.track = TRCKS.TRACK_ID " & vbCrLf Strsql = Strsql & " WHERE (PLAN_KOTERET.PLAN_DATE >= CONVERT(DATETIME, '" & Format(Me!BeginPlanDTText, "mm/dd/yyyy") & "', 102)) AND " & vbCrLf Strsql = Strsql & " (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '" & Format(Me!EndPlanDTText, "mm/dd/yyyy") & "', 102))" & vbCrLf Strsql = Strsql & " GROUP BY TRCKS.TRACK_ASMASHTA" & vbCrLf Strsql = Strsql & " Union All" & vbCrLf Strsql = Strsql & " SELECT SUM(0) AS Sumkatif," & vbCrLf Strsql = Strsql & " SUM(TRCKS.TRACK_NEFA) AS Harig," & vbCrLf Strsql = Strsql & " TRCKS.TRACK_ASMASHTA" & vbCrLf Strsql = Strsql & " FROM PLAN_KOTERET INNER JOIN" & vbCrLf Strsql = Strsql & " plan_tmp ON PLAN_KOTERET.PLAN_NUMBER = plan_tmp.plan_num FULL OUTER JOIN" & vbCrLf Strsql = Strsql & " TRCKS ON plan_tmp.track = TRCKS.TRACK_ID" & vbCrLf Strsql = Strsql & " WHERE (PLAN_KOTERET.PLAN_DATE >=CONVERT(DATETIME, '" & Format(Me!BeginPlanDTText, "mm/dd/yyyy") & "', 102)) AND " & vbCrLf Strsql = Strsql & " (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '" & Format(Me!EndPlanDTText, "mm/dd/yyyy") & "', 102)) AND" Strsql = Strsql & " (plan_tmp.sevev = N'ç')" & vbCrLf Strsql = Strsql & " GROUP BY TRCKS.TRACK_ASMASHTA" & vbCrLf Strsql = Strsql & " ORDER BY TRCKS.TRACK_ASMASHTA" Debug.Print Strsql Call QueryExecute(Strsql, "Q_RepQuerySub1", 1, 0, True) DoCmd.OpenReport "TrackLoadReport0", acViewPreview "Q_RepQuerySub1" это имя запроса к серверу а ф-я QueryExecute настраивает запрос (указываю стрку подк-я,возвращать ли записи, выполнять ли сейчас и т.д) но хотелось бы так: declare @Date1 datetime declare @Date2 datetime set @Date1='01/01/2003' set @Date2='02/01/2003' exec UP_RepSumMishtah @Date1, @Date2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 18:50 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
& vbCrLf определенно лишние для исполняемого кода - только для красоты просмотра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:06 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
что-то я не пойму, те несчастные(вроде меня) которые в 2000 в мдб работают- пользуются только акксесовскими запросами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:18 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Я постоянно пользуюсь Pass-Through Queries. Причем с динамически меняющимся SQL'ем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:21 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
я тоже пользуюсь Pass-Through Queries с динамически меняющимся SQL'ем а отчёты у тебя сидят не на хп а на таких запросах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:25 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Именно так. Я хп никогда не пользовался и тем ущербен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:26 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
я бы хотел посмотреть результат Debug.Print Strsql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:27 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
вот результат из Debug.Print Strsql: SELECT SUM([tmp _plan_row].act_katif+[tmp _plan_row].act_merkazi+[tmp _plan_row].act_meshuklad+[tmp _plan_row].act_kfooim) AS Sumkatif, 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 >= CONVERT(DATETIME, '01/01/2003', 102)) AND (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '02/01/2003', 102)) GROUP BY TRCKS.TRACK_ASMASHTA Union All SELECT SUM(0) AS Sumkatif, 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 >=CONVERT(DATETIME, '01/01/2003', 102)) AND (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '02/01/2003', 102)) AND (plan_tmp.sevev = N'ç') GROUP BY TRCKS.TRACK_ASMASHTA ORDER BY TRCKS.TRACK_ASMASHTA SELECT SUM([tmp _plan_row].act_katif+[tmp _plan_row].act_merkazi+[tmp _plan_row].act_meshuklad+[tmp _plan_row].act_kfooim) AS Sumkatif, 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 >= CONVERT(DATETIME, '01/01/2003', 102)) AND (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '02/01/2003', 102)) GROUP BY TRCKS.TRACK_ASMASHTA Union All SELECT SUM(0) AS Sumkatif, 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 >=CONVERT(DATETIME, '01/01/2003', 102)) AND (PLAN_KOTERET.PLAN_DATE <= CONVERT(DATETIME, '02/01/2003', 102)) AND (plan_tmp.sevev = N'ç') GROUP BY TRCKS.TRACK_ASMASHTA ORDER BY TRCKS.TRACK_ASMASHTA ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:29 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Ой скока словей на иврите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:30 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
я ж говорила что так у нас принято ивритские слова латинскими буквами что делать наследство такое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2003, 19:34 |
|
||
|
Отчёт
|
|||
|---|---|---|---|
|
#18+
Я в mdbшках делаю так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2003, 10:40 |
|
||
|
|

start [/forum/topic.php?all=1&fid=45&tid=1680511]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 333ms |

| 0 / 0 |
