Форум на Kuban.ru (http://forums.kuban.ru/)
-   Разработка программ (http://forums.kuban.ru/f1024/)
-   -   ACCESS запрос очищения папки (http://forums.kuban.ru/f1024/access_zapros_ochisheniya_papki-3002397.html)

emenem97 30.08.2012 22:30

ACCESS запрос очищения папки
 
Добрый день. Подскажите пжл как прописать (построить) запрос чтобы очищалась указанная папка на локальном диске (удалялись все файлы в ней) ?

economist 31.08.2012 10:21

Скорее не (SQL) запрос, а:

1) запуск DOS-приложения вида BAT-файла с командой DEL *.TXT из строки VBA макроса вида Shell("C:\del.bat",1)

или напрямую

2) VBA макроcа с командой вида Kill "*.TXT"

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

emenem97 31.08.2012 17:02

я вот синтаксис VBA плохо знаю, подскажите что нужно прописать в модуле акцес для того что это сделать (очистить все, все файлы ни какой программой не заняты не заняты 100%) с папкой с расположением например D:\очистить\ ?

economist 03.09.2012 16:05

Sub KillFilesFromDir()
Kill "D:\ОЧИСТИТЬ\*.TXT"
End sub

Этот макрос можно:
1) запускать автоматически при открытии базы данных (событие Database_open)
2) назначить на кнопку
3) сочетанием клавиш
4) запускать по времени
5) итп

emenem97 03.09.2012 19:02

economist спасибо большое

emenem97 03.09.2012 20:57

нескромный вопрос, раз уж разговорились :) как из процедуры сделать функцию? т.к. макросом можно функцию (программу) запускать но не процедуру

economist 04.09.2012 07:19

В контексте Access не знаю, но скорее всего в полях таблиц и SQL-запросах можно использовать пользовательские функции вида:

Function MyFunction(argument As Double) As Double
argument=argumen*2
End Function

emenem97 04.09.2012 15:15

спасибо, рпзобралсяю В данном случае sub заменяется нв function и процедура становится функцией, которую можно запускать с кнопки
function KillFilesFromDir()
Kill "D:\ОЧИСТИТЬ\*.TXT"
End function


Текущее время: 01:49. Часовой пояс GMT +3.