#0
by PitNN
Добрый день, коллеги. Решил автоматизировать загрузку данных от клиентов. Многие высылают в экселе, соответственно нужно читать и анализировать её. Чтобы менеджеры не заморачивались с этим, чтение экселя решил вынести в регламентное задание. Но тут возникла проблема с созданием ком-объекта Excel.Application. Почитал статьи, рекомендуют вынести вызов ком-объекта на клиент, но при выполнении регламентного задания нет никакого клиента, все выполняется сервером. Как быть? Посоветуйте
#1
by SUA
в регламентном без вариантов только сервер или прайсы в csv перекидывать сначала и затем скармливать как текст если эксель тупить будет
#13
by PitNN
Вот код: Исключение СообщениеОбОшибке = НСтр("ru = 'Не удалось прочитать Excel. Убедитесь, что на компьютере установлена программа Microsoft Excel. Подробности: '")
#15
by SUA
и какое исключение? может файла нет? доступа к папке откуда его тянуть? или дальше гадать?
#16
by beholder
права на папку? Что за ошибка? Не рекомендуют на сервере наверное из-за того что по сети файл взад-назад тягать не комильфо.
#18
by beholder
на инфостарте есть примеры как парсить XSLX но могут возникнуть проблемы если сторонняя прога сохраняет в этот формат.
#19
by PitNN
Вот такое исключение: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Невозможно получить свойство Open класса Workbooks Файл есть. Он лежит локально на сервере. Доступ к папке есть для всех.
#27
by alexei366
а просто Add без имени файла, пустой новый док добавить, и если получитьсязаписать его
#28
by PitNN
Метод Add прошел, но при попытке сохранить документ опять исключение: Ошибка при вызове метода контекста (SaveAs): Произошла исключительная ситуация (Microsoft Office Excel): Метод SaveAs из класса Workbook завершен неверно Файл не сохранен!
#31
by alexei366
когда оффис исполняется на сервере от службы, то он вроде использует эту папку для вр файлов
#32
by PitNN
Скорее всего тут суть в том, что на сервере, на уровне платформы, запрещены файловые операции
#35
by alexei366
Ну если ток для чтения то покатит наверно, я просто для чтения, изменения и записи юзаю, так что мне COM нужен был
#38
by PitNN
Да, пробовал. Текст исключения: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (ADODB.Connection): Не удается найти указанный поставщик. Вероятно, он установлен неправильно.
#51
by alexei366
Как так, ты же смотрел наличие папки, создавал новую на серваке, почему проверить не можешь?
#54
by PitNN
Чтобы проверить, нужно авторизоваться под пользователем от которого запущен сервер 1С. Я не могу под ним авторизоваться в силу отсутствия пароля Запускаю экземпляр приложения, вызываю внешнюю обработку и там прописываю процедуру открытия с ключом &НаКлиенте
#56
by alexei366
Попробуй эти создать)))) C:WindowsSystem32ConfigSystemprofile C:WindowsSysWOW64ConfigSystemprofile
#61
by PitNN
Единственное что осталось, это команда не завершает процесс. Экселька продолжает висеть в диспетчере задач на сервере. В чем может быть дело, подскажи пожалуйста
#64
by Torquader
Так сначала нужно закрыть все документы, так как иначе мы видим вопрос о необходимости что-то сохранить, только, на самом деле, мы его не видим, так как рабочий стол записи SYSTEM невидим, но, если очень хочется, там окно можно найти и даже нажать кнопку "Нет".
#66
by alexei366
Ну в теории не должно ругаться если ты в доке ничо не менял (типа букву в ячейке добавил). Ну чтобы на точняк, погугли на msdn там или используешь метод Close у WorkSheet или Эксель.Application.Quit (или просто Эксель.Quit). Нули как разтаки определяют закрытие документа или приложения без лишних проверок. Я конеш хз у себя сразу писал с нулями, а вот помню когда один из первых разов таким образом с Word работал, то он у меня с исключением вылетал (я имею ввиду на сервере)
#67
by ProProg
УУУ. В сказку попал человек. Обратись ко мне. Есть решение. Я уже все грабли протоптал с этим делом. Есть у нас решение. Можешь даже не парится. У нас компонента чтения эксель, нативная. Работает во всех режимах серверных на любых осях.
#75
by alexei366
Когда приложение оффиса (Word, Exel) запускается от сервиса винды, коем в частности является служба 1С сервера, то для временных файлов используются данные каталоги взавизимости от разрядности оффиса.
#77
by Torquader
Если его не поставить, то в следующий раз, когда Excel откроется, сообщения не будут появляться.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Чтение пароля пользователя...
- Программно скопировать область из Excel книги 1 в Excel книгу 2
- Чтение группировок Excel из 1С
- Можно ли отредактировать файл Excel из 1С без установленного Excel?
- Чтение XML
- СОМ Объект Excel в регламентном задании
- УТ 8.2 (8.2.11.236) ред. 11 (11.0.4.6)
- Проблема с выгрузкой в Excel в регламентном задании
- как получить все роли в 1С и у этих ролей убрать признак чтение?
- v7: Чтение excel файлов без установленого excel
- УТ 11 (11.0.8.11) Работа с комиссионерами.
- Как пересохранить из нового Excel в старый Excel ?
В этой группе 1С
- Выделенные ячейки табличного документа
- v7: Подчинение справочников, владельцы и конечно, периодический
- Загрузка данных в 1с 8.2 из xml.
- Бухгалтерия предприятия (базовая), редакция 3.0 (3.0.28.15)
- РегламентированныйОтчетСтатистикаФормаП4 для ЗУП
- ЗУП 2.5 Ошибка при открытии рег. отчета. Типовая 79.3
- УстановитьВнешнююКомпоненту не работает под Web Клиентом
- Динамический список VS Таблица Значений
- Печать в 8.3.БП3 Аналог (подобие) УниверсальныеМеханизмы.НапечататьДокументПоУ
- Доступ к печати непроведенного документа
- Связь ТЧ Товары и ТЧ Серии в УТ 11.1
- Как заблокировать правую кнопку мыши в сеансе 1с
- Как удалить всё из хранилища значений
- Можно ли в 1с загружать шрифты? УТ11
- Ошибка при попытке помещения объекта в хранилище конфигурации
- Невозможно выполнить операцию на сокете т.к буфер слишком мал ....
- Закрытие 20 счета в разрезе подразделений
- 26 распределить на 20 без затрат и на 20тке по выручке закрыть на 90.01
- Не списался товар со склада 1С 8.2 УПП
- ERROR: timestamp out of range