|
Копирование файлов из одной папки в другую, средствами 1С | ☑ | ||
---|---|---|---|---|
0
Kuklachel
03.02.14
✎
09:34
|
Доброе утро. Такая задача, есть справочник со сканированными версиями документов которые хранятся на сервере, нужно галками отметить нужные копии и по кнопке открыть диалог сохранения файлов и выбрать место для копирования выбранных документов. Пробовал это реализовать через ДиалогВыбораФайла с режимом "Сохранить", но там возможно сохранять только один файл. Сейчас делаю так:
Массив = Новый Массив; Для Каждого Строка Из Объект.СканированныеКопииДокументов Цикл Если Строка.ВыборДокументаДляСохранения = Истина Тогда Передаваемыйфайл = Новый ОписаниеПередаваемогоФайла(Строка.НаименованиеДокумента, Строка.ПутьКФайлу); Массив.Добавить(Передаваемыйфайл); КонецЕсли; КонецЦикла; ПолучитьФайлы(Массив); Выдает ошибку: {Справочник.ОбъектыНедвижимости.Форма.ФормаЭлемента.Форма(1260)}: Ошибка при вызове метода контекста (ПолучитьФайлы) ПолучитьФайлы(Массив); по причине: Неправильный путь к файлу 'e1c://filev/C/Users/User123/Documents/InfoBase6/fs-1c40/Документы ЕРН/Медиа/ООО Ромашка/ООО Ромашка/Недвижимость/1/Документы/Выписка из ЕГРП.pdf' Подскажите пожалуйста, почему подставляется путь к локальной базе? |
|||
1
ДенисЧ
03.02.14
✎
09:37
|
Используй режим ВыборКаталога. Получишь каталог назначения. Туда и копируй.
А локальный подставляется, потому что ДВФ выполняется на клиенте. |
|||
2
Maxus43
03.02.14
✎
09:39
|
Новый ОписаниеПередаваемогоФайла
сам придумал так писать? по какому принципу выбрал? СП читал? |
|||
3
Maxus43
03.02.14
✎
09:40
|
+
Описание: Задает расположение передаваемого файла на сервере и на клиенте. Оно тебе надо? ты понимаешь что оно делает? |
|||
4
Maxus43
03.02.14
✎
09:41
|
КопироватьФайл (FileCopy)
Синтаксис: КопироватьФайл(<ИмяФайлаИсточника>, <ИмяФайлаПриемника>) юзай, когда выберешь каталог |
|||
5
Kuklachel
03.02.14
✎
09:43
|
(2) Нашел такой метод на каком-то из форумов. (3) Мне казалось что, понял.
Спасибо, сейчас попробую. |
|||
6
Maxus43
03.02.14
✎
09:45
|
(5) все остальные форумы - фу.
Миста рулит |
|||
7
Рэйв
03.02.14
✎
09:49
|
КомандаСистемы("copy \ПутьОткуда\*.* \ПутьКуда")
|
|||
8
hhhh
03.02.14
✎
10:38
|
(7) завершение этой команды как отслеживать?
|
|||
9
Стальная Крыса
03.02.14
✎
10:56
|
(8) модально оно выполняется
|
|||
10
Kalambur
03.02.14
✎
11:00
|
(8) КомандаСистемы("copy \ПутьОткуда\*.* \ПутьКуда && >>\\ПутьКуда\якончил.txt")
:) |
|||
11
Kuklachel
03.02.14
✎
11:11
|
Все получилось, спасибо большое!
Перем ПутьККаталогу; Режим = РежимДиалогаВыбораФайла.ВыборКаталога; ДиалогОткрытия = Новый ДиалогВыбораФайла(Режим); ДиалогОткрытия.Каталог = ПутьККаталогу; ДиалогОткрытия.МножественныйВыбор = Ложь; ДиалогОткрытия.Заголовок = "Выберите каталог"; Если ДиалогОткрытия.Выбрать() Тогда ПутьККаталогу = ДиалогОткрытия.Каталог; КонецЕсли; Для Каждого Строка Из Объект.СканированныеКопииДокументов Цикл Если Строка.ВыборДокументаДляСохранения = Истина Тогда ИмяФайлаИсточника = Строка.ПутьКФайлу; ВыбФайл = Новый Файл(ИмяФайлаИсточника); Если ВыбФайл.Существует() Тогда Имя = ВыбФайл.Имя; Иначе Предупреждение("Файл не найден!"); КонецЕсли; ИмяФайлаПриемника = ПутьККаталогу + "\" + Имя; КопироватьФайл(ИмяФайлаИсточника,ИмяФайлаПриемника); КонецЕсли; КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |