Вниз
Скачать: CL | DM;

ACCESS и спецификация   Найти похожие ветки 

← →
_jek ©   (2003-12-16 17:13) [0]

Уважаемые мастера. Вопрос такой. У ACCESS есть возможность загружать текстовые файлы с помошью заранее созданной спецификации. Как можно из DELPHI загрузить спецификацию в ACCESS. По работе - часто работаю с текстовыми файлами. Поэтому оччень надо. Спасибо.


← →
Digitman ©   (2003-12-16 18:02) [1]

см. метод DoCmd.TransferText() объекта Access.Application


← →
Digitman ©   (2003-12-16 18:31) [2]

вероятно, я не правильно понял вопрос

тебе нужно именно программно создать спецификацию или используя уже имеющуюся спецификацию программно осуществить импорт/связь ?

DoCmd.TransferText() импортирует источник на основании уже имеющейся (ранее созданной) спецификации


← →
_jek ©   (2003-12-17 11:55) [3]

По сути и то и другое. Необходимо программно создать спецификацию, а за тем её подсоединить к файлу. Работают юзеры, которые вообще в этом не шарят. Но у них есть файл описания структуры текстового файла. Программа из под DELPHI должна подхватить этот файл, преобразовать в формат, необходимый для ACCESS и на основании этой информации подключить сам текстовый файл. Далее идет обработка с помощью запросов, форм и т.д. Это делает юзер.


← →
sniknik ©   (2003-12-17 12:21) [4]

> Далее идет обработка с помощью запросов, форм и т.д.
в аксессе?
просто проще чем делать туда спецификацию может просто сделать запрос на чтение текстового файла? в программе на дельфях на основании твоего файла описания структуры.


← →
Digitman ©   (2003-12-17 12:51) [5]

каждая mdb-база для операций с импортом использует системные (скрытые) таблицы MSysIMEXSpecs (заголовки спецификаций = главная таблица, т.е. справочник спецификаций) и MSysIMEXColumns (описания полей спецификаций = подчиненная таблица)

по умолчанию новая mdb-база не имеет заранее созданных этих таблиц, они создаются по необходимости (т.е., по факту успешного импорта хотя бы одной внешней структуры)

если тебе удастся программно создать их и записать в эти таблицы нужные данные, то далее - см. DoCmd.TransferText, ссылающийся на имя уже существующей спецификации


← →
_jek ©   (2003-12-17 13:30) [6]

Не подскажете где можно посмотреть или почитать о том, как работать с системными таблицами. Чтобы знать от чего отталкиваться в своих поисках.


← →
Digitman ©   (2003-12-17 14:08) [7]

ну, вероятно, точно так же как с обычными : select, insert, update, delete

проверь возможность доступа к ним в тестовой базе


← →
_jek ©   (2003-12-17 14:47) [8]

Кажется это то, что мне надо. Надо попробовать. Спасибо всем за помошь.


← →
_jek ©   (2003-12-17 14:52) [9]

Один вопрос. Если таблица поменяла своё положение т.е. её перенесли в другой каталог - как указать ACCESS новое положение таблицы (как это делается в диспетчере связанных таблиц)?


← →
sniknik ©   (2003-12-17 15:16) [10]

пересоздай

DROP TABLE AHS
CREATE VIEW AHS AS SELECT * FROM [dBase IV;DATABASE=D:\].[ABC#DBF]


← →
_jek ©   (2003-12-17 16:27) [11]

Спасибо sniknik.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.019 c
3-37505
Виталя
2003-12-17 10:01
2004.01.13
Как засунуть exe-файл в БД.


14-37870
Undert
2003-12-22 17:46
2004.01.13
Приемущества и недостатки домена


14-37920
Nelud
2003-12-23 13:31
2004.01.13
Мышка или хомячок?


3-37555
sokohigh
2003-12-15 15:10
2004.01.13
FieldEditor для ClientDataSet-а - субкомпонента


14-37905
Wistler
2003-12-21 12:59
2004.01.13
Оптимальные деревья




   Наверх