powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проблемма с Access2000
9 сообщений из 9, страница 1 из 1
Проблемма с Access2000
    #32096259
Kroy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как описать метод Execute с временным запросом(в Access2000, в Access97 все прокатывает)? Может какие библеотеки присоединить?Пример:
dim qvr as QveryDef

...........(описание запроса)

qvr. Execute ------>Выдает ошибку?
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096264
-=Alexey=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты полный пример приведи
скажем открываешь Борей.mdb
на табличке Клиенты ctr^c ctr^v имя Т, только структура
делаешь новый модуль
вставляешь текст
Public Sub p()
Dim qf As QueryDef
Set qf = CurrentDb.CreateQueryDef("", "Insert INTO T Select * FROM Клиенты ")
qf.Execute
qf.Close
End Sub
запускаешь.
работает?
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096265
Kroy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да втом то и проблемма, что твой пример, только запрос с парвметрами которие мы ему передаем программно qvr.parametrs(1)=123444.....
В Access97 работает на раз, вообще без проблемм, а вот в Access2000 и начинается геморой.Вызываем qvr.Execute Кричит, что метод не правильный?????????
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096272
-=Alexey=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди читающие твои посты не ясновидящие, если тебе нужен совет, описывай свою проблему подробнее, приведи весь код, а не маленький кусочек, который, по твоему мнению, не работает.
вот еще пример на то же базе. работает у тебя ?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Sub p()
Dim qf As QueryDef
  Set qf = CurrentDb.CreateQueryDef( "", " PARAMETERS [ClientID] text;Insert INTO T Select * FROM Клиенты WHERE КодКлиента=[ClientID] ")
  With qf
    qf.Parameters(0 ) = "FISSA"
    qf.Execute
    qf.Close
  End With
End Sub
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096304
Kroy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привожу пример:
Dim qf As DAO.QueryDef

Date_Begin = CDate("01." & I & "." & Trim(Str(Year(Date))))
Date_End = DateAdd("d", -1, DateAdd("m", 1, Date_Begin))

SQL_ADD = "INSERT INTO MAX_ZAGRUZKA ( Uchastok, 1 ) " & _
"SELECT zapr_Max_Zagr.ID, zapr_Max_Zagr.Itog_Proizvod " & _
"FROM zapr_Max_Zagr;"

Set qf = Сurrentdb.CreateQueryDef("", SQL_ADD)

qf.Parameters(0) = Date_Begin
qf.Parameters(1) = Date_End
qf.Parameters(2) = Date_Begin
qf.Parameters(3) = Date_End

qf.Execute ------> Ошибка ????????
qf.Close
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096440
-=Alexey=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а где часть PARAMETERS и WHERE?
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096454
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо, в zapr_Max_Zagr?
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32096467
-=Alexey=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да уж, просишь написать полностью, так мозги пудрят. И отвечай потом
...
Рейтинг: 0 / 0
Проблемма с Access2000
    #32098885
Kroy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблицы и запросы, которые храняться в базе:
SPR_BRAK_M - > таблица
UCHASTKI - > таблица
CONTRAKT - > таблица
PROSTOY - > таблица

zapr_Proiz_Uch_Contr (запрос)=SELECT CONTRAKT.Uchastok, [Q_Stankov]*[Proizvodit_hour]*[Resurs_Time] AS Proiz_Uch_Contr
FROM CONTRAKT;

zapr_Select_Hour_Prostoy (запрос)=SELECT PROSTOY.Uchastok, Sum(PROSTOY.Hours) AS [Sum-Hours]
FROM PROSTOY
WHERE (((PROSTOY.Date_) Between [p1] And [p2] ))
GROUP BY PROSTOY.Uchastok;

zapr_Max_Zagr (запрос)= "SELECT SPR_BRAK_M.ID, Format(((([sum-Proizvodit_hour]*[avg-Resurs_Time]+(nz([Proiz_Uch_Contr],0)*contrakt_vvod(1,0)))*(contrakt_vvod(1,1)-0.5*calc_Grafika( [p_1] , [p_2] ))-(nz([Sum-Hours],0)*[avg-Proizvodit_hour]))*Proz_Brak()/[Presch_vid_Prod])/5000,"0")*5000 AS Itog_Proizvod, Avg(UCHASTKI.Proizvodit_hour) AS [Avg-Proizvodit_hour], Sum(UCHASTKI.Proizvodit_hour) AS [Sum-Proizvodit_hour], Avg(UCHASTKI.Resurs_Time) AS [Avg-Resurs_Time], zapr_Select_Hour_Prostoy.[Sum-Hours], zapr_Proiz_Uch_Contr.Proiz_Uch_Contr, SPR_BRAK_M.Presch_vid_Prod
FROM SPR_BRAK_M INNER JOIN (UCHASTKI LEFT JOIN (zapr_Select_Hour_Prostoy RIGHT JOIN zapr_Proiz_Uch_Contr ON zapr_Select_Hour_Prostoy.Uchastok = zapr_Proiz_Uch_Contr.Uchastok) ON UCHASTKI.ID_Uchastok = zapr_Proiz_Uch_Contr.Uchastok) ON SPR_BRAK_M.ID = UCHASTKI.ID_Uchastok
GROUP BY SPR_BRAK_M.ID, zapr_Select_Hour_Prostoy.[Sum-Hours], zapr_Proiz_Uch_Contr.Proiz_Uch_Contr, SPR_BRAK_M.Presch_vid_Prod;"

Выполняю программу для того, чтобы заполнить таблицу MAX_ZAGRUZKA на основе запроса zapr_Max_Zagr :
sub ins()
Dim I As Integer
Dim Date_Begin As Date
Dim Date_End As Date
Dim qf As DAO.QueryDef

I=1

Date_Begin = CDate("01." & I & "." & Trim(Str(Year(Date))))
Date_End = DateAdd("d", -1, DateAdd("m", 1, Date_Begin))

SQL_ADD = "PARAMETERS [p1] DateTime, [p2] DateTime, [p_1] DateTime, [p_2] DateTime;" & _
"INSERT INTO MAX_ZAGRUZKA ( Uchastok, " & I & " ) " & _
"SELECT zapr_Max_Zagr.ID, zapr_Max_Zagr.Itog_Proizvod " & _
"FROM zapr_Max_Zagr;"

Set qf = Сurrentdb.CreateQueryDef("", SQL_ADD)

qf.Parameters(0) = Date_Begin
qf.Parameters(1) = Date_End
qf.Parameters(2) = Date_Begin
qf.Parameters(3) = Date_End

qf.Execute -->Ошибка(Ошибочный Аргумент), причем только в Access2000, а в Access97 все OK????
qf.Close

end sub
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проблемма с Access2000
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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