Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Каких параметров ему не хватает? / 25 сообщений из 31, страница 1 из 2
29.07.2004, 11:16:15
    #32626676
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
DoCmd.OpenForm "1", acNormal, "", "", acAdd, acNormal

Forms![1]!1 = Forms![2]!6

Forms![1]!2 = Forms![2]!4
Kod = Forms![1]!Код
DoCmd.Close acForm, "1"
CurrentDb.Execute "INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос].Счетчик, " & Kod & " FROM [Запрос]"
DoCmd.OpenForm "1", acNormal, "", "", , acNormal

При выполнении этого, Access пишет - Слишком мало параметров. Требуется 9.

Каких параметров?
Почему 9?
...
Рейтинг: 0 / 0
29.07.2004, 11:23:39
    #32626697
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
...
Рейтинг: 0 / 0
29.07.2004, 12:32:52
    #32626909
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Сделал я все как говорится в
http://www.sql.ru/forum/actualthread.aspx?tid=50046#349284

запрос нормально работает из конструктора, но отказывается работать из программы.

В чем проблемма???
...
Рейтинг: 0 / 0
29.07.2004, 12:39:56
    #32626934
lsnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Может не соответствие типов? Попробую & Str(Kod) &
...
Рейтинг: 0 / 0
29.07.2004, 12:42:06
    #32626938
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Попробовал - то же самое :-((
...
Рейтинг: 0 / 0
29.07.2004, 12:50:08
    #32626954
lsnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Я все же проверил бы всетаки все типы данных. И приведи строку полученную от Debug.print
...
Рейтинг: 0 / 0
29.07.2004, 13:16:02
    #32627035
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Вот что дает debug.print

INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос для выбору по критериям].Счетчик, -1953300196 As A FROM [Запрос для выбору по критериям];
...
Рейтинг: 0 / 0
29.07.2004, 13:18:34
    #32627044
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
А [Запрос для выбору по критериям] можно увидеть?
...
Рейтинг: 0 / 0
29.07.2004, 13:20:11
    #32627049
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
SELECT DISTINCTROW [Объекты Запрос].Счетчик, [Объекты Запрос].[Наименование по БТИ], [Объекты Запрос].[Место расположения], [Объекты Запрос].[Технич Хар-ки (Общ S м2 объекта/объем м3)], [Объекты Запрос].[Серия св-ва], [Объекты Запрос].[№ св-ва], [Объекты Запрос].Признак, [Объекты Запрос].[Производственные(1)/непроизводственные(0)], [Объекты Запрос].[Используется (1)/Не используется (0)], [Объекты Запрос].Балансодержатель, [Объекты Запрос].Примечание, [Объекты Запрос].Объединение, Sum([Бухгалтерские данные].[Стоимость балансовая]) AS [Sum-Стоимость балансовая], Sum([Бухгалтерские данные].[Стоимость остаточная]) AS [Sum-Стоимость остаточная], Sum([Бухгалтерские данные].[Амортизация в месяц]) AS [Sum-Амортизация в месяц], IIf(([Sum-Стоимость остаточная]-([Sum-Амортизация в месяц]*DateDiff("m","01.07.2003",Date())))<=0,0,([Sum-Стоимость остаточная]-([Sum-Амортизация в месяц]*DateDiff("m","01.07.2003",Date())))) AS [Остаточная на сегодня], ИнвДляКод.Инв№№
FROM (ВыборОбъединБалансодер INNER JOIN (([Код связи] INNER JOIN [Объекты Запрос] ON [Код связи].[Код Объекта недвижимости] = [Объекты Запрос].[Код Объекта недвижимости]) INNER JOIN ИнвДляКод ON [Код связи].[Код Объекта недвижимости] = ИнвДляКод.[Код Объекта недвижимости]) ON ВыборОбъединБалансодер.Счетчик = [Объекты Запрос].Счетчик) INNER JOIN [Бухгалтерские данные] ON [Код связи].[Код Объекта недвижимости] = [Бухгалтерские данные].[Код Объекта недвижимости]
GROUP BY [Объекты Запрос].Счетчик, [Объекты Запрос].[Наименование по БТИ], [Объекты Запрос].[Место расположения], [Объекты Запрос].[Технич Хар-ки (Общ S м2 объекта/объем м3)], [Объекты Запрос].[Серия св-ва], [Объекты Запрос].[№ св-ва], [Объекты Запрос].Признак, [Объекты Запрос].[Производственные(1)/непроизводственные(0)], [Объекты Запрос].[Используется (1)/Не используется (0)], [Объекты Запрос].Балансодержатель, [Объекты Запрос].Примечание, [Объекты Запрос].Объединение, ИнвДляКод.Инв№№
HAVING (((Sum([Бухгалтерские данные].[Стоимость балансовая])) Between [Forms]![КритерииВыбора]![Поле22] And [Forms]![КритерииВыбора]![Поле24]) AND ((Sum([Бухгалтерские данные].[Стоимость остаточная])) Between [Forms]![КритерииВыбора]![Поле26] And [Forms]![КритерииВыбора]![Поле28]) AND ((Switch([Forms]![КритерииВыбора]![Группа30]=3,[Признак]="жилое" Or [Признак]="здан" Or [Признак]="сооруж",[Forms]![КритерииВыбора]![Группа30]=2,[Признак]="здан" Or [Признак]="сооруж",[Forms]![КритерииВыбора]![Группа30]=1,[Признак]="жилое"))<>False) AND ((IIf([Forms]![КритерииВыбора]![Группа4]=2,[Производственные(1)/непроизводственные(0)]=0 Or [Производственные(1)/непроизводственные(0)]=1,[Производственные(1)/непроизводственные(0)]=[Forms]![КритерииВыбора]![Группа4]))<>False) AND ((IIf([Forms]![КритерииВыбора]![Группа13]=2,[Используется (1)/Не используется (0)]=0 Or [Используется (1)/Не используется (0)]=1,[Используется (1)/Не используется (0)]=[Forms]![КритерииВыбора]![Группа13]))<>False)) OR (((Sum([Бухгалтерские данные].[Стоимость балансовая])) Is Null) AND ((Sum([Бухгалтерские данные].[Стоимость остаточная])) Is Null) AND ((Switch([Forms]![КритерииВыбора]![Группа30]=3,[Признак]="жилое" Or [Признак]="здан" Or [Признак]="сооруж",[Forms]![КритерииВыбора]![Группа30]=2,[Признак]="здан" Or [Признак]="сооруж",[Forms]![КритерииВыбора]![Группа30]=1,[Признак]="жилое"))<>False) AND ((IIf([Forms]![КритерииВыбора]![Группа4]=2,[Производственные(1)/непроизводственные(0)]=0 Or [Производственные(1)/непроизводственные(0)]=1,[Производственные(1)/непроизводственные(0)]=[Forms]![КритерииВыбора]![Группа4]))<>False) AND ((IIf([Forms]![КритерииВыбора]![Группа13]=2,[Используется (1)/Не используется (0)]=0 Or [Используется (1)/Не используется (0)]=1,[Используется (1)/Не используется (0)]=[Forms]![КритерииВыбора]![Группа13]))<>False))
ORDER BY [Объекты Запрос].Счетчик;
...
Рейтинг: 0 / 0
29.07.2004, 13:28:56
    #32627081
Proga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
М-да, и долго доходил до написания таких запросов?
...
Рейтинг: 0 / 0
29.07.2004, 13:31:13
    #32627090
lsnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Сдается мне что он не видит [Forms]![КритерииВыбора]![Поле22] и тд. Формы открыты при запуске инсерта?
...
Рейтинг: 0 / 0
29.07.2004, 13:42:37
    #32627121
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Если запрос сохраненный, то работать не будет. У тебя текст состоит из 3778 знаков, а в сохраненном запросе можно использовать 1024 знака (набери в Helpe "Спецификация", сам увидишь)
...
Рейтинг: 0 / 0
29.07.2004, 13:46:40
    #32627132
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Все запросы работают. ОДНОЗНАЧНО!!!

формы на основе этого запроса работают!!!
...
Рейтинг: 0 / 0
29.07.2004, 13:47:38
    #32627135
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Формы открыты!
...
Рейтинг: 0 / 0
29.07.2004, 13:49:04
    #32627138
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Так, начинаем сначала.

Есть таблица "объекты", где каждый объект имеет индекс "Счетчик"
Далее есть таблица "Договоры аренды", где каждый договор имеет индекс "Код"
Есть таблица "Объекты аренды" где имеется 2 столбца "Счетчик" и "Код".

Запросом отбираем значения из таблицы "Объекты" по определенному критерию

Нам необходимо сформировать договор аренды и добавить в таблицу Объекты аренды все объекты аренды с кодом договора.

т.е. одновременно надо внести 1 строку в таблицу "Договоры аренды" и N строк - равных количеству строк запроса в таблицу Объекты договора" (+в каждую стоку индекс договора аренды)

Ух!!!
...
Рейтинг: 0 / 0
29.07.2004, 14:18:11
    #32627238
ищ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
у тебя Запрос ссылается на поля формы
при графическом запуске он берет эти параметры,
а при пригораммном запуске, нужно передавать эти параметры
вот примерчик запуска запроса на ADO.
для DAO поищи приеры здесь на форуме

Dim cmd As ADODB.Command
Dim prm As ADODB.Parameter
Set cmd = New ADODB.Command
Set cmd.ActiveConnection = CurrentProject.Connection
cmd.CommandText = "[Запрос1]"
cmd.CommandType = adCmdTable
For Each prm In cmd.Parameters
prm.Value = Eval(prm.Name)
Next prm
cmd.Execute
...
Рейтинг: 0 / 0
29.07.2004, 14:20:52
    #32627243
ищ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Даф
в спецификации написано
Число знаков в инструкции SQL - приблизительно 64 000
...
Рейтинг: 0 / 0
29.07.2004, 14:46:43
    #32627329
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Да, моя ошибка. Число символов в ЯЧЕЙКЕ запроса = 1024.
Сори за туфту...
...
Рейтинг: 0 / 0
29.07.2004, 14:53:50
    #32627352
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Попробуй так
Dim db As Database, qdf As QueryDef
Set db = CurrentDb()

Set qdf = db.QueryDefs("INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос].Счетчик, " & Kod & " FROM [Запрос]")
qdf.Parameters("[Forms]![КритерииВыбора]![Поле26] ") = [Forms]![КритерииВыбора]![Поле26]
qdf.Parameters([Forms]![КритерииВыбора]![Поле22] )= [Forms]![КритерииВыбора]![Поле22] 'И так все параметры
....
qdf.Execute dbFailOnError
qdf.Close
...
Рейтинг: 0 / 0
29.07.2004, 15:00:08
    #32627371
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
А че Eval не хотите ему предложить?
...
Рейтинг: 0 / 0
29.07.2004, 15:30:27
    #32627473
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
2 RomaR чето не то а вот че?
...
Рейтинг: 0 / 0
29.07.2004, 15:36:43
    #32627487
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
И че пишет на сей раз?
...
Рейтинг: 0 / 0
29.07.2004, 15:43:43
    #32627509
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Элемент не обнаружен в данном семействе
...
Рейтинг: 0 / 0
29.07.2004, 15:46:11
    #32627520
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Покажи код, который ввел, и скажи на какой строке ругается
...
Рейтинг: 0 / 0
29.07.2004, 15:49:17
    #32627533
Strukov Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Каких параметров ему не хватает?
Public Function NoviyDogovorArendySpiskom()
On Error GoTo НовыйДоговорАренды_Err
Dim strSQL As String
Dim Kod As String
Dim db As Database, qdf As QueryDef
Set db = CurrentDb()




If (Forms![Ввод договора перечнем]!ПолеСоСписком4 <> 0 And Forms![Ввод договора перечнем]!ПолеСоСписком6 <> 0) Then
DoCmd.Close acForm, "Договоры аренды"
DoCmd.OpenForm "Договоры аренды", acNormal, "", "", acAdd, acNormal
' Арендатор
Forms![Договоры аренды]!Арендатор = Forms![Ввод договора перечнем]!ПолеСоСписком6
' Арендодатель
Forms![Договоры аренды]!Арендодатель = Forms![Ввод договора перечнем]!ПолеСоСписком4

Kod = Forms![Договоры аренды]!Код
DoCmd.Close acForm, "Договоры аренды"
Set qdf = db.QueryDefs("INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос для выбору по критериям].Счетчик, " & Kod & " FROM [Запрос для выбору по критериям]")
qdf.Parameters([Forms]![КритерииВыбора]![Поле26]) = [Forms]![КритерииВыбора]![Поле26]
qdf.Parameters([Forms]![КритерииВыбора]![Поле24]) = [Forms]![КритерииВыбора]![Поле24]
qdf.Parameters([Forms]![КритерииВыбора]![Поле22]) = [Forms]![КритерииВыбора]![Поле22]
qdf.Parameters([Forms]![КритерииВыбора]![Поле28]) = [Forms]![КритерииВыбора]![Поле28]
qdf.Parameters([Forms]![КритерииВыбора]![Группа30]) = [Forms]![КритерииВыбора]![Группа30]
qdf.Parameters([Forms]![КритерииВыбора]![Группа4]) = [Forms]![КритерииВыбора]![Группа4]
qdf.Parameters([Forms]![КритерииВыбора]![Группа13]) = [Forms]![КритерииВыбора]![Группа13]
qdf.Parameters([Forms]![КритерииВыбора]![ПолеСоСписком0]) = [Forms]![КритерииВыбора]![ПолеСоСписком0]
qdf.Parameters([Forms]![КритерииВыбора]![ПолеСоСписком2]) = [Forms]![КритерииВыбора]![ПолеСоСписком2]

qdf.Execute dbFailOnError
qdf.Close





'strSQL = "INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос для выбору по критериям].Счетчик, " & Str(Nz(Kod)) & " As A FROM [Запрос для выбору по критериям];"

'Debug.Print strSQL

'CurrentDb.Execute strSQL
'DoCmd.OpenQuery "Добавление", acNormal, acEdit


DoCmd.OpenForm "Договоры аренды", acNormal, "", "", , acNormal

End If


НовыйДоговорАренды_Exit:
Exit Function

НовыйДоговорАренды_Err:
MsgBox Error$
Resume НовыйДоговорАренды_Exit

End Function
ругается на Set qdf = db.QueryDefs("INSERT INTO [Объекты аренды] ( [Арендуемый объект], [Код договора] ) SELECT [Запрос для выбору по критериям].Счетчик, " & Kod & " FROM [Запрос для выбору по критериям]")
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Каких параметров ему не хватает? / 25 сообщений из 31, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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