УдалитьПапку() #227711


#0 by YDenn
добрый день! Прошу помощи. Есть обработка, формирует печатные формы и сохраняет их во временную папку. При первом запуске, создается папка с именем ТекущаяДата и в нее сохраняются печатные формы. Она нужна, для пакетного архивирования. При повторном запуске в этот же день, т.к. папка уже есть, то выдается ошибка. Чтобы не было сообщения об ошибке нужно очистить папку, затем удалить ее саму. Тогда при запуске процедуры она создастся вновь с новыми данными. Файлы я очищаю, но папку удалить никак не могу. Подскажите в чем моя ошибка. Вот код:
#1 by ТелепатБот
#2 by YDenn
Я этим и пользовался.
#3 by jarett
нафига ФС.УстТекКаталог("C:Temp_1C");
#4 by YDenn
Убрал, результат тот же. нужно удалить папку 06.11.06. Спасибо
#5 by Лефмихалыч
и вся недолга
#6 by Лефмихалыч
поправочка if FSO.FolderExsts("C:Temp_1C6.11.06") <> 0 Then
#7 by Лефмихалыч
а в не удаляется каталог потому что нужно слеш последний убрать. В (5,6) - тоже его быть не должно
#8 by YDenn
Выдает ошибку: {Обработка.СемьиПередача.Форма.Модуль}: : Слэш убрал-результат тот же.
#9 by Лефмихалыч
ну, нету значит этой папки уже
#10 by YDenn
Есть, еще
#11 by Лефмихалыч
как-то так вопчим
#12 by YDenn
Не идет. А зачем параметр 1. В синтаксисе такого нет.
#13 by Likan
Отладчиком пробовал прошерстить?
#14 by YDenn
Стопорится на ФС.УдалитьКаталог("C:Temp_1C6.11.06");
#15 by Лефмихалыч
может точки из пути убрать? чо-то ты, друк, запарил уже - у всех всё нормально удаляется, а у тебя какой-то затык. Чо-то ты сильно неправильно делаешь...
#16 by YDenn
Сам уже запарился. Пробовал вместо 06.11.06 ставить ggggg, помещал в нее файлы и запускал обработку. Файлы удаляются, но папка - хрен.
#17 by Лефмихалыч
ну, открыта она у тебя чем-то, проводником, например...
#18 by Лефмихалыч
убей фсё и перепиши заново
#19 by Темный Эльф
Убери все ФС.УстТекКаталог, сохрани обработку, закрой 1С Предприятие, открой 1С Предприятие, запусти обработку.
#20 by YDenn
Все, доигрался. Она сволочь все файлы базы удалила. Я повешусь. Ругается при загрузке на отсутсвие словаря данных - на ошибку 10. У меня есть 3 дня назад бэкап делал - данные могу оттуда взять, но и эту базу надо запустить, чтобы вытащить изменения в конфигурации. Help!!!!!!!!!!!
#21 by Темный Эльф
Файл 1cv7.md в каталоге базы или подкаталоге NEW_STRU присутствует?
#22 by YDenn
Я ее запустил, но без данных. Изменения все сохранились. Я правильно сделаю: 1. запущу копию базы с бэкапа 2. сделаю объединение конфигураций с той, что с сохраненными изменениями, но без данных.
#23 by demonas001
+ - У тебя 1С-ка держит этот каталог.
#24 by Лефмихалыч
офигеть... это вся куйня была в живой базе?..
#25 by YDenn
Я же говорю, что я идиот.
#26 by Темный Эльф
В общем, да, только бэкап еще не потеряй - для полноты впечатлений.
#27 by YDenn
Как исправить Ошибку 10
#28 by demonas001
если по учебнику то да... только сделай бекап бекапа сначала :) :))))))))))))
#29 by Темный Эльф
Ты запустил или нет?
#30 by YDenn
да запустил с бэкапа, объединил конфигурации. Изменения сегодняшние, данные 3 дневные. Пока оставил в покое. все изменения делал на копиях.
#31 by YDenn
Я хочу проверить, может данные не все стерлись. так что это за ошибка 10. Я как понял стерся словарь базы. Его можно заменить с бэкапа?
#32 by demonas001
данные храняться в ДБФ файлах. ЕСли файлы стёрлись - значит и данные стёрлись Код 10: -Ошибка открытия словаря Базы Данных убери этот файл (перемести) запустити Конфигуратор сохрани и он пересоздастся
#33 by Темный Эльф
Словарь может быть восстановлен по файлу конфигурации. Заменен с бэкапа он может быть только в том случае, если в структуре данных не делалось изменений: новые реквизиты, изменен тип реквизита, добавлены документы, справочники. Если менялись только модули, то можно.
#34 by YDenn
Не беда, всего 17 документов восстановить, сделаю На будущее ОГРОМНЫЙ урок мне. Спасибо всем за солидарность.
#35 by YDenn
Опять вернусь к своей папке. Вывел удаление в отдельную процедуру и повесил на кнопку: Результат - все та же ошибка.
#36 by Темный Эльф
1. Если ты в Предприятии используешь метод УстТекКаталог, 1С-ка держит этот каталог до закрытия и не даст с ним ничего сделать. 2. Еще в у тебя был каталог 06.11.06 Время проходит мимо нас?
#37 by YDenn
1. я это уже понял. Можно в процедуре исправить, чтобы избавиться от УстТекКаталог: 2. У нас уже 01:27 07.11.06. Это я все задумал для формирования пакета на дискеты.
#38 by Zmich
. Насколько я понял из постановки задачи, и раз у тебя не получается удалить каталог, сделай иначе: в обработке, формирующей печатные формы и сохраняющей их во временную папку, делай просто-напросто проверку, существует ли эта временная папка или нет, чтобы не выдавалась ошибка. И тогда не нужно будет никаких удалений каталогов. Потом раз в месяц сам будешь вручную их грохать.
#39 by demonas001
А имена файлов имеют значения? Может создать их по принципу 1.расширение, 2.расширени - n.... (ну или там дату приписывать, т.е. формировать по заданному алгоритму) и удалять в цикле ФС.УдалитьФайл(ПОЛНОЕ_и_зараниее_Известное_ИмяФайла); отказавшись от использования каталога
#40 by YDenn
Я это сделал, я про имена файлов. Можно пример проверки существования папки.
#41 by demonas001
+ или создавать ещё где-то некий "индексній файл" - текстовичёк при сохранеии этих файлов со списком всего что в каталоге и удалять читая его построкам а потом и его грохать и папку
#42 by demonas001
+ - как я понял вся проблема "как отказаться от УстТекКаталог"?
#43 by demonas001
как я понял раз сделал Это тогда зачем "ФС.НайтиСледующийФайл" найти первый? Удаляй сразу по полному имени не Устанавливая текущий каталог
#44 by YDenn
Угу
#45 by Темный Эльф
Набери просто КомандаСистемы("Rmdir C:Temp_1C7.11.06 /s /q"); и никогда не пробуй писать на 1С операционную систему...
#46 by YDenn
Спасибо огромное, получилось! Яхоу!!!!!!!! Удачи.
#47 by demonas001
хорошо получилось :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С