Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Votmax
2 / 2 / 1
Регистрация: 14.01.2015
Сообщений: 12
1

ASP.NET + Excel: вывод результатов запросов пользователей не только в HTML виде

14.01.2015, 16:36. Просмотров 1198. Ответов 6
Метки нет (Все метки)

Добрый день!
Пытаюсь подружить свое web-приложение с excel, чтобы выводить результаты запросов пользователей не только в HTML виде.

Вот моя тестовая страничка hello.aspx:

HTML5
1
2
3
4
5
6
7
8
<html>
<head>
<title> Пример </title>
</head>
<body bgcolor="#FFFFFF" text="#000000" >
<SCRIPT LANGUAGE="VBScript" SRC="my.vbs"SCRIPT>
</body>
</html>
Сам my.vbs:

Visual Basic
1
2
3
4
dim app
set app = createobject("Excel.Application")
app.Visible = true
app.UserControl = true
Excel открывается, все прекрасно, могу делать что угодно, примеров куча.
Но этот скрипт выполняется на машите клиента, а я хочу, чтобы на сервере, я тогда в описание скрипта вписываю фразу RUNAT="Server". После этого появляются ошибки:

BC30188: Ожидалось объявление.
На строку: set app = createobject("Excel.Application")

Я пробовал оформить все как aspx:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%@ Page Language="VBScript" Debug="true" aspcompat=true runat="server"%>
<html>
<head>
<title> Displaying An Excel Spreadsheet in an Web Page </title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
 
<% 
dim app
set app = createobject("Excel.Application")
app.Visible = true
app.UserControl = true
  %>
 
</body>
</html>
Система ругается:
Операторы присваивания "Let" и "Set" больше не поддерживаются.
Убрал их, все сделал вот в таком виде:


HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%@ Page Language="VBScript" Debug="true" aspcompat=true runat="server"%>
<html>
<head>
<title> Displaying An Excel Spreadsheet in an Web Page </title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
 
<% 
dim app
app = createobject("Excel.Application")
app.Visible = true
app.UserControl = true
  %>
 
</body>
</html>
Появляется ошибка:
Не удалось создать компонент ActiveX.
На строку: app = createobject("Excel.Application")

В общем приплыл к той же ошибке.
Я работаю не в Visual Studio, знаю что там как то подключается к проекту библиотека MS Office, я работаю в простом блокноке, IIS 7.
Не знаю как быть, подскажите, пожалуйста.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2015, 16:36
Ответы с готовыми решениями:

Постраничный вывод результатов запроса в ASP.NET
Здравствуйте ВСЕ, кто-нибудь знаком с сабжем? к сожалению, одноимённая...

Netcore asp.net web api: Проксирование запросов на index.html
Есть spa-приложение с роутером, которое находится в директории wwwroot. Как...

Вывод списка пользователей MVC 5 Asp.NET
Необходимо вывести список всех зарегистрированных пользователей, а также...

Вывод запросов из .mdb в виде HTML страниц
Специалисты, помогите, только начинаю раскапывать тему. Есть база Access....

Постраничный вывод результатов. Помогите, я только начал изучать ASP.
Доброго всем дня. Господа, подскажите, каким образом можно организовать...

6
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
14.01.2015, 20:05 2
Вопрос не совсем понятен.

Цитата Сообщение от Votmax Посмотреть сообщение
Пытаюсь подружить свое web-приложение с excel, чтобы выводить результаты запросов пользователей не только в HTML виде.
Нужно, чтобы сервер возвращал документ excel вместо разметки Html?
Если да, то я такое делал через библиотеку NPOI. Составляешь нужный тебе документ по клеточкам, применяешь стили, высоту, ширину и отправляешь этот документ клиенту.

https://github.com/tonyqus/npoi
0
Votmax
2 / 2 / 1
Регистрация: 14.01.2015
Сообщений: 12
15.01.2015, 11:06  [ТС] 3
Смысл такой: Пользователь вводит запрос, запрос обрабатывается в БД и нужная инфа на стороне сервера формируется в Excel, который подается пользователю для скачивания.
Все работает, кроме работы с Excel

P.S. Как то странно моя тема попала в ветку с C#, но согласен и на С# ))
0
Psilon
Master of Orion
Эксперт .NET
6012 / 4865 / 902
Регистрация: 10.07.2011
Сообщений: 14,477
Записей в блоге: 5
Завершенные тесты: 4
17.01.2015, 03:01 4
Votmax, ну а в чем проблема? Создаете локально на сервере эксель, сохраняете, после этого редиректите пользователя на этот файл, done
0
Votmax
2 / 2 / 1
Регистрация: 14.01.2015
Сообщений: 12
18.01.2015, 22:11  [ТС] 5
Votmax, ну а в чем проблема? Создаете локально на сервере эксель, сохраняете, после этого редиректите пользователя на этот файл, done
Спасибо за совет, я так и думал, но если бы вы прочитали мою тему, то увидели бы, что на строку:
PureBasic
1
set app = createobject("Excel.Application")
вылазит ошибка (Не удалось создать компонент ActiveX) в серверном режиме.
В этом то и есть суть моего вопроса. В локальном все проходит на ура, в серверном - ошибка. Нашел топик с назначением прав на DCOM для Excel, сделал, тоже не помогло. Проблема в какой то галке в виндовс, но где ее искать не знаю....
0
Psilon
Master of Orion
Эксперт .NET
6012 / 4865 / 902
Регистрация: 10.07.2011
Сообщений: 14,477
Записей в блоге: 5
Завершенные тесты: 4
19.01.2015, 10:26 6
Votmax, так пишите сервереный код на сервере - в .cs или .vb файле, а не в разметке..
0
Votmax
2 / 2 / 1
Регистрация: 14.01.2015
Сообщений: 12
02.02.2015, 11:48  [ТС] 7
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

Пошерстил интернет, аналогичных вопросов много, но они заканчиваются выбором альтернативных решений.
Нашел для себя решение, работать не с excel, а с Scripting.FileSystemObject, можно в виде текстового файла сгенерировать хоть xml, хоть html, хоть excel старой версии.
Большое спасибо!
0
02.02.2015, 11:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.02.2015, 11:48

Как средствами ASP или ASP.NET преобразовать страницу html в PDF документ?
день добрый... попытался поискать по и-нету и релибу... но ничего...

ASP.NET Web API, количество одновременных запросов
Всем привет! У меня вопрос касательно количества одновременно выполняемых...

Обработка всех http-запросов Asp.net web forms
Имею asp.net приложение (xaf). Создал нужных *.ashx файлов, но что-то в веб...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru