Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / vba excell, ado - sql запрос, need help. / 7 сообщений из 7, страница 1 из 1
29.07.2011, 10:44
    #37372228
antonlynnik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
запрос ругается на вычисляемый столбец, если его убираю всё работает.
Run-time error '-2147467259 (80004005)': Method 'Open' of object '_Recordset' failed
ругается на строку выделенную жирным и подчёркнутую.

oRS.Open "select sh1.[Названия строк],[Осн поставщик attr],[Провизор attr], " & _
" [Потери КС взв рассч нд],[Потери КС Х взв рассч нд],[Потери КС Л взв рассч нд]," & _
" [Кол-во продажи 10 хар дн Киев],[Кол-во продажи 10 хар дн Харьков],[Кол-во продажи 10 хар дн Львов]," & _
" [Киев КВ_Остатки на холде],[Харьков XB_Остатки на холде],[Львов ЛB_Остатки на холде], " & _
" case when [Киев КВ_Остатки на холде]>[Кол-во продажи 10 хар дн Киев]/10/2 then 0 else [Потери КС взв рассч нд] end as [NeeEW] " & _
" from " & KSAddr & " sh1 " & _
" right join " & StokAddr & " sh2 " & _
" on sh1.[Названия строк]=sh2.[Названия строк] " & _
" where sh1.[Потери КС взв рассч нд]>0 or sh1.[Потери КС Х взв рассч нд]>0 or sh1.[Потери КС Л взв рассч нд]>0 " & _
" order by sh1.[Потери КС взв рассч нд] desc" _
, oConn, adOpenStatic

подскажите в чём проблема.
спасибо.
...
Рейтинг: 0 / 0
29.07.2011, 10:51
    #37372239
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
1) Хорошо бы привести сам запрос, а не строку его формирования
2) запрос идет к MSSQL надеюсь?
3) Что будет, если выполнить запрос напрямую через студию?
...
Рейтинг: 0 / 0
29.07.2011, 10:58
    #37372255
antonlynnik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
Shocker.Pro1) Хорошо бы привести сам запрос, а не строку его формирования
2) запрос идет к MSSQL надеюсь?
3) Что будет, если выполнить запрос напрямую через студию?


1. не понял)
2. вот весь макрос
Dim oConn As New ADODB.Connection
Dim oRS As New ADODB.Recordset
Dim objField As ADODB.Field
strFile = ActiveWorkbook.FullName
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & strFile & ";" & _
"Extended Properties=""Excel 8.0;"""
StokAddr = "[StokByHolds$A8:D" & UBound(outArr, 1) + 8 & "] "
KSAddr = "[KSLoose$A4:I" & UBound(KsArr, 1) + 3 & "] "

oRS.Open "select sh1.[Названия строк],[Осн поставщик attr],[Провизор attr], " & _
" [Потери КС взв рассч нд],[Потери КС Х взв рассч нд],[Потери КС Л взв рассч нд]," & _
" [Кол-во продажи 10 хар дн Киев],[Кол-во продажи 10 хар дн Харьков],[Кол-во продажи 10 хар дн Львов]," & _
" [Киев КВ_Остатки на холде],[Харьков XB_Остатки на холде],[Львов ЛB_Остатки на холде], " & _
" case when [Киев КВ_Остатки на холде]>[Кол-во продажи 10 хар дн Киев]/10/2 then 0 else [Потери КС взв рассч нд] end as [NeeEW] " & _
" from " & KSAddr & " sh1 " & _
" right join " & StokAddr & " sh2 " & _
" on sh1.[Названия строк]=sh2.[Названия строк] " & _
" where sh1.[Потери КС взв рассч нд]>0 or sh1.[Потери КС Х взв рассч нд]>0 or sh1.[Потери КС Л взв рассч нд]>0 " & _
" order by sh1.[Потери КС взв рассч нд] desc" _
, oConn, adOpenStatic


этот запрос в книге ексель к данным на листах.
...
Рейтинг: 0 / 0
29.07.2011, 11:07
    #37372271
vba excell, ado - sql запрос, need help.
"этот запрос в книге ексель к данным на листах."
Проблема, наверное, в том что case when - не обрабатывается в sql к экселю
замените на
iif([Киев КВ_Остатки на холде]>[Кол-во продажи 10 хар дн Киев]/10/2, 0, [Потери КС взв рассч нд]) as [NeeEW]
...
Рейтинг: 0 / 0
29.07.2011, 11:12
    #37372284
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
ОзадаченыйПроблема, наверное, в том что case when - не обрабатывается в sql к экселюне наверноt, а точно, потому я и спросил сразу про MSSQL
...
Рейтинг: 0 / 0
29.07.2011, 11:23
    #37372313
antonlynnik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
Озадаченый"этот запрос в книге ексель к данным на листах."
Проблема, наверное, в том что case when - не обрабатывается в sql к экселю
замените на
iif([Киев КВ_Остатки на холде]>[Кол-во продажи 10 хар дн Киев]/10/2, 0, [Потери КС взв рассч нд]) as [NeeEW]


спасибо,
помогло.
буду знать)
...
Рейтинг: 0 / 0
29.07.2011, 11:25
    #37372319
antonlynnik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba excell, ado - sql запрос, need help.
Shocker.ProОзадаченыйПроблема, наверное, в том что case when - не обрабатывается в sql к экселюне наверноt, а точно, потому я и спросил сразу про MSSQL
спасибо, помогло.
может ещё подскажете как закрыть тему ?)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / vba excell, ado - sql запрос, need help. / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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