|
Фоновое задание, "Ошибка создания каталога" | ☑ | ||
---|---|---|---|---|
0
hartman620
14.01.19
✎
22:26
|
Имеется некая обработина, цель которой заключается создание каталога "НаУдаление" и перемещение туда неких данных, и всё просто прекрасно работает, кнопка нажимается, каталоги создаются, данные перемещаются.
Затем было принято решение перенести функционал в фоновое задание: Процедура УдалитьКаталоги(Кнопка) Таблица.Очистить(); НомерЭлемента = 0; КаталогЗапуска = "D:\TEST"; МассивЭлементов = НайтиФайлы(КаталогЗапуска, "*", Ложь);//массив всех элементов(файлы + каталоги) в КаталогЗапуска //получаем таблицу с каталогами Для Каждого Элемент Из МассивЭлементов Цикл НомерЭлемента = НомерЭлемента + 1; Если Элемент.ЭтоКаталог() И Элемент.Имя <> "На удаление" И Элемент.Имя <> "temp" Тогда СтрокаТаблицы = Таблица.Добавить(); СтрокаТаблицы.Каталог = Элемент.Имя; СтрокаТаблицы.Путь = Элемент.ПолноеИмя + "\"; КонецЕсли; КонецЦикла; КаталогДатаУдаления = КаталогЗапуска + "\На удаление\\" + СтрЗаменить(ТекущаяДата(), ":", "-") + "\"; СоздатьКаталог(КаталогДатаУдаления); ///////Продолжение процедуры КонецПроцедуры; _______________________________________________________________________________________ {ОбщийМодуль.ФоновыеЗадания.Модуль(189)}: Ошибка при вызове метода контекста (СоздатьКаталог) СоздатьКаталог(КаталогДатаУдаления); по причине: Ошибка создания каталога по причине: Ошибка доступа к файлу 'D:'. 13(0x0000000D): Permission denied __________________________________________ Изначально все это делалось для сетевого каталога, думал что упираюсь в права доступа к каталогу из под Фонового задания, но ошибка повторяется и для локального каталога. Куда копать? |
|||
1
hartman620
14.01.19
✎
22:28
|
Результат аналогичный что Запуск по расписанию, что Запуск вручную
|
|||
2
hartman620
14.01.19
✎
22:48
|
забыл упомянуть: 1с упп, postgresql, хотя не уверен что это важно
|
|||
3
hhhh
14.01.19
✎
23:03
|
(2) это что за магическая фраза? "\На удаление\\" Почему двойной слеш?
|
|||
4
hartman620
14.01.19
✎
23:16
|
(3) "D:\TEST\На удаление\\14.01.2019 23-11-55\"
На самом деле тут двойной слеш ничего не меняет, сейчас тестирую на СоздатьКаталог("D:\TEST\ASS"); Результат тот же: {ОбщийМодуль.ФоновыеЗадания.Модуль(189)}: Ошибка при вызове метода контекста (СоздатьКаталог) СоздатьКаталог("D:\TEST\ASS"); по причине: Ошибка создания каталога по причине: Ошибка доступа к файлу 'D:'. 13(0x0000000D): Permission denied |
|||
5
hhhh
14.01.19
✎
23:59
|
(4) проверьте, есть вообще на сервере такой каталог d:\test ??
|
|||
6
DmVl76
15.01.19
✎
04:10
|
(0) Скорее всего, у пользователя, под которым сервер 1с запускается, нет прав на эти каталоги
|
|||
7
Мимохожий Однако
15.01.19
✎
06:43
|
Можно использовать доступный общий сетевой каталог. Или метод ПолучитьИмяВременногоФайла(), в который перемещать файлы к удалению и потом удалять без всяких каталогов.
|
|||
8
DrZombi
гуру
15.01.19
✎
08:16
|
(0) >>> фоновое задание:
Это сервер, у пользователя под которым запущен 1С сервер должны быть соответствующие права. И помни, Сервер <> Рабочая станция пользователя :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |