Научите копировать файлы с локальной машины в папку на сервере УФ
Есть код:
Объект.Файл - имя файла на локальной машине,
код не работает - пишет каталог не обнаружен ,что не так?
Процедура СохранитьФайлНаСервере() Экспорт
Если Параметры.Ключ.Пустая() Тогда
УИД = Новый УникальныйИдентификатор();
НоваяСсылка = Справочники.СсылкиНаФайл.ПолучитьСсылку(УИД);
мОбъект = РеквизитФормыВЗначение("Объект");
мОБъект.УстановитьСсылкуОбъект(НоваяСсылка);
Файл1С = Новый Файл(Объект.Файл);
УИН = Строка(УИД);
ИмяФайлаНаСервере = Константы.ПутьХраненияФайловСканирования.Получить() + "\" + УИН + Файл1С.Расширение;
Если Найти(Объект.Файл,"\") > 0 Тогда
ДвоичныеДанные = Новый ДвоичныеДанные(Объект.Файл);
Идентификатор = Новый УникальныйИдентификатор;
АдресХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанные, Идентификатор);
ЗаписатьНаСервер(АдресХранилища, ЛокальныйАдресКаталога, Файл1С.Расширение, ИмяФайлаНаСервере);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере
// Выполняет запись файла из временного хранилища на диск
Процедура ЗаписатьНаСервер(АдресХранилища, ЛокальныйАдресКаталога = "", Расширение, ИмяФайлаНаСервере) Экспорт
// Проверим заполнен ли адрес временного хранилища, откуда будем брать файл
Если ПустаяСтрока(АдресХранилища) Тогда
Возврат;
КонецЕсли;
// Проверим существует ли указанный каталог
КаталогЗаписи = Новый Файл(ЛокальныйАдресКаталога);
Если НЕ КаталогЗаписи.Существует() Тогда
Возврат;
КонецЕсли;
ЛокальныйАдресКаталога = ЛокальныйАдресКаталога;
ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилища);
ИмяФайла = ИмяФайлаНаСервере;
Попытка
ДвоичныеДанные.Записать(ЛокальныйАдресКаталога + "\" + ИмяФайла + Расширение);
Исключение
КонецПопытки;
КонецПроцедуры
ПоказатьОбъект.Файл - имя файла на локальной машине,
код не работает - пишет каталог не обнаружен ,что не так?
По теме из базы знаний
- Выгрузка-загрузка любых данных из 1С (и измененных) в XML между похожими конфигурациями (ФАЙЛ, HTTP, COM) ЛЮБЫХ баз 1С 8.1-8.3 с обработкой и поиском данных по произвольным полям поиска
- Синхронизация хранилища 1С и git-репозитория с применением OneScript и Gitsync. Методика и пошаговая инструкция для создания скрипта и его регулярного запуска
Найденные решения
Я так понял Объект.Файл это строка - имя файла?
&НаКлиенте
Процедура ПеренестиФайлНаСервер()
ДвоичныеДанные = Новый ДвоичныеДанные(Объект.Файл);
АдресХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанные);
ЗаписатьФайлНаСервере(АдресХранилища);
КонецПроцедуры
&НаСервере
Процедура ЗаписатьФайлНаСервере(аАдресХранилища)
ДвоичныеДанные = ПолучитьИзВременногоХранилища(аАдресХранилища);
Попытка
ДвоичныеДанные.Записать(ЛокальныйАдресКаталога + "\" + ИмяФайла + Расширение);
Исключение
КонецПопытки;
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Я так понял Объект.Файл это строка - имя файла?
&НаКлиенте
Процедура ПеренестиФайлНаСервер()
ДвоичныеДанные = Новый ДвоичныеДанные(Объект.Файл);
АдресХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанные);
ЗаписатьФайлНаСервере(АдресХранилища);
КонецПроцедуры
&НаСервере
Процедура ЗаписатьФайлНаСервере(аАдресХранилища)
ДвоичныеДанные = ПолучитьИзВременногоХранилища(аАдресХранилища);
Попытка
ДвоичныеДанные.Записать(ЛокальныйАдресКаталога + "\" + ИмяФайла + Расширение);
Исключение
КонецПопытки;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот