Отчеты в трех-звенке

отредактировано 11:52 Раздел: FastReport Studio
Всем привет!

Уважаемые разработчики, могли бы вы написать обзорный ответ о использовании FastReport Studio в трех-звенном приложении. Клиентская часть не имеет соединения с БД.

На клиентской стороне пользователь только вводит данные и смотрит результат. Может нажать на кнопку ввести необходимые для отчета данные... затем запрос отправляется на сервер, там формируется (видимо сохраняется в какой-то файл), ответ приходит на клиента и отображается пользователю (он может его напечатать, сохранить в файл общеизвестного формата).

Также пользователь должен иметь возможность разрабатывать новые отчеты. Соответственно на клиенте должен работать дизайнер отчетов.

1) Какая часть Studio на какой стороне должна использоваться?
2) Какие ограничения на просмотр сформированных отчетов (вроде есть динамически доформируемые отчеты, они работать не будут?)?
3) Будут ли в дизайнере отображаться доступные поля, таблицы?

4) Есть ли еще какие-то проблемы, которые видны только вам?

Комментарии

  • almanalman космополит
    отредактировано October 2005
    LMars написал:
    Уважаемые разработчики, могли бы вы написать обзорный ответ о использовании FastReport Studio в трех-звенном приложении. Клиентская часть не имеет соединения с БД.

    Возможны три варианта использования продуктов FastReport в связке: база данных - сервер отчётов - клиент:
    1. Использование FastReport Server, который поставляется вместе с Enterprise версией FastReport 3.
    2. Использование FastReport Studio для экспотра отчётов в различные форматы под ASP.NET.
    3. Использование FastReport Studio для написания клиента и сервера.
    LMars написал:
    На клиентской стороне пользователь только вводит данные и смотрит результат. Может нажать на кнопку ввести необходимые для отчета данные... затем запрос отправляется на сервер, там формируется (видимо сохраняется в какой-то файл), ответ приходит на клиента и отображается пользователю (он может его напечатать, сохранить в файл общеизвестного формата).
    Соответсвенно, по вышензаваннм вариантам:
    1. FastReport Server - предоставляет готовое и самостоятельное решение. Возможно написание своих клиентов.
    2. Под ASP.NET пользовательский интерфейс клиента реализуется на уровне ASP.NET. FastReport Studio используется как фильтр, генерящий отчёт в каком-либо из поддерживаемых форматов.
    3. Реализация клиента и сервера средствами Студии возможна, но для реализации обратной связи, т.е. ввода данных, ввода параметров отчёта и т.д., потребуется работа прикладного программиста. Что касается передачи отчёта между клиентом и сервером, то готовые отчёты можно передавать через IStream интерфейс, т.е. реализация транспорта целиком ложиться на прикладного программиста.
    LMars написал:
    Также пользователь должен иметь возможность разрабатывать новые отчеты. Соответственно на клиенте должен работать дизайнер отчетов.[/i]

    Такая возомжность есть. В том числе есть возможность сохранять отчёты непосредственно в базу данных. Естественно, это потребует реализации на уровне прикладной программы.
    LMars написал:
      1) Какая часть Studio на какой стороне должна использоваться?

    На стороне сервера должны использоваться объект TfrxReport и любая комбинация TfrxADOQuery, TfrxADOTable, TfrxADOConnection и TfrxUserDataSet.

    На стороне клиента TfrxPreviewX.
    LMars написал:
      2) Какие ограничения на просмотр сформированных отчетов (вроде есть динамически доформируемые отчеты, они работать не будут?)?

    Ограчиние одно - отчёт может быть закрыт паролем. Эту возможность мы планируем усовершенствоать и закрывать подготовленный отчёт криптостойким алгоритмом.

    Не могли бы уточнить, что Вы понимаете под динамически доформируемым отчётом?
    LMars написал:
      3) Будут ли в дизайнере отображаться доступные поля, таблицы?

    В простейшем случае, дизайнеру для этого необходимо иметь коннект к базе данных.
    Если такая возможность не желательна, то следует использовать RunTime дизайнер в прикладной программе, которая будет "эмулировать" базу данных.
    LMars написал:
      4) Есть ли еще какие-то проблемы, которые видны только вам?
    Скорее всего есть, но на вскидку назвать не могу. Мы стараемся их оперативно решать, по мере возникновения.
  • отредактировано 11:52
    Спасибо за ответ. Меня интересует именно вариант 3
    написал:
    3. Использование FastReport Studio для написания клиента и сервера.

    Я так понимаю, он самый трудоемкий... но так можно сделать очень многофункциональную систему отчетов.
    написал:
    Реализация клиента и сервера средствами Студии возможна, но для реализации обратной связи, т.е. ввода данных, ввода параметров отчёта и т.д., потребуется работа прикладного программиста.

    Т.е. сейчас средствами Studio невозможно показать диалог для ввода необходимых параметров и сохранить весь ответ пользователя куда-либо? Если возможно сохранить необходимые для отчета параметры в файл... то проблем нет.

    Использовать дизайнер на клиенте (без конекта к базе), я так понял, можно... только здесь основная сложность. Надо эмулировать базу. Но результат работы дизайнера в файл сохранить можно!?

    Передача файлов между сервером и клиентом не проблема.
    Самая главная проблема этой схемы (при использовании Studio), то что не конекта к базе, да?
  • отредактировано 11:52
    Хм... а FastReport Server тоже хорошая штука...

    Я так понял на клиентской стороне его (клиентскую часть) можно органично встроить в свой прилож. Надо будет посмотреть на сколько это хорошо выглядит.
  • отредактировано 11:52
    Почитал я про FastReport Server и понял, что он не совсем подходит.

    1) Проблема с разграничением прав доступа пользователей. Хотелось бы использовать права пользователей моего приложения... ограничений по IP-адресам недостаточно.

    2) Его клиентская часть есть только для Delphi/Builder... А у нас VC

    Вообщем проблема встраивания FastReport в трех-звенное приложение пока остается.
  • almanalman космополит
    отредактировано 11:52
    LMars написал:
    1) Проблема с разграничением прав доступа пользователей. Хотелось бы использовать права пользователей моего приложения... ограничений по IP-адресам недостаточно.

    Надеюсь, на этот вопрос ответит автор сервера.
    LMars написал:
    2) Его клиентская часть есть только для Delphi/Builder... А у нас VC

    Вообщем проблема встраивания FastReport в трех-звенное приложение пока остается.
    Постараюсь до конца недели добавить в FR Studio простейший пример для трёхзвенки.
    Насчёт языка реализации пока не ясно - или C++ или C#, смотря для чего пример окажется проще. Также не могу сказать, будет ли этот пример отдельным решением, либо в виде привязки FR Studio к FR Server.
  • SamuraySamuray Administrator
    отредактировано 11:52
    alman написал:
    alman написал:
    1) Проблема с разграничением прав доступа пользователей. Хотелось бы использовать права пользователей моего приложения... ограничений по IP-адресам недостаточно.

    Надеюсь, на этот вопрос ответит автор сервера.
    Система разграничения доступа в данный момент находится в разработке.
  • almanalman космополит
    отредактировано 11:52
    + добавлена C# демо: ClientOfReportServerDemo - демонстрирует использование FastReport Studio в трёхзвенных приложениях

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.