Каталог не найден в веб-серверном варианте

1. Johney20 10.03.21 12:24 Сейчас в теме
Добрый день.

Базу подключили к веб-серверу и обработка перестала видеть каталог.

Изначально код был такой:

ВыбранныйФайл = Новый Файл(Объект.ПутьКФайлу);	
	Если ВРег(ВыбранныйФайл.Расширение) = ".ZIP" Тогда
		// это архивный файл - нужно разархивировать во врем. папку и потом удилить
		// грузим все файлы из архива с разширением *.hml
		
		ИмяФайла = ПолучитьИмяФайлаИзПолногоПути(Объект.ПутьКФайлу);
		ПозТочки = Найти(ИмяФайла,".");
		ИмяФайла = Лев(ИмяФайла,ПозТочки-1);
		
		АрхивZIP = Новый ЧтениеZipФайла(Объект.ПутьКФайлу);
		Сообщить("шаг1");
		ПутьКВременномуКаталогу = КаталогВременныхФайлов() + ИмяФайла + "\";
		Сообщить("шаг2");
		АрхивZIP.ИзвлечьВсе(ПутьКВременномуКаталогу);      
		
		Сообщить("шаг3");
		МассивФайлов = НайтиФайлы(ПутьКВременномуКаталогу,"*",Истина);
		Для Каждого ФайлИзМассива Из МассивФайлов Цикл
			Если Не ФайлИзМассива.ЭтоКаталог()  Тогда
				ЗагрузитьФайл(ФайлИзМассива.ПолноеИмя);
			КонецЕсли;
		КонецЦикла;	
		// удаляем врем. файлы
		УдалитьФайлы(ПутьКВременномуКаталогу);
		Сообщить("Загрузка доходов завершена!!!!!");

	Иначе                                                                      
		// нифига не делаем.. непонятный файл
	КонецЕсли;
Показать


Переделала, чтобы скопировать файл на сервер и его обрабатывать, но толку ноль, ошибка не ушла. Код стал таким:

Если ЗначениеЗаполнено(Объект.ПутьКФайлу) Тогда
		
		ДвоичныеДанныеФайла = Новый ДвоичныеДанные(Объект.ПутьКФайлу);
		АдресФайла = ПоместитьВоВременноеХранилище(ДвоичныеДанныеФайла);
		АдресВремФайла = "";
		
		ИмяВременогоФайла = ПолучитьИмяВременногоФайла("zip"); 
		ПутьКФайлуПриемнику = ИмяВременогоФайла;
		
		ДвоичныеДанныеФайла = ПолучитьИзВременногоХранилища(АдресФайла);
		ДвоичныеДанныеФайла.Записать(Строка(ПутьКФайлуПриемнику));
		
		ИмяФайла = ПолучитьИмяФайлаИзПолногоПути(ПутьКФайлуПриемнику);
		ПозТочки = Найти(ИмяФайла,".");
		ИмяФайла = Лев(ИмяФайла,ПозТочки-1);
		
        АрхивZIP = Новый ЧтениеZipФайла(ПутьКФайлуПриемнику);
		ПутьКВременномуКаталогу = КаталогВременныхФайлов() + ИмяФайла + "\";
		АрхивZIP.ИзвлечьВсе(ПутьКВременномуКаталогу);      
		
		МассивФайлов = НайтиФайлы(ПутьКВременномуКаталогу,"*",Истина);
		Для Каждого ФайлИзМассива Из МассивФайлов Цикл
			Если Не ФайлИзМассива.ЭтоКаталог()  Тогда
				ЗагрузитьФайл(ФайлИзМассива.ПолноеИмя);
			КонецЕсли;
		КонецЦикла;	
		// удаляем врем. файлы
		УдалитьФайлы(ПутьКВременномуКаталогу);
		Сообщить("Загрузка доходов завершена!!!!!");
		
	Иначе
		Сообщить("Не выбран файл для загрузки!");
	КонецЕсли;
Показать


В чем причина? Где ошибка?? Либо может нужно использовать совершенно другой способ.. Подскажите, пожалуйста.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user958326 10.03.21 12:36 Сейчас в теме
Думаю ошибка у вас в пути к базе либо в доступе к каталогу через новое подключение
3. ixijixi 1912 10.03.21 12:38 Сейчас в теме
А толку в изменении кода, если он весь выполняется в одном контексте
АдресФайла = ПоместитьВоВременноеХранилище(ДвоичныеДанныеФайла);
<...>
ДвоичныеДанныеФайла = ПолучитьИзВременногоХранилища(АдресФайла);
Надо на клиенте ПоместитьВоВременноеХранилище, а на Сервере ПолучитьИзВременногоХранилища.
RocKeR_13; Torin; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот