|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
Доброго дня господа ! Осуществляю выгрузку данных в текстовый файл Архитектурно такая выгрузка идет через ADOConnection Имею cтроку коннекта Код: vbnet 1. 2.
Хочу писать так "select * into [строка коннекта для текста].[schema. ini ] from {Table}" Зачем это нужно - экспорт данных в файл с динамическим названием = аа20201219.txt aa20201220.txt и т.д. - необходимо поддерживать исходные данные о структуре и настройках файла в SCHEMA.INI - это поддержание делаю запросом на вставку в SCHEMA.INI insert into [строка коннекта для текста].[schema.INI] values ("[аа20201219.txt]" + Chr(13)+Chr(10)+TextDelimiter=none+Chr(13)+Chr(10).....") - далее идет основной этап выгрузки данных уже при наличии описанного [аа20201219.txt] select * into [text;HDR=YES;FMT=Delimited;Database=C:\WORK\].[aa20202019.txt] from {Table} Возник вопрос - Mjet работает только с файлами которые имеют расширение ASC,TXT,TAB,CSV Т.е. файл по сути текстовый, но имеет другое расширение - это ошибка так можно = insert into [строка коннекта для текста].[schema.txt] values ("............") так нельзя = insert into [строка коннекта для текста].[schema.INI] values ("............") Приходиться делать так insert into [строка коннекта для текста].[schema.txt] values ("............") Потом кодом VBA переименовывать schema.txt -> schema.ini Архитектурно - заморочка и ненужный этап и НЕКРАСИВЕНЬКО как-то Не верю, что MJet может работать только с расширениями ASC,TXT,TAB,CSV Пробывал менять в реестре значение Extentions =ASC,TXT,TAB,CSV,INI без результатов Может кто-то сталкивался, подскажите пожалуйста Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2020, 18:42 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X, Вопрос снят спасибо Код: vbnet 1.
Код: vbnet 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2020, 19:50 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X, ваше решение, это "НЕКРАСИВЕНЬКО как-то" в квадрате. Корректировка реестра - крайняя мера. Это работает только на конкретном компе, а в вашем случае, и под конкретным офисом. Проще было заточить экспорт под левое имя файла (например Temp.txt), а затем полученный файл переименовывать. Но есть и более элегантное (и мaлоизвестное) решение при условии, что экспорт выполняется не из Access. Если в нужной папке создать файл schema.ini с разделом, например, "ИмяСекции", то ее можно использовать качестве DSN при экспорте/импорте любых однотипных файлов из(в) этой папки, для чего в строке подключения запроса (или в св-ве "Extended Properties" создаваемого ADODB.Connection, или при вызове метода OpenDatabase (DAO)) указать "Text;DSN=ИмяСекции". ... |
|||
:
Нравится:
Не нравится:
|
|||
21.12.2020, 13:39 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
Кривцов Анатолий Но есть и более элегантное (и мaлоизвестное) решение при условии, что экспорт выполняется не из Access. Если в нужной папке создать файл schema.ini с разделом, например, "ИмяСекции", то ее можно использовать качестве DSN при экспорте/импорте любых однотипных файлов из(в) этой папки, для чего в строке подключения запроса (или в св-ве "Extended Properties" создаваемого ADODB.Connection, или при вызове метода OpenDatabase (DAO)) указать "Text;DSN=ИмяСекции". Переименовывать не интересно ! Access как Оболочка не используется Используется Microsoft Jet как повайдер и Excel как исходный формат данных Не совсем Вас понял - прошу уточнить второй вариант Файл Schenma.ini лежит в C:\WORK ------------------------------------------------------------ [Np{YY}{MM}{DD}.CSV] - {YY}{MM}{DD} дата отчета ДОЛЖНА меняется [Np201209.CSV] ColNameHeader=False CharacterSet=1251 Format=Delimited(,) TextDelimiter=none [EXAMPLE.CSV] ColNameHeader=False CharacterSet=1251 Format=Delimited(,) TextDelimiter=none ------------------------------------------------------------ select * into [TEXT;HDR=NO;FMT=Delimited;DATABASE=C:\WORK].[Np201209.CSV] from [EXCEL].[MAIN_TABLE in Excel ] Как писать в моем случае ? ------------------------------------------------------------ select * into [TEXT;HDR=NO;FMT=Delimited;DNS=C:\WORK\EXAMPLE.CSV].[Np201225.CSV] from [EXCEL].[MAIN_TABLE in Excel ] Спасибо ! ... |
|||
:
Нравится:
Не нравится:
|
|||
21.12.2020, 21:08 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X, Писать так - просто добавить параметр DSN [EXAMPLE] ColNameHeader=False CharacterSet=1251 Format=Delimited(,) TextDelimiter=none ------------------------------------------------------------ select * into [TEXT;HDR=NO;FMT=Delimited;DATABASE=C:\WORK;DSN=EXAMPLE].[Np201209.CSV] from [EXCEL].[MAIN_TABLE in Excel] Np201209.CSV - динамическое название Это хорошее решение - спасибо ВАМ !!!!!!! В Help-е таки нашел ссылку ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2020, 10:30 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X, После работы оставляет EXPORT.INI -- ну так для между прочим ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2020, 11:25 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X В Help-е таки нашел ссылку А можно ссылку на тот Help, где вы это нашли? Я ни в каком Help-е подобного не видел и нашел опытным путём, как, кстати, и про TextDelimiter=none. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2020, 10:49 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
Кривцов Анатолий, https://docs.microsoft.com/en-us/office/client-developer/access/desktop-database-reference/initializing-the-text-data-source-driver Код: java 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2020, 20:42 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
Кривцов Анатолий, Вы по Visual Basic в разделе WIN API не сильны ? SendInput для 64 bit подсказать не сможите ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2020, 00:08 |
|
Microsoft Jet заливка в текст с ДРУГИМ расширением
|
|||
---|---|---|---|
#18+
HOME_X Вы по Visual Basic в разделе WIN API не сильны ? SendInput для 64 bit подсказать не сможите У вас 64 винда или офис? Что не получается? Лучше я вы начал с этим вопросом новую ветку. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2020, 09:56 |
|
|
start [/forum/topic.php?fid=45&fpage=10&tid=1609823]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 158ms |
0 / 0 |