powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как проверить наличие папки в директории?
25 сообщений из 72, страница 2 из 3
Как проверить наличие папки в директории?
    #39794262
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
Ваша БД у меня не открывается (наверное создана в 2013)
Может что-то типа этого:
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794268
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдогонку:перед тестированием очистите таблицу "kfile" (потому как у меня был путь D:\access-а каким он будет у Вас неизвестно)
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794271
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и еще:подключите библиотеку Microsoft Word
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794286
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr, не стал лепить твой пример

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Private Sub Кнопка17_Click()
Dim strDirName As String

    If Me.Dirty Then Me.Dirty = False
strDirName = CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица

    If Len(Dir$(strDirName, vbDirectory)) = 0 Then MkDir CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица
End Sub

Private Sub Кнопка21_Click()
Me.wbr2.Object.Navigate CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица
End Sub

Private Sub Кнопка22_Click()
Me.wbr2.Object.Navigate CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица
End Sub

Private Sub Кнопка23_Click()
Me.wbr2.Object.Navigate CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица
End Sub

...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794287
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuВаша БД у меня не открывается (наверное создана в 2013)А у тебя какая версия Access?
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794288
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Недоглядел...
Панург
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Кнопка17_Click()
Dim strDirName As String

    If Me.Dirty Then Me.Dirty = False
strDirName = CurrentProject.Path & "\" & Me.Фамилия & Me.Код_лица

    If Len(Dir$(strDirName, vbDirectory)) = 0 Then MkDir strDirName
End Sub
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794847
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург, в целом все работает, спасибо!
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794935
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrrПриветствую всех! В форме есть контрол ВебБраузер, в котором отображается содержимое папки, которая в свою очередь создается процедурой в этой-же форме. При создании новой записи аксесс ругается, что не может найти путь к папке (она еще не создана). Пробовал обрабатывать эту ошибку так, что бы путь был первоначально на [CurrentProject].[Path], не работает
Код: sql
1.
=IIf(IsError([CurrentProject].[Path] & "/" & [Фамилия] & [Код_лица] & "/Фото");[CurrentProject].[Path];[CurrentProject].[Path] & "/" & [Фамилия] & [Код_лица] & "/Фото")


Как можно по другому обработать эту ошибку?

Вообще-то для этого существует такая вещь как FSO (File System Object) . Поиском по форуму можно найти.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39794965
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JossВообще-то для этого существует такая вещь как FSO (File System Object) .И запихнуть в свойство контрола?
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39795792
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну можно проверять наличие папки до использования контрола.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39796756
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Joss, а как можно задать путь к папке по первым 5-ти символам имени папки? Например, есть папка с именем "10010произвольный текст", мне надо вывести путь к этой папке в форме, в записи, в которой поле ID равно 10010.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39796945
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так у Вас ещё и имя папки неизвестно? А папка с 5 начальными символами хоть одна? А то может быть "10010произвольный текст1", "10010произвольный текст2" и т.д.

Т.е. надо сначала найти имя папки?
Прочитайте для начала вот это Просмотр содержимого папки (каталога)
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797263
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
JossТак у Вас ещё и имя папки неизвестно? А папка с 5 начальными символами хоть одна? А то может быть "10010произвольный текст1", "10010произвольный текст2" и т.д.

Т.е. надо сначала найти имя папки?
Прочитайте для начала вот это Просмотр содержимого папки (каталога)
Нет в именах папок 5 цифр соответствуют полю ID в форме. "10010произвольный текст1", "10011произвольный текст2", "10012произвольный текст3" и т.д.
Мне надо привязать эти папки к соответствующим записям в форме. типа: ID = 5 первых цифр в имени папки.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797316
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не вижу проблемы. Находите по маске папку и привязываете.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797346
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
JossНе вижу проблемы. Находите по маске папку и привязываете.
Вот -вот, и я про это. Как эту маску прописать? Моих знаний не хватает.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797396
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
Для этого приведите примеры реальных 4-5 (или больше) названий папок
(а вообще ранее прозвучало что Вы их называете [фамилия] &[код](Иванов5) и
папка.name like"*5" будет true
a папка.name like"*6" будет false (если папки с последним символом 6 не существует)
Да и это выполняет проверку наличия конкретной папки+создание,если таковой нет 21848332
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797444
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuwladimirrr,
Для этого приведите примеры реальных 4-5 (или больше) названий папок
(а вообще ранее прозвучало что Вы их называете [фамилия] &[код](Иванов5) и
папка.name like"*5" будет true
a папка.name like"*6" будет false (если папки с последним символом 6 не существует)
Да и это выполняет проверку наличия конкретной папки+создание,если таковой нет 21848332
Ранее я специально сделал простой пример, что бы разобраться с другой проблемой.
Сейчас решаю следующую задачу: есть множество папок с именами "77522 - Garnish sales, 02.03.18", "77533 - Autobiz, LLC, 29.03.19" и т.д. Мне нужно привязать их к форме, к ВебБрузеру по ID, который будет равен соответственно 77522, 77533, и т.д.
Все папки будут расположены в директории CurrentProject.Path.
Задача - как прописать в ВебБраузере путь к соответствующей папке по первым 5-ти символам имени?
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797632
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
Мне не совсем понятна логика работы БД: при создании файла записать (в добавленное в таблицу где присваивается ID и сохраняются другие данные по файлу, полный путь,или только имя,если каталог текущий) в это поле. А в дальнейшем избавиться от поиска по имени-только по ID (при таком подходе файлы можно "валить в кучу" в текущий каталог)
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797814
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuwladimirrr,
Мне не совсем понятна логика работы БД: при создании файла записать (в добавленное в таблицу где присваивается ID и сохраняются другие данные по файлу, полный путь,или только имя,если каталог текущий) в это поле. А в дальнейшем избавиться от поиска по имени-только по ID (при таком подходе файлы можно "валить в кучу" в текущий каталог)
Логика БД следующая:
1. При создании новой записи ей присваивается очередной ID и создается новая папка с именем = "ID".
2. В форме есть объект тип ВебБраузер, в котором прописан путь к этой папке [CurrentProject].[Path] & "/" & [ID] и в этой форме мы имеем доступ к содержимому этой папки.
3. В таблицу этой формы мне надо загрузить массив исторических данных, которые созданы ранее в Екселе. И есть папки с именами, которые я написал выше (типа "74561произвольныесимволы"), к которым так же надо обеспечить доступ в форме через ВебБраузер по ID. ID будет равен 5-ти значному числу в имени папки.
Можно ли так прописать путь в ВебБраузере, что бы он отражал содержимое папки как с именем "55555", так и с именем "74561произвольныесимволы"? Т.е. по пяти первым символам в имени папки, равным ID текущей записи.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797832
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrrsdkuwladimirrr,
Мне не совсем понятна логика работы БД: при создании файла записать (в добавленное в таблицу где присваивается ID и сохраняются другие данные по файлу, полный путь,или только имя,если каталог текущий) в это поле. А в дальнейшем избавиться от поиска по имени-только по ID (при таком подходе файлы можно "валить в кучу" в текущий каталог)
Логика БД следующая:
1. При создании новой записи ей присваивается очередной ID и создается новая папка с именем = "ID".
2. В форме есть объект тип ВебБраузер, в котором прописан путь к этой папке [CurrentProject].[Path] & "/" & [ID] и в этой форме мы имеем доступ к содержимому этой папки.
3. В таблицу этой формы мне надо загрузить массив исторических данных, которые созданы ранее в Екселе. И есть папки с именами, которые я написал выше (типа "74561произвольныесимволы"), к которым так же надо обеспечить доступ в форме через ВебБраузер по ID. ID будет равен 5-ти значному числу в имени папки.
Можно ли так прописать путь в ВебБраузере, что бы он отражал содержимое папки как с именем "55555", так и с именем "74561произвольныесимволы"? Т.е. по пяти первым символам в имени папки, равным ID текущей записи.
Это не логика работы, это бред
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797836
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,

Опишите что вы хотели-бы получить,
Если "каталогизатор" файлов в папке.
То опишите как хотелось-бы
не надо описывать вашу бредовую логику
причем тут ID да ещё из 5-ти знаков
какой получите при создании новой записи тот и будет
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797859
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrrsdkuwladimirrr,
Мне не совсем понятна логика работы БД: при создании файла записать (в добавленное в таблицу где присваивается ID и сохраняются другие данные по файлу, полный путь,или только имя,если каталог текущий) в это поле. А в дальнейшем избавиться от поиска по имени-только по ID (при таком подходе файлы можно "валить в кучу" в текущий каталог)
Логика БД следующая:
1. При создании новой записи ей присваивается очередной ID и создается новая папка с именем = "ID". (то бишь для каждой записи новая папка-не многовато ли папок???)
2. В форме есть объект тип ВебБраузер, в котором прописан путь к этой папке [CurrentProject].[Path] & "/" & [ID] и в этой форме мы имеем доступ к содержимому этой папки.
3. В таблицу этой формы мне надо загрузить массив исторических данных, которые созданы ранее в Екселе. И есть папки с именами, которые я написал выше (типа "74561произвольныесимволы"), к которым так же надо обеспечить доступ в форме через ВебБраузер по ID. ID будет равен 5-ти значному числу в имени папки.
Можно ли так прописать путь в ВебБраузере, что бы он отражал содержимое папки как с именем "55555"(откуда это берется???), так и с именем "74561произвольныесимволы"? Т.е. по пяти первым символам в имени папки, равным ID текущей записи.ROIЭто не логика работы, это бред Солидарен!!
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797881
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuwladimirrrпропущено...

Логика БД следующая:
1. При создании новой записи ей присваивается очередной ID и создается новая папка с именем = "ID". (то бишь для каждой записи новая папка-не многовато ли папок???)Именно так, для каждой записи своя папка.
2. В форме есть объект тип ВебБраузер, в котором прописан путь к этой папке [CurrentProject].[Path] & "/" & [ID] и в этой форме мы имеем доступ к содержимому этой папки.
3. В таблицу этой формы мне надо загрузить массив исторических данных, которые созданы ранее в Екселе. И есть папки с именами, которые я написал выше (типа "74561произвольныесимволы"), к которым так же надо обеспечить доступ в форме через ВебБраузер по ID. ID будет равен 5-ти значному числу в имени папки.
Можно ли так прописать путь в ВебБраузере, что бы он отражал содержимое папки как с именем "55555"(откуда это берется???), (Это ID и соответственно папка с таким именем, созданная уже в БД). так и с именем "74561произвольныесимволы"(Это папка, которая создана раньше (до БД) и она должна быть привязана к ID 74561)? Т.е. по пяти первым символам в имени папки, равным ID текущей записи.ROIЭто не логика работы, это бред Солидарен!!
Я импортирую в таблицу исторические данные с теми ID, которые уже есть. Они все 5-ти значные числа. Счетчик для новых записей запускаю с очередного 5-ти значного числа. Для новых записей создаю папку с именем "ID", а старые папки остаются с именем "IDпроизвольныйтекст"
Может так понятнее будет.
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797888
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrrМожет так понятнее будет.

Больше не нужно пояснений, уже и так совсем ничего не понятно, симптом Ивана Сусанина...
Вас же просили раскрыть проблему, а не ее персональное видение....
1. Входные данные (таблица такая-то (структура), + пару строк информации или структура файла или что там еще...).
2. Структура таблицы назначения (ключи, счетчики, поля).
3. Порядок и правила импорта:
- порционность
- периодичность
- какие поля в какие поля попадают
- правила трансформации (получения) ID
4. И в конце концов нахрена какие то папки при этом?

Может просто достаточно так:
Я импортирую в таблицу исторические данные с теми ID, которые уже есть. И всё...
...
Рейтинг: 0 / 0
Как проверить наличие папки в директории?
    #39797899
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, нахрена Вам
1. Входные данные (таблица такая-то (структура), + пару строк информации или структура файла или что там еще...).
2. Структура таблицы назначения (ключи, счетчики, поля).
3. Порядок и правила импорта:
- порционность
- периодичность
- какие поля в какие поля попадают
- правила трансформации (получения) ID
Это не имеет значения. Пусть будет таблица с 2-мя полями: ID-счетчик ключевое и Name-текст.
К каждому ID есть папка. Имена папок 2-х видов: или "ID", или "IDтекст".
В форме есть объект ВебБраузер.
Вопрос по ВебБраузеру, как в нем прописать путь, чтобы он видел папку соответствующую текущему ID, независимо от того какого типа у папки имя, "ID" или "IDтекст" ? Если имя папки "ID", это [CurrentProject].[Path] & "/" & [ID], а если "IDтекст" ?
...
Рейтинг: 0 / 0
25 сообщений из 72, страница 2 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как проверить наличие папки в директории?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]