Проблема с загрузкой из экселя

1. alchie 31.07.20 15:23 Сейчас в теме
День добрый!
Перестала работать форма загрузки из Excel
Ошибка при открытии файла с помощью Excel! Загрузка не будет произведена!
{Обработка.МаркировкаТоваров.Форма.Форма.Форма(1316)}: Ошибка при вызове конструктора (COMОбъект): -2146959355(0x80080005): Ошибка при выполнении приложения-сервера

Куда копать?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. alchie 31.07.20 16:40 Сейчас в теме
2. chipazawra 31.07.20 15:37 Сейчас в теме
Не может создать COMобъект Excel, у вас он установлен ? Вы на сервере запускаете или на клиенте ? Если вдруг на клиенте, возможно у вас новый компьютер, а Excel там нет ели его на сервере удалили.
succub1_5; +1 Ответить
3. alchie 31.07.20 15:40 Сейчас в теме
(2)Excel установлен, запускается на сервере. Была уже такая проблема, ковырялся в Службах компонентов. Сейчас снова слетело.
4. user1357043 31.07.20 15:46 Сейчас в теме
5. alchie 31.07.20 16:15 Сейчас в теме
(4)Это было причиной ошибки в прошлый раз, сейчас права DCOM проверил - они в порядке, но не работает
6. Z_Denis 31.07.20 16:24 Сейчас в теме
(3) Если запускается на сервере, то Excel должен быть установлен там. Сделайте загрузку через ТабличныйДокумент, не нужна будет компонента экселя.
SeverBaP; +1 Ответить
7. SeverBaP 5 31.07.20 16:36 Сейчас в теме
(6) Поддержу, уже давно использую табличный документ для загрузки данных из экселя с указанием конкретного ЛИСТА:
	ТабличныйДокумент = Новый ТабличныйДокумент;
	Попытка
		ТабличныйДокумент.Прочитать(ИмяВременногоФайлаДанных, СпособЧтенияЗначенийТабличногоДокумента.Значение);   
	Исключение
		ВызватьИсключение НСтр("en = 'Reading from the file failed'; ru = 'Ошибка чтения данных из файла'");
	КонецПопытки;
	КолвоСтрокФайла = ТабличныйДокумент.ВысотаТаблицы;
	Если КолвоСтрокФайла < 2 Тогда
		ТабличныйДокумент = Неопределено;
		ВызватьИсключение НСтр("en = 'The file is empty'; ru = 'Выбранный файл пуст'");
	КонецЕсли;
	тДанныеПоТоварам.Очистить();
	Для Каждого ЛистДляРазбора ИЗ ТабличныйДокумент.Области Цикл 
		ИмяЛиста = СокрЛП(ЛистДляРазбора.Имя);
		Если НЕ ИмяЛиста = "Финал" Тогда
			Продолжить;
		КонецЕсли;	
		
		ПостроительЗапросаЛиста = Новый ПостроительЗапроса;
		ПостроительЗапросаЛиста.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЛистДляРазбора);
		ПостроительЗапросаЛиста.Выполнить();
		
		ТаблицаДанныхЛиста = ПостроительЗапросаЛиста.Результат.Выгрузить();
		Для Каждого СтрТаблицыДанныхЛиста ИЗ ТаблицаДанныхЛиста Цикл 
			НоваяСтрока = тДанныеПоТоварам.Добавить();
			НоваяСтрока.ВнешнийКод		= СтрЗаменить(СокрЛП(СтрТаблицыДанныхЛиста.ВнешнийКод),Символы.НПП,"");
			НоваяСтрока.Наименование	= СтрТаблицыДанныхЛиста.ОбучающаяПрограмма;
			НоваяСтрока.Цена			= СтрТаблицыДанныхЛиста.Стоимость;
			НоваяСтрока.Часы			= СтрТаблицыДанныхЛиста.Часы;
			НоваяСтрока.УровеньОбразования = СтрТаблицыДанныхЛиста.УровеньОбразования;
			НоваяСтрока.Поднаправление	= СтрТаблицыДанныхЛиста.Поднаправление;
			НоваяСтрока.Направление_Отрасль = СтрТаблицыДанныхЛиста.Направление_Отрасль;
		КонецЦикла;	
	КонецЦикла;
Показать
9. alchie 31.07.20 16:41 Сейчас в теме
(7)Не, сорри, табличный док - не вариант. Писал форму не я, и такое мне точно не осилить)
Оставьте свое сообщение

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