Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Excel и ВыполнитьSQL_изТЗ() (число прочтений - 2653 )
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Excel и ВыполнитьSQL_изТЗ()
16. Октября 2008 :: 08:22
Печать  
Народ, делаю нижеописанное и не работает пишет ошибка, которую ниже тоже указал, может проблема в том, что ВыполнитьSQL_изТЗ() не работает с Excel в принципе?

Код
Выбрать все
БД	= СоздатьОбъект("ODBCDataBase");
RS	= СоздатьОбъект("ODBCRecordSet");
СтрокаСоединения="DRIVER=Microsoft Excel Driver (*.xls);DriverId=790;DBQ=" +СокрЛП(ИмяФайла)+";ReadOnly=0;IMEX=1;HDR=No""";
Если БД.Соединение(СтрокаСоединения)=0 Тогда
	Предупреждение("Ошибка открытия файла", 60);
	Возврат;
КонецЕсли;
RS.УстБД(БД);

....  <--- Здесь выборка сначала идет и она работает на ура.

RS.Подготовить("UPDATE [Лист1$] ([F3]) VALUES (?)");
RS.ПостроитьПараметры();
RS.ВыполнитьSQL_ИзТЗ(ТЗ);
RS.Закрыть();
 



Произошла ошибка при выполнении запроса.                  
State 07002, native 17, message [Microsoft][Драйвер ODBC Excel]Неверное поле COUNT
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #1 - 16. Октября 2008 :: 11:13
Печать  
или может из-за этого?
State IM001, native 0, message [Microsoft][Диспетчер драйверов ODBC] Драйвер не поддерживает данной функции
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #2 - 17. Октября 2008 :: 05:20
Печать  
мда, ведать спецов, по данному вопросу, не много Улыбка
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Quan
1c++ donor
1c++ power user
Отсутствует


I'm old, bald and ugly.

Сообщений: 273
Местоположение: Новосибирск -- Москва
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #3 - 19. Октября 2008 :: 14:27
Печать  
pavlo писал(а) 17. Октября 2008 :: 05:20:
мда, ведать спецов, по данному вопросу, не много Улыбка


Видимо, да  Улыбка

В таком варианте я ексель не мучал, но в любом случае меня смущает "RS.ПостроитьПараметры();"

Никогда в жизни этого не делал: либо вообще пропускал ввиду полной уверенности в однотипности объектов, либо явно указывал через ДобПараметр

Всё вышесказанное не есть однозначное указание на баг, но лишь выражение моего личного подозрения на оный  Класс
  

А для тех, кто не хотел учить SQL, господь сотворил курсоры
Наверх
 
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #4 - 20. Октября 2008 :: 02:45
Печать  
Quan писал(а) 19. Октября 2008 :: 14:27:
pavlo писал(а) 17. Октября 2008 :: 05:20:
мда, ведать спецов, по данному вопросу, не много Улыбка


Видимо, да  Улыбка

В таком варианте я ексель не мучал, но в любом случае меня смущает "RS.ПостроитьПараметры();"

Никогда в жизни этого не делал: либо вообще пропускал ввиду полной уверенности в однотипности объектов, либо явно указывал через ДобПараметр

Всё вышесказанное не есть однозначное указание на баг, но лишь выражение моего личного подозрения на оный  Класс


В моем случае так чтоли?
RS.Подготовить("UPDATE [Лист1$] ([F3]) VALUES (?)");
//RS.ПостроитьПараметры();
RS.ДобПараметр(3,6,10,2);
RS.ВыполнитьSQL_ИзТЗ(ТЗ);
RS.Закрыть();

так пишет:
Произошла ошибка при выполнении запроса.                  
State 07002, native 17, message [Microsoft][Драйвер ODBC Excel]Неверное поле COUNT
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #5 - 20. Октября 2008 :: 05:25
Печать  
Скорее всего вообще не прокатит из-за Лист1$
  
Наверх
 
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #6 - 20. Октября 2008 :: 08:01
Печать  
JohnyDeath писал(а) 20. Октября 2008 :: 05:25:
Скорее всего вообще не прокатит из-за Лист1$


А обойти никак?
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Quan
1c++ donor
1c++ power user
Отсутствует


I'm old, bald and ugly.

Сообщений: 273
Местоположение: Новосибирск -- Москва
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #7 - 20. Октября 2008 :: 08:34
Печать  
pavlo писал(а) 20. Октября 2008 :: 02:45:
Произошла ошибка при выполнении запроса.                  
State 07002, native 17, message [Microsoft][Драйвер ODBC Excel]Неверное поле COUNT


гм.... ну, тогда только одно предположение: при исполнении ВыполнитьSQL_изТЗ() зачем-то задействуется COUNT, а драйвер ODBC Excel сию фичу не понимает.
Предложение: попытаться заменить ВыполнитьSQL_изТЗ() набором явно заданных запросов
  

А для тех, кто не хотел учить SQL, господь сотворил курсоры
Наверх
 
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: Excel и ВыполнитьSQL_изТЗ()
Ответ #8 - 20. Октября 2008 :: 09:15
Печать  
Quan писал(а) 20. Октября 2008 :: 08:34:
pavlo писал(а) 20. Октября 2008 :: 02:45:
Произошла ошибка при выполнении запроса.                  
State 07002, native 17, message [Microsoft][Драйвер ODBC Excel]Неверное поле COUNT


гм.... ну, тогда только одно предположение: при исполнении ВыполнитьSQL_изТЗ() зачем-то задействуется COUNT, а драйвер ODBC Excel сию фичу не понимает.
Предложение: попытаться заменить ВыполнитьSQL_изТЗ() набором явно заданных запросов


Набор явно заданных запросов, это 4000 запросов (если по каждой строчке обновлять) - тогда просто овчинка выделки не стоит к сожалению, ибо не сильно быстро в соотношении с ОЛЕ Печаль
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать