Имя: Пароль:
1C
1С v8
Получение имен таблиц из объекта ADODB.Connection
0 kiabs
 
15.04.13
10:23
Всем привет!
Обработка вытягивает из Аксесовской базы ТаблицуЗначений SQL запросом "Select * FROM Land_Rover_Price_Fil_04_2013".
Хочу сделать, что бы обработка "читала" таблицы объекта и давай пользователю выбор, к какой обращаться. Где почитать/как это сделать подскажите плиз?
Мой код ниже. Функция ADODB_ExecuteTSQL_ret_TV возвращает ТаблицуЗначений.
СтрокаПодключения  =   "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Файл + ";""";
   Connection = Новый COMОбъект("ADODB.Connection");
   Попытка
       Connection.Open(СтрокаПодключения);
   Исключение
       Сообщить(ОписаниеОшибки());
       Возврат;
   КонецПопытки;    
   ИмяВнутреннейТаблицы = ПолучитьИмяВнутреннейТаблицы();    
   БД = ADODB_ExecuteTSQL_ret_TV(Connection,"Select * FROM Price_Fil_04_2013");    
   Connection.Close();
1 Ёпрст
 
15.04.13
10:24
БД.ВыбратьСтроку();
2 kiabs
 
15.04.13
10:31
(1) Я вот тут "Select * FROM Price_Fil_04_2013" уже обращаюсь к конкретной таблице Price_Fil_04_2013, я хочу что бы у меня было что то вида
БД = ADODB_ExecuteTSQL_ret_TV(Connection,"Select * FROM +"ИмяТаблицы"+");
3 kiabs
 
15.04.13
10:31
Собственно как имена таблиц то узнать?
4 МихаилМ
 
15.04.13
10:32
должна быть коллекция таблиц.
5 НЕА123
 
15.04.13
10:32
Михайлов, Системное Программирование 1С

приблизительно
   Catalog = Новый COMОбъект("ADOX.Catalog");

       Catalog.ActiveConnection = "File name=" + ИмяФайла + ";";

   Для к = 0 По Catalog.Tables.Count-1 Цикл

           СтрокаТЗТаблицы.ИмяТаблицы = Catalog.Tables(к).Name;
           СтрокаТЗТаблицы.ТипТаблицы = Catalog.Tables(к).Type;
   КонецЦикла;
AdBlock убивает бесплатный контент. 1Сергей