Что Ваш инструмент создания отчетов является предпочтительным? [закрытый]

см. этот пример:

демонстрация состояний потока.

/*NEW- thread object created, but not started.
RUNNABLE- thread is executing.
BLOCKED- waiting for monitor after calling wait() method.
WAITING- when wait() if called & waiting for notify() to be called.
  Also when join() is called.
TIMED_WAITING- when below methods are called:
 Thread.sleep
 Object.wait with timeout
 Thread.join with timeout
TERMINATED- thread returned from run() method.*/
public class ThreadBlockingState{

public static void main(String[] args) throws InterruptedException {
    Object obj= new Object();
    Object obj2 = new Object();
    Thread3 t3 = new Thread3(obj,obj2);
    Thread.sleep(1000);
    System.out.println("nm:"+t3.getName()+",state:"+t3.getState().toString()+
            ",when Wait() is called & waiting for notify() to be called.");
    Thread4 t4 = new Thread4(obj,obj2);
    Thread.sleep(3000);
    System.out.println("nm:"+t3.getName()+",state:"+t3.getState().toString()+",After calling Wait() & waiting for monitor of obj2.");
    System.out.println("nm:"+t4.getName()+",state:"+t4.getState().toString()+",when sleep() is called.");
}

}
class Thread3 extends Thread{
Object obj,obj2;
int cnt;
Thread3(Object obj,Object obj2){
    this.obj = obj;
    this.obj2 = obj2;
    this.start();
}

@Override
public void run() {
    super.run();
    synchronized (obj) {
        try {
            System.out.println("nm:"+this.getName()+",state:"+this.getState().toString()+",Before Wait().");
            obj.wait();             
            System.out.println("nm:"+this.getName()+",state:"+this.getState().toString()+",After Wait().");
            synchronized (obj2) {
                cnt++;
            }
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}
}
class Thread4 extends Thread{
Object obj,obj2;
Thread4(Object obj,Object obj2){
    this.obj = obj;
    this.obj2 = obj2;
    this.start();
}

@Override
public void run() {
    super.run();
    synchronized (obj) {
        System.out.println("nm:"+this.getName()+",state:"+this.getState().toString()+",Before notify().");
        obj.notify();
        System.out.println("nm:"+this.getName()+",state:"+this.getState().toString()+",After notify().");
    }
    synchronized (obj2) {
        try {
            Thread.sleep(15000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}
}
19
задан Unsliced 1 October 2008 в 08:10
поделиться

19 ответов

Для вывода из строя справедливо "выполнение фрезы" отчеты, SQL Reporting Services является действительно довольно впечатляющей.

Для сложного анализа, загружая данные (возможно, предварительно агрегированный) в Сводную таблицу Excel обычно достаточен для большинства пользователей.

я нашел, что можно провести много времени (и деньги) создание всестороннего "специального" комплекта создания отчетов и после первого месяца или двух из, "ничего себе, фактора", 99% сгенерированных отчетов будут тем же отчетом с незначительными различиями в фиксированном наборе параметров.

не принимают, когда пользователь говорит, что они хотят "специальные" отчеты, не указывая, какие цели и предназначается для их поиска. Они просто ловят рыбу, и они должны на самом деле провести столько времени на РАЗМЫШЛЕНИИ об ИХ требованиях к отчетности, сколько необходимо было бы потратить СОЗДАНИЕ их решения.

я провел слишком много времени, создавая "систему, которая может сообщить обо всем" и чтобы это стало устаревшим или в немилости прежде чем это было закончено. Намного лучше избавиться от быстрых побед, максимально быстрых и затем провести время, "систематизируя" самые важные отчеты.

29
ответ дан 30 November 2019 в 01:56
поделиться

Мы используем Cognos, это - довольно сложная система, но очень мощный.

1
ответ дан 30 November 2019 в 01:56
поделиться

Для простых отчетов я использую стандартный ReportViewer, включенный в Visual Studio.

Для более сложных отчетов и, которые требуют большего количества производительности, я использовал и Отчет Стрелок Sharp и devExpress XtraReports. Удивительно, в обоих продуктах составляющие таблицы не так легки, как это должно, но оба быть быстрее, чем ReportViewer и обработать чрезвычайно хорошо многостолбцовые отчеты, штрихкоды и агрегированные данные.

1
ответ дан 30 November 2019 в 01:56
поделиться

Crystal Reports, потому что легко взять тот же точный файл отчета и

1 - Сообщение это на интранет

2 - Встраивает его в приложение

3 - Расписание он для пользования электронной почтой как вывод Excel время от времени тому, кому бы ни нужен он

Также (как я уже предположил), это экспортирует легко в Excel, PDF и другие форматы.

2
ответ дан 30 November 2019 в 01:56
поделиться

Я должен был бы согласиться, мне действительно нравится SQL Server Reporting Services. Это просто наполняет и делает это легко.

2
ответ дан 30 November 2019 в 01:56
поделиться

У меня действительно нет большой работы SSAS, чтобы сделать, но я был вполне взят с этим:

Браузер кубов для ASP.net

Это предлагает многую из поддержки сводной таблицы Excel в веб-приложении, (думал, что я - недостаточно эксперта по Excel для реального знания поддержки всей сводной таблицы - это, по крайней мере, выглядит сопоставимым с браузером кубов Visual Studio).

, К сожалению, демонстрации, кажется, больше не онлайн :(

2
ответ дан 30 November 2019 в 01:56
поделиться

Мы используем i-сеть Четкие Отчеты для нашего создания отчетов (видящий как, как мы "едим наш собственный корм для собак"). ;)

3
ответ дан 30 November 2019 в 01:56
поделиться

Если у Вас есть все деньги в мире, пойдите с Cognos. Они обеспечивают куб данных, который по существу делает сообщающего "разработчика свободным", и конечный пользователь может создать отчеты, панели инструментов, что-либо, что они любят.

Для "обыкновенного человека", я стал довольно любящим отчеты ComponentOne для библиотеки/инструментов.NET. Это имеет подобное чувство к Crystal Reports, но имеет очень дружественный формат XML, что Вы и редактирование под капотом и ни одной из головных болей с управлением версиями, ключами и другими объектами, что я должен был иметь дело с при создании простых обновлений или отчета или базовой версии.

2
ответ дан 30 November 2019 в 01:56
поделиться

Cognos является устойчивым комплектом инструментов (мы используем его в качестве фронтенда для бэкенда Oracle), но существует явное отсутствие документации относительно того, как выполнить задачи создания отчетов комплекса - главным образом, Вы заканчиваете тем, что барабанили в него, пока Вы не заставляете что-то работать.

я не обесценил бы полноценность использования Microsoft Access как фронтенд создания отчетов. Это не имеет той полезной функциональности веб-доступа, но для внутренних отчетов это очень универсально и удивительно мощно.

3
ответ дан 30 November 2019 в 01:56
поделиться

Для большого количества проектов мы используем ActiveReports.

5
ответ дан 30 November 2019 в 01:56
поделиться

Я - разработчик на проекте BIRT, таким образом, я смещаюсь. BIRT обеспечивает, очень хорошо продумал модель объекта отчета (ROM) и соответствующий API для различного дизайна, и разверните функцию, которая необходима. Кроме того, BIRT обеспечивает лучшую многоязыковую поддержку и способность разделить разработку от дизайна с помощью CSS.

BIRT может быть встроен в Ваше приложение ни для какой стоимости лицензии через REAPI, или это может быть куплено посредством нескольких коммерческих предложений.

4
ответ дан 30 November 2019 в 01:56
поделиться

Я использовал Reporting Services и Crystal справедливо экстенсивно, и я пишу нескольким использованиям отчетов Excel (ick) в данный момент.

Reporting Services довольно хороша для простых отчетов, но как только Вам нужен полный контроль по форматированию, сложным формулам и диаграммам и т.д. Crystal является длинным путем вперед. Я также нахожу, что Crystal намного более применим; способность изменить вещи в предварительном просмотре отчета неоценима (это может быть возможно в более поздних версиях RS?).

RS также должен быть развернут на веб-сервере, который ограничивает, это - полноценность, если Вы пишете приложения, которые должны быть развернуты внешне.

Более старые версии Crystal были очень ошибочны, но последние намного лучше, это является намного более сформировавшимся, чем Reporting Services.

6
ответ дан 30 November 2019 в 01:56
поделиться

Для большинства отчетов мы используем BIRT.

7
ответ дан 30 November 2019 в 01:56
поделиться

Мы использовали BIRT, который имел крутую кривую обучения для меня, пока я не понял, сколько функций WYSIWIG он имел (я начал редактировать прямой исходный код XML, который я не рекомендую.) Существует некоторый вывод определенные приемы (как использование 0 левых полей для не получения пробела столбец при выводе к формату XLS), но по большей части это быстро и просто в использовании, редактирование и предварительный просмотр.

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

2
ответ дан 30 November 2019 в 01:56
поделиться

i have a small reporting set, made in 2 months:

at least 10 times faster than crystal reports;

easy editing;

.net formula;

easy usage;

small code usage;

serialization and deserialization(fast and small);

extreme security;

multi threaded;

no errors;

1
ответ дан 30 November 2019 в 01:56
поделиться

Мы использовали MS Reporting Services, но нас это совершенно не устраивало. Причины:

  • необходимо произвести сложную настройку сервера
  • невозможно встроить редактор отчетов в наше приложение без покупки лицензии SQL-сервера для каждого пользователя
  • можно только использовать встроенную форму ввода параметров отчета Пользовательский интерфейс или отправка их из приложения, но не для создания пользовательского интерфейса параметров дизайнером отчетов

Теперь мы используем Stimulsoft Reports. У него нет таких ограничений, как у MS Reporting Services, и мы и ваши пользователи довольны им.

1
ответ дан 30 November 2019 в 01:56
поделиться

"Дайте им данные, и они будут любить вас за это"

Из методов и инструментов, которые я использовал в прошлом, я бы ранжировал их в следующем порядке, исходя из возможностей/сверхречивости/работоспособности/скорости развертывания. Я упускаю из виду стоимость, потому что, хотя это всегда фактор, для каждого он свой.

1 - это Cognos (версия 8)

2 - это SQL Server Reporting

3 - это Crystal Reports

4 - это пользовательский написанный код

Я не использовал ни один из других упомянутых инструментов. Cognos 8 - это не что иное, как удивительное. Хотя это и дорого, но вы ограничены только воображением. Оно может делать все, что угодно.

2
ответ дан 30 November 2019 в 01:56
поделиться

1) Мне кажется, что служба Reporting Services очень хорошо подходит для большинства нужд, когда дело доходит до разработки табличных отчетов, а также матричных отчетов (drilldown - pivot like functionality).учитывая цену Cognos и т.п. Малый и средний бизнес не может даже мечтать о том, чтобы получить Congns AFAIK

2) Функция планирования отчетов / подписки может быть вызвана для отправки отчетов набору пользователей (управляемых данными) для доставки отчетов. Подписки могут быть доставлены в пользовательские места, такие как SFTP, путем написания .Net кода.

3) Используя модели отчетов, конечный пользователь может перетаскивать колонки и разрабатывать настраиваемые отчеты

To Note:

1) Это может стать более сложным после того, как вы разработаете действительно сложные графические/инструментальные отчеты - которые включают несколько диаграмм и маленьких таблиц для отображения в A4. Дизайнер отчетов (инструмент, который мы используем для создания отчетов) и Web-дисплей используют различные движки рендеринга. Поэтому лучше, если вы будете часто разворачивать отчеты и видеть, как они выглядят, если вы разрабатываете сложные графические отчеты

2) Если вы пишете пользовательскую функциональность, вам, возможно, придется изменить XML-файлы конфигурации (RSReportServer.Config и т.д.). Если в редактировании возникнут какие-либо проблемы, служба ReportServer может остановиться. Поэтому будьте осторожны с резервным копированием, прежде чем делать что-либо пользовательское

.
1
ответ дан 30 November 2019 в 01:56
поделиться

Это не столько положительное предложение, сколько предостережение против отчетов о кристаллах ... Как и в случае с другими людьми, получение правильной версии среды выполнения кристалла важно, но после этого у меня все еще была проблема:

  1. Я потратил недели на разработку отчетов, в которые были встроены изображения.
  2. Протестировано в среде разработки и тестовой среде, все в порядке.
  3. Развернуть на живом сервере - не работает ... Хммм ...

Провел две недели, рыскал по форумам и искал совета, в конце концов получил ответ от кристального тела на их форумах. Предположил, что он видел аналогичную проблему, связанную с установкой MS Paint в качестве приложения по умолчанию для определенного расширения файла.

На этом этапе мы отказались от попыток (после того, как я убедил своего босса, что это не был ответ на мочу, а на самом деле формальный ответ Кристал). Примерно через месяц мы с легкостью перешли на новые серверы (где отчеты работали), но, честно говоря, больше не трогаем их ...


О, и мы использовали SSRS и обнаружили, что это довольно хорошо для большинства вещей ( особенно последняя версия).

2
ответ дан 30 November 2019 в 01:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: