Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание отчета 
:(
    Опции темы
Redstuff
Дата 28.8.2007, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Нужно сделать отчет в .html виде желательно, но еще лучше .html  + .doc + .xls
Не знаю с чего начать, нашел пока только http://forum.vingrad.ru/index.php?showtopi...t&p=1189806 тут пример.
Но уже столкнулся с проблемой 
Код

using Office;

Что надо добавить в Reference?


--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
andrx
Дата 28.8.2007, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Андрей
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 16.12.2005
Где: Киев

Репутация: 1
Всего: 4



смотри прикрепленный файл, думаю немного поможет
в Reference добавь COM объекты Exel и Word

Присоединённый файл ( Кол-во скачиваний: 29 )
Присоединённый файл  ms.txt 13,81 Kb
--------------------
Лучше скажи мало, но хорошо. (Козьма Прутков)
PM MAIL ICQ   Вверх
Redstuff
Дата 28.8.2007, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



andrx, да вроде их и добавлял из COM, Microsoft.... Excel & Word.
Они щас в reference находятся как Excel, Word

За файлик спасибо гляну!



--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
andrx
Дата 28.8.2007, 15:36 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Андрей
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 16.12.2005
Где: Киев

Репутация: 1
Всего: 4



Цитата

Но уже столкнулся с проблемой 
Код

 using Office;


я писал так
Код

using Microsoft.Office;

--------------------
Лучше скажи мало, но хорошо. (Козьма Прутков)
PM MAIL ICQ   Вверх
Experimenter
Дата 28.8.2007, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 3
Всего: 17



А я так вообще никакой юзинг не ставил (правда это был VBNET 2003, там Imports)
Код

Imports System
Imports System.IO
Imports System.Data
Imports System.Drawing
Imports System.Windows.Forms
Imports System.Xml

и все...
Дальше по коду:
Код

        Dim objxls As New Excel.Application
        objxls.Workbooks.Open("D:\Мои документы\Visual Studio Projects\...\отчет.xls", ReadOnly:=False)
        ' и делаешь с objxls все, что нравится через Range

и работает!
Жаль, что не сохранился проект по Ворду



--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
Redstuff
Дата 29.8.2007, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



А есть примеры где отчет в html получить можно, все-таки он предпочтительней мне...?
А то с офисом что-то трудновато разобраться  smile 

Или может кто кинуть рабочий пример сюда или на мыло? Очень время поджимает для сдачи курсача...

Это сообщение отредактировал(а) Redstuff - 29.8.2007, 18:01


--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
levely
  Дата 30.8.2007, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 17.4.2006
Где: Татарстан, г Нижн екамск

Репутация: нет
Всего: нет



    Не знаю,насколько умно я делала...Но когда приспичило,самым простым мне показалось сделать отчет как раз в HTML. Так я просто создала несколько файлов-шаблонов на HTML. Потом в коде их считывала и добавляла в нужные мне таблицы строки (разметку,теги + мои данные). Итог сохраняла в конечный файл МОЙОТчет.HTML.

   Способ конечно муторный...Но в принципе,за неимением лучшего, очень даже прокатывает.
    
PM MAIL ICQ   Вверх
Experimenter
Дата 30.8.2007, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 3
Всего: 17



Redstuff
Цитата

А то с офисом что-то трудновато разобраться 

это только кажется так...
А в эту сторону не смотрел?
ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/rs_vsrptsmref/html/T_Microsoft_Reporting_WebForms_LocalReport.htm
Код

protected void Button1_Click(object sender, EventArgs e)
{

   Microsoft.Reporting.WebForms.LocalReport lr = 
     new Microsoft.Reporting.WebForms.LocalReport();

   string deviceInfo =
     "<DeviceInfo>" +
     "<SimplePageHeaders>True</SimplePageHeaders>" + 
     "</DeviceInfo>";

   lr.ReportPath = @"C:\My Reports\Monthly Sales.rdlc";

   lr.DataSources.Add(new ReportDataSource("Sales", GetSalesData()));

   byte[] bytes = lr.Render("Excel", deviceInfo, out mimeType, 
     out encoding, out streamids, out warnings);

      using (FileStream fs = new FileStream(@"c:\My Reports\Monthly Sales.xls", FileMode.Create))
      {
        fs.Write(bytes, 0, bytes.Length);
        fs.Close();
      }
}


Добавлено через 9 минут и 14 секунд
и в эту:
ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.en/CPref17/html/T_System_Windows_Forms_HtmlDocument.htm
код приводить не буду, много букаф там, но если МСДН недоступен по каким-то причинам, то сделаю.

Добавлено через 12 минут и 47 секунд
при ближайшем рассмотрении последняя ссылка вообще кучерявая!!! Только ограничение там на второй фреймворк.


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
Redstuff
Дата 30.8.2007, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Experimenter, да если можно то плиз ссылочку в инете или код, а то чето не хочет открываться через помощь студии(


--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
Experimenter
Дата 30.8.2007, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 3
Всего: 17





--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
Redstuff
Дата 31.8.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Experimenter, по той ссылочки чето на веббраузер ничего не выводит...
Что в референс надо добавить чтоб использовать:? а то подходящего ничего не нашел.
Код

using System.Windows.Forms.HtmlDocument;

Я так понимаю без этого должны были быть ошибки? но их нет

Эту функцию поставил на клик мыши, с исправлениями подключения к БД и все.
Код

DisplayCustomersTable()

Что мог еще не усмотреть в примере? чтоб добиться нормальной работы


--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
CYBERDREAM
Дата 31.8.2007, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand

Репутация: 1
Всего: 28



Лично я отчет в html делал вручную, заготовил все теги, и если нужно было вывести таблицу какую то, то через while  и т.д., хотя может и не разумно, за то ясно как Божий день. Сохранял файлик и запускал его.


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
Experimenter
Дата 31.8.2007, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 3
Всего: 17



там ведь условие:
Код

if (webBrowser1.Document != null)
если его закомментить, то будет тебе исключение NullReferenceException
на строчке
Код

HtmlElement tableElem = doc.CreateElement("TABLE");

следовательно, у веббраузера не существует документа, как его заюзать, пока не знаю.


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
Experimenter
Дата 31.8.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 3
Всего: 17



Redstuff, в общем такая вот байда:
Во-первых, прописал в свойствах веб-браузера:
Код

webBrowser1.DocumentText = "<HTML><BODY></BODY></HTML>";

NullReferenceException стал вылетать на строке:
Код

doc.Body.AppendChild(tableElem);

НО: как только перед этой несчастной строкой я поставил:
Код

MessageBox.Show(tableElem.TagName);

exception куда-то исчез, появлялась мессага с именем тэга элемента, после клика на мессаге веб-браузер таки отобразил мне отчет.
Это выше моего понимания, может, травы покурить? пока я осознал свою полную никчемность и закончил исследования в этой области до снисхождения на меня озарения...


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
Redstuff
Дата 31.8.2007, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Команда REDSTUFF
**


Профиль
Группа: Участник
Сообщений: 497
Регистрация: 27.5.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Experimenter, действительно что-то странное... Еще, если в браузере просмотреть html код, то там только то, что присвоили: 
Код

webBrowser1.DocumentText = "<HTML><BODY></BODY></HTML>";

Хотя текст отображается...

Это сообщение отредактировал(а) Redstuff - 31.8.2007, 21:37


--------------------
ГОСТы, СНиПы, ТУ...
<реклама удалена администрацией форума>
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0909 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.