Перешли из файловой БД в MSSQL
При импорте эксель файла (карточки сотрудника) выходит ошибка
Значение не является значением объектного типа (Close)
Поставщик утверждает что проблема в доступе где расположен файл для импорта.
Пользователям был предоставлен полный доступ к папке но ошибка та же сохранилась
При импорте эксель файла (карточки сотрудника) выходит ошибка
Значение не является значением объектного типа (Close)
Поставщик утверждает что проблема в доступе где расположен файл для импорта.
Пользователям был предоставлен полный доступ к папке но ошибка та же сохранилась
Прикрепленные файлы:
Ошибка_20210608172559.zip
По теме из базы знаний
- Метод загрузки данных из таблиц Excel в 1С без установки Office
- Загрузка лицевых счетов из Excel в 1С:Учет в управляющих компаниях ЖКХ, ТСЖ и ЖСК, редакция 3.0
- Загрузка и формирование документов "Поступление в кассу" (ПКО) из файла Excel, полученного от оператора фискальных данных (ОФД), для 1С:УНФ
- Автоматическое создание документов Отчет о розничных продажах (ОРП) и Поступление в кассу (ПКО) из файла Excel, полученного от оператора фискальных данных (ОФД), для 1С:УНФ
- Автоматическое создание документов Отчет о розничных продажах (ОРП), Выемка из ККМ и ПКО из файла Excel, полученного от оператора фискальных данных (ОФД), для 1С:Розница
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Судя по тому что ошибка в закрытии exel, то тут навряд ли с правами что то, иначе бы у вас ошибку выдало на создание com объекта, или чтение файла, а тут Excel.ActiveWorkbook.Close()..обычно это вызывается уже после чтения и обработки...
Обработку если выложите можно точнее сказать будет
Обработку если выложите можно точнее сказать будет
(7)
Excel.ActiveWorkbook.Close()..обычно это вызывается уже после чтения и обработки...
Может быть, там открытие и чтение обернуты в Попытка...Исключение, а Close() - как раз в исключении.
Обработку если выложите можно точнее сказать будет
Вот с этим трудно не согласиться. Хотя бы кусок кода, в котором происходит открытие и чтение файла увидеть.
загрузка выполняется непосредствено пользователем или в фоновом задании??
предполагаю, что стоит отдельный sql сервер, где крутится база
процедура загрузки выполняется на сервере, а путь прописан с клиентской машины
в итоге на сервере, по этому пути ничего нету
нужно переписать обработку, чтобы при выполнении файл помещался во временное хранилище и потом на стороне сервера доставался из временного хранилища и загружался
предполагаю, что стоит отдельный sql сервер, где крутится база
процедура загрузки выполняется на сервере, а путь прописан с клиентской машины
в итоге на сервере, по этому пути ничего нету
нужно переписать обработку, чтобы при выполнении файл помещался во временное хранилище и потом на стороне сервера доставался из временного хранилища и загружался
Зачем вообще использовать OLE?
1С уже давно умеет сама читать Экселевские файлы:
Или даже сразу в таблицу значений:
1С уже давно умеет сама читать Экселевские файлы:
табДок = Новый ТабличныйДокумент;
табДок.Прочитать(имяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);
Или даже сразу в таблицу значений:
табДок = Новый ТабличныйДокумент;
табДок .Прочитать(ИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);
ПЗ = Новый ПостроительЗапроса;
ПЗ.ИсточникДанных = Новый ОписаниеИсточникаДанных(табДок .Область());
ПЗ.ДобавлениеПредставлений = ТипДобавленияПредставлений.НеДобавлять;
ПЗ.ЗаполнитьНастройки();
ПЗ.Выполнить();
ТаблицаЗначений = ПЗ.Результат.Выгрузить();
Показать
И да!
В (13) забыл показать как работать с многостраничным документом.
Вот так:
В (13) забыл показать как работать с многостраничным документом.
Вот так:
табДок = Новый ТабличныйДокумент;
табДок.Прочитать(имяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);
Для Каждого ОбластьТД ИЗ табДок.Области Цикл
Сообщить(ОбластьТД.Имя);
табЛист = табДок.ПолучитьОбласть(ОбластьТД.Имя);
Сообщить( "Строк: " + табЛист.ПолучитьРазмерОбластиДанныхПоВертикали() );
Сообщить( "Колонок: " + табЛист.ПолучитьРазмерОбластиДанныхПоГоризонтали() );
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот