powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос в Аксесс.Слишком мало параметров
19 сообщений из 19, страница 1 из 1
Запрос в Аксесс.Слишком мало параметров
    #39348086
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Делаю запрос в коде на VBA в БД Аксесс:
Код: vbnet
1.
2.
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=" & Me.Сотрудник & ") AND (Документ=" & Me.Документ.Value & ") AND ([Вид работы]='" & Me.ВидРаботы.Value & "')", dbOpenDynaset, dbSeeChanges)


При выполнении кода велезает ругательство: Слишком мало параметров. Требуется 1
на строке
Код: vbnet
1.
Set rs = CurrentDb.OpenRecordset("SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=" & Me.Сотрудник & ") AND (Документ=" & Me.Документ.Value & ") AND ([Вид работы]='" & Me.ВидРаботы.Value & "')", dbOpenDynaset, dbSeeChanges)


что не так? какого тут параметра не хватает? помогите пожалуйста. В отладчике проверял - значения всех контролов формы присваиваются...ТабНомер и Документ - числовые, Вид работы - строка, выбирается из значений комбобокса
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348098
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
3.
4.
5.
Dim rs As DAO.Recordset
Dim strSQL As String
strSQL = "SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=" & Me.Сотрудник & ") AND (Документ=" & Me.Документ.Value & ") AND ([Вид работы]='" & Me.ВидРаботы.Value & "')"
DEbug.Print strSQL ' !!! показать нам
Set rs = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset, dbSeeChanges)
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348100
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и
Код: vbnet
1.
Set rs = New DAO.Recordset

добавить...
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348117
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=620) AND (Документ=18297) AND ([Вид работы]='Проверка')

- вот что в отладчике и опять то же ругательство - мало параметров, требуется 1
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348119
Вероятно "НазначенияСотрудникам", это запрос и в нем есть ссылка на форму. Угадал?
Akina
Код: vbnet
1.
Set rs = New DAO.Recordset

добавить... Это лишнее.
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348123
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ), нет, НазначенияСотрудникам - это таблица БД, а не запрос
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348143
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jediAlexНазначенияСотрудникам - это таблица БД
Покажите структуру. А ещё лучше выложите минимальную БД.
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348154
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, структура таблицы НазначенияСотрудникам:
Код- счетчик, ключевое
Сотрудник - целое
Документ - целое
Объект - строка
Вид работы - строка
Делал запрос конструктором, при выполнении вводил все параметры с клавиатуры - все выводится и работает, а в коде ругается не пойму чего не хватает...
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348156
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[Вид работы] скорее всего имеет числовой тип. И в нем подстановка из таблицы справочника.
Угадал?
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348158
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще вариант, какая-то буква латинская.
Еще вариант, какое-то название не верное.
...Сколько гадать будем? Может выложите тестовую БД с проблемной частью(таблица и форма)?
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348186
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Agapov_stas, не могу выложить файл - размер очень большой даже минимальной БД - больше 150КБ
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348192
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jediAlex , сделайте "Сжать-восстановить" и заархивируйте в zip.
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348211
jediAlex
Код: vbnet
1.
SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=620) AND (Документ=18297) AND ([Вид работы]='Проверка')

- вот что в отладчике и опять то же ругательство - мало параметров, требуется 1 Эту строку вставьте в конструкторе запроса в режиме SQL и попробуйте открыть. Он вам расскажет, какого параметра не хватает.
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348218
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jediAlex,

Параметры - тайна покрытая мраком (даже если всё правильно) иногда акес считает что такой подход возможен только через параметры...

Проблему можно решить так - дать акцесу пераметры, чтоб он не сомневался...
1. Запрос можно делать сохранённым (как у меня в примере), а можно и формировать в теле.
Код: sql
1.
2.
3.
4.
PARAMETERS l1 Long, l2 Long, s1 Text ( 255 );
SELECT НазначенияСотрудникам.Код, НазначенияСотрудникам.ТабНомер, НазначенияСотрудникам.Документ, НазначенияСотрудникам.[Вид работы]
FROM НазначенияСотрудникам
WHERE (((НазначенияСотрудникам.ТабНомер)=[l1]) AND ((НазначенияСотрудникам.Документ)=[l2]) AND ((НазначенияСотрудникам.[Вид работы])=[s1]));


2. Тогда полетит примерно так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Private Sub Кнопка0_Click()
On Error GoTo er1
Dim bd As Database
Dim rs As Recordset
Dim qs As QueryDef
Set bd = CurrentDb()
Set qs = bd.QueryDefs("Запрос1")
qs![l1] = 620             ' из поля формы Me.блабла
qs![l2] = 18297           ' из поля формы
qs![s1] = "Проверка"      ' из поля формы
Set rs = qs.OpenRecordset
'
'
' действия....
'
'
rs.Close
er1:
MsgBox "Ошибка!"
End Sub



Если не полетело - значит я ошибся в наборе текста - просят же и в правилах есть - выложи кусок mdb, получишь результат...
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348231
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag,

мля. после rs.Close добавить Exit Sub
импровизация, блин...
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348235
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вставил строку
Код: plsql
1.
SELECT Код FROM НазначенияСотрудникам Where (ТабНомер=620) AND (Документ=18297) AND ([Вид работы]='Проверка')


в конструктор. При выполнении требует все равно ввести табномер, документ и вид работы, хотя в строке то значения ужеесть...что за фигня?
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348241
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jediAlexAkina, структура таблицы НазначенияСотрудникам:
Код- счетчик, ключевое
Сотрудник - целое
Документ - целое
Объект - строка
Вид работы - строка
Делал запрос конструктором, при выполнении вводил все параметры с клавиатуры - все выводится и работает, а в коде ругается не пойму чего не хватает...

и где здесь Табномер?
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348247
jediAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_rusimport,вот блииин))) а ларчик просто открывался - перепутал названия полей)) спасибо, все заработало
...
Рейтинг: 0 / 0
Запрос в Аксесс.Слишком мало параметров
    #39348248
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jediAlex,

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


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