helpf.pro
Регистрация

v7: работа с access

areavel
10.10.2012 10:07Прочитано: 1704
Здравствуйте. Подскажите кто сталкивался: как организовать перебор файлов mdb из папки. С одним файлом код такой
Код 1C v 7.x
 Процедура Сформировать()

Т=СоздатьОбъект("ТаблицаЗначений"); //в эту таблицу идет выгрузка данных
Т.Очистить();
AccessBD=СоздатьОбъект("ADODB.Connection");

Попытка

СтрокаПодключения="Driver={Microsoft Access Driver (*.mdb)}; Dbq=d:\Николай Базы Данных\Задания_и_обучение\Задания 1с77\access.mdb; Uid=Admin; Pwd=";
AccessBD.Open(СтрокаПодключения);
Состояние("Установлено соединение с базой данных Access");
Исключение

Сообщить(ОписаниеОшибки());
Предупреждение("нет сведений, подключение к Access не установлено");
Возврат;

КонецПопытки;

Состояние("Начинаем считывание данных");

Команда=СоздатьОбъект("ADODB.Command"); //Создаем команду
Команда.ActiveConnection=AccessBD; //Указываем подключение
ТекстСелект="S_elect * FROM Vremen";
НаборЗаписей=СоздатьОбъект("ADODB.RecordSet"); //Создание объекта набора данных
Команда.CommandText=ТекстСелект;
//
Попытка
НаборЗаписей=Команда.Execute(); //выполнение и получение набора данных //Execute - выполнять
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;

//Результат запроса содержиться в переменной НаборЗаписей
Для ЕП=0 по (НаборЗаписей.Fields.Count-1) Цикл //определяем имена полей таблицы
Т.НоваяКолонка(СокрЛП(НаборЗаписей.Fields(ЕП).Name));
КонецЦикла;
//
НаборЗаписей.MoveFirst();
Пока НаборЗаписей.EOF()=0 Цикл //перебираем поля и записи
Стр="";
Т.НоваяСтрока();
Для ЕП=0 по (НаборЗаписей.Fields.Count-1) Цикл //count- считать
Т.УстановитьЗначение(Т.КоличествоСтрок(),СокрЛП(НаборЗаписей.Fields(ЕП).Name), НаборЗаписей.Fields(ЕП).Value); //записываем значения в таблицу Fields-полей Value- значение
КонецЦикла;
НаборЗаписей.MoveNext();
КонецЦикла;

Т.Выгрузить(Таб); //выгружаем таблицу с данными в таблицу на форме

КонецПроцедуры


С перебором не могу разобраться.
Yandex
Возможно, вас также заинтересует
Реклама на портале
Подсказка: Вы получили ответ на свой вопрос - закройте вопрос!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.