Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка в запросе / 16 сообщений из 16, страница 1 из 1
11.01.2016, 14:38
    #39144592
ЧипдДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Добрый день, подскажите где ошибка кроется?
Код: vbnet
1.
2.
3.
Set db = CurrentDb()
Set rs = db.OpenRecordset(" select dbo_UPR_1214.kod_upr, dbo_StrEd_18.nStrEd  FROM dbo_UPR_1214, dbo_StrEd_18, 
[Excel 12.0 xml;HDR=Yes;IMEX=1;DATABASE=" & Me.Form.l1.Value & "].[Лист1$] AS Ex Where dbo_UPR_1214.kod_upr = Ex.[Код управления] ")


Выходит сообщение что слишком мало параметров. Требуется 1.
Проверил поля в таблице, такое точно есть.
Имя столбца copy-paste из файла
...
Рейтинг: 0 / 0
11.01.2016, 14:40
    #39144596
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Убрал из selecta и from dbo_StrEd_18
...
Рейтинг: 0 / 0
11.01.2016, 17:31
    #39144821
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Все уже перепробовал, не вижу ошибки
...
Рейтинг: 0 / 0
11.01.2016, 17:45
    #39144833
Ошибка в запросе
Для начала соберите свой SELECT в переменной и посмотрите на результат в окне отладки.
Если не найдете ошибку - вставьте полученный текст в конструкторе запроса и запустите его.
Акс вам расскажет, какого параметра не хватает.
...
Рейтинг: 0 / 0
12.01.2016, 06:15
    #39145073
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
В акс вставлял запрос, требует чтобы я ввел значение Ex.[Код управления], а этого быть не должно потому что значение должно браться из документа
...
Рейтинг: 0 / 0
12.01.2016, 07:17
    #39145085
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
ЧипдДейл,

Код: vbnet
1.
2.
3.
Set db = CurrentDb()
Set rs = db.OpenRecordset(" select dbo_UPR_1214.kod_upr, dbo_StrEd_18.nStrEd  FROM dbo_UPR_1214, dbo_StrEd_18, 
[Excel 12.0 xml;HDR=Yes;IMEX=1;DATABASE=" & Me.Form.l1.Value & "].[Лист1$] AS Ex Where dbo_UPR_1214.kod_upr =" &  Ex.[Код управления]")
...
Рейтинг: 0 / 0
12.01.2016, 07:48
    #39145093
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Пропущены апострофы, но даже если добавить их эта запись не работает.
Если записано '& Ex.[Код управления] &' то работает, но говорит что результат нулевой, это не правильно потому что в базе есть такой код управления
...
Рейтинг: 0 / 0
12.01.2016, 08:04
    #39145098
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
ЧипДейлбазе есть такой код управления

но по рисунку --у вас похоже текстовый тип данных

Код: vbnet
1.
dbo_UPR_1214.kod_upr ='" &  Ex.[Код управления] & "'")
...
Рейтинг: 0 / 0
12.01.2016, 08:12
    #39145103
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Все верно, текстовый тип данных, но такая запись вызывает ошибку несозданного объекта. Скорей всего из-за того что '"& &"' то подразумевает что будет значение какого-либо объекта.

Наверное важное уточнение будет, если взять другой документ который содержит такие же поля то все работает.
...
Рейтинг: 0 / 0
12.01.2016, 08:57
    #39145112
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
ЧипдДейлДобрый день, подскажите где ошибка кроется?
Код: vbnet
1.
2.
3.
Set db = CurrentDb()
Set rs = db.OpenRecordset(" select dbo_UPR_1214.kod_upr, dbo_StrEd_18.nStrEd  FROM dbo_UPR_1214, dbo_StrEd_18, 
[Excel 12.0 xml;HDR=Yes;IMEX=1;DATABASE=" & Me.Form.l1.Value & "].[Лист1$] AS Ex Where dbo_UPR_1214.kod_upr = Ex.[Код управления] ")


Выходит сообщение что слишком мало параметров. Требуется 1.
Проверил поля в таблице, такое точно есть.
Имя столбца copy-paste из файла
Jet скушает твой запрос, если сначала прилинковаться к Excel-ской таблице (или сделать сохраненный запрос на него же)
...
Рейтинг: 0 / 0
12.01.2016, 09:00
    #39145114
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
А как сначала прилинковаться к таблице?
...
Рейтинг: 0 / 0
12.01.2016, 09:24
    #39145132
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
ЧипДейлА как сначала прилинковаться к таблице?
Так же, как линковался к серверу, по-видимомму, через ODBC. Пожалуй, проще будет, сохранить запрос
...
Рейтинг: 0 / 0
12.01.2016, 09:46
    #39145146
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Простите мою необразованность.
Сохраненный запрос в аксесе или в переменную и потом вызывать RunSQL?
Если в аксе, то картина не поменяется при выполнении будет выходить сообщение о просьбе ввести параметр.
Если RunSQL, то выходит сообщение что требуется аргумент для исполнения макрокоманды, собственно, тоже самое что строкой выше.
Еще такой вопрос почему исходный код из первого поста с другим файлом excel работает без ошибок, а с нужным нет?
Постараюсь немного пояснить вопрос.
Нужно перед загрузкой 2 файлов проверить есть ли в нем данные по определенным полям.
Загружая первый файл таким же методом все работает данные прекрасно вставляются в таблицу А.
При попытке загрузить второй файл происходят ошибки, данные должны вставиться в таблицу Б.
Если попробовать загрузить первый файл в таблицу Б (исполняется код 1 поста) загрузка чудесным образом проходит как нужно.
...
Рейтинг: 0 / 0
12.01.2016, 10:02
    #39145155
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
ЧипДейлПростите мою необразованность.
Сохраненный запрос в аксесе или в переменную и потом вызывать RunSQL?
Если в аксе, то картина не поменяется при выполнении будет выходить сообщение о просьбе ввести параметр.
Если RunSQL, то выходит сообщение что требуется аргумент для исполнения макрокоманды, собственно, тоже самое что строкой выше.
Еще такой вопрос почему исходный код из первого поста с другим файлом excel работает без ошибок, а с нужным нет?
Постараюсь немного пояснить вопрос.
Нужно перед загрузкой 2 файлов проверить есть ли в нем данные по определенным полям.
Загружая первый файл таким же методом все работает данные прекрасно вставляются в таблицу А.
При попытке загрузить второй файл происходят ошибки, данные должны вставиться в таблицу Б.
Если попробовать загрузить первый файл в таблицу Б (исполняется код 1 поста) загрузка чудесным образом проходит как нужно.
На все вопросы сращу...
Я бы создал сохраненные (в Аксе, конечно) запросы к листам Excel и прежде всего проверил их работоспособность - с одним и другим файлами. Если оба запроса работоспособны, попробовать играться с ними в сочетании с другими таблицами. Возможно, типы данных транслируются неоднозначно или поля, имея одинаковые названия, на самом деле, содержат другую информацию... Да, мало еще чего может быть... Пробуй разные варианты
...
Рейтинг: 0 / 0
12.01.2016, 11:53
    #39145297
Ошибка в запросе
ЧипДейлНаверное важное уточнение будет, если взять другой документ который содержит такие же поля то все работает. Другой документ, это другой файл Excel?
Значит в этом файле в первой строке нет "Код управления".
...
Рейтинг: 0 / 0
12.01.2016, 14:12
    #39145484
ЧипДейл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в запросе
Да другой документ, это другой файл Excel.
Действительно проблема оказалась в первой пустой строке.
Спасибо за помощь
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка в запросе / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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