|
Внешние источники данных. Текстовый файл. |
☑ |
0
Poky
08.11.12
✎
09:59
|
Доброго дня.
Такая проблема: пытаюсь через новый объект метаданных "Внешний источник данных" приконнектиться к текстовому файлу для чтения из него данных запросом. НО
|
|
1
Poky
08.11.12
✎
10:02
|
В момент установки соединения возникает следующая ошибка:
{Форма.Форма.Форма(200)}: Ошибка при вызове метода контекста (УстановитьСоединение)
ВнешниеИсточникиДанных.ФайлTXT.УстановитьСоединение();
по причине:
по причине:
Ошибка ODBC. SQLSTATE: HY024
Номер ошибки: -1023
Описание: [Microsoft][Драйвер ODBC Текст] Строка '(нет данных)' задает ошибочный путь. Проверьте, что путь задан правильно и имеется подключение к серверу, на котором находятся файлы.
Подозреваю что у таблицы внешнего источника данных ошибочно указано "имя в источнике данных".
Подскажите, что там нужно прописывать для текстового файла?
|
|
2
cw014
08.11.12
✎
10:09
|
Я так понимаю что путь к файлу
|
|
3
Oleg_Kag
08.11.12
✎
10:11
|
Текст = Новый ТекстовыйДокумент;
Текст.Прочитать("C://1.txt");
Для НомерСтроки=1 по Текст.КоличествоСтрок() Цикл
КонецЦикла;
|
|
4
Poky
08.11.12
✎
10:14
|
(2) Вообще путь к файлу задается в строке соединения:
пСоед = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
пСоед.СтрокаСоединения = "Driver={Microsoft Text Driver (*.txt; *.csv)}; DBQ=C:\Срез.txt;";
На всякий случай попробовал - та же ошибка ((
|
|
5
Poky
08.11.12
✎
10:15
|
(3) Файлы будут большие, перебором будет долго
|
|
6
cw014
08.11.12
✎
10:18
|
(4) Построй строку соединения через сам ODBC и посмотри, что в ней
|
|
7
Poky
08.11.12
✎
10:29
|
(6) Подскажите, как это сделать?
|
|
8
cw014
08.11.12
✎
10:30
|
Через Пуск->Панель управления->Администрирование->Источники данных ODBC
|
|
9
Poky
08.11.12
✎
10:34
|
(8) До сюда я дошел, а дальше?
|
|
10
cw014
08.11.12
✎
10:35
|
Там где то можно посмотреть, как формируется ConnectionString
|
|
11
Poky
08.11.12
✎
10:40
|
(10) Только вот где? никак не могу найти
|
|
12
Poky
08.11.12
✎
12:58
|
Оказалось вот в чем дело:
СтрокаСоединения = "DRIVER={Microsoft Text Driver (*.txt; *.csv)}; DBQ=C:\"
Имя в источнике данных у таблицы задается "Срез.txt"
|
|
13
Poky
08.11.12
✎
13:03
|
Рано обрадовался, коннект проходит, но теперь стала появляться ошибка когда выполняется запрос к внешнему источнику данных:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Срез.Период,
| Срез.Сумма
|ИЗ
| ВнешнийИсточникДанных.ФайлTXT.Таблица.Срез КАК СрезРезерва";
Результат = Запрос.Выполнить().Выгрузить();
по причине:
по причине:
Ошибка выполнения запроса
по причине:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: 42000
Номер ошибки: -3506
Описание: [Microsoft][Драйвер ODBC Текст] Ошибка синтаксиса в предложении FROM.
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший