Вход | Регистрация

Форумы на Кубань.Ру


1С:Предприятие ::

Метки:

Получение данных из Access в 1С Предприятие

Ø
Я
   Konst
08.11.04 - 20:41
Всех приветствую!
  Помогите, пожалуйста. Данная обработка делает запрос из 1С на поиск в базе ACCESS по заданному реквизиту, причем обработка находит в базе ACCESS не только точное соответствие заданного и искомого элемента, но и по первым набранным символам. Проблема заключается в том, что
после получения списка искомых значений у меня зависает обработка примерно на 30-40 сек, а точнее
зависает "НаборЗаписей.MoveNext(). Не подскажите в чем проблемы и как это исправить?
 Компьютер Cel 433, 80 ОЗУ; 2 системы 98 и XP; 2 офиса 2003 под XP и 2000 под 98
Процедура Акцесс()
  Акцесс = СоздатьОбъект("ADODB.CONNECTION");
  Попытка
    СтрокаПодключения="Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\Program Files\PL\PL_2k.mde;Uid=Admin;Pwd=";
    Акцесс.Open(СтрокаПодключения);
  Исключение
    Сообщить("Объект не создался:"+ОписаниеОшибки());
    Возврат;
  КонецПопытки; 	
  Команда = СоздатьОбъект("ADODB.Command");
  Команда.ActiveConnection=Акцесс;
  ТекстСелект = "SELECT PLDATA.PTNRDRU,PLDATA.Deutsch,PLDATA.Englisch,PLDATA.Euro,PLDATA.RABATTGRUPPE,PLDATA.RWEuro FROM PLDATA WHERE PLDATA.PTNRDRU LIKE '"+СокрЛП(Num)+"'+"%"";
  ТекстСелект = "SELECT PLDATA.PTNRDRU,PLDATA.Deutsch,PLDATA.Englisch,PLDATA.Euro,PLDATA.RABATTGRUPPE,PLDATA.RWEuro FROM PLDATA WHERE PLDATA.PTNRDRU like '%"+СокрЛП(Нрег(Num))+"%'";
  НаборЗаписей = СоздатьОбъект("ADODB.RecordSet");
  Команда.CommandText=ТекстСелект; 	
  Попытка
    НаборЗаписей=Команда.Execute;
  Исключение
    Сообщить("Обломись:"+ОписаниеОшибки());
    Возврат;
  КонецПопытки;
  Попытка
    НаборЗаписей.MoveFirst();
  Исключение//нет записей в рекордсете
    Сообщить("Обломись еще раз:"+ОписаниеОшибки());
    НаборЗаписей.Close();
    Возврат;
  КонецПопытки;
  Пока НаборЗаписей.EOF=0 Цикл
    сообщить("*** Выбрали каталожный номер: " + НаборЗаписей.Fields("PTNRDRU").Value + "  Наименование:  "  + НаборЗаписей.Fields("Deutsch").Value);	      			
    НаборЗаписей.MoveNext();	
  КонецЦикла;   	
  НаборЗаписей.Close();	
КонецПроцедуры
 
 



Список тем форума

Форум Территория 1С

Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует