График в отчете FastReport

Здравствуйте, как можно сделать график с временной осью? Мне необходимо отследить количество выполненных задач за определенный промежуток времени. Я с помощь объекта Chart пытаюсь вывести данные из набора данных. Выбираю тип графика линейный, по оси Y выбираю количество задач, а по оси X дату окончания задачи. Выводится только одна полоса, которая хоть и отображает правильное количество одного вида задач, но нужно больше линий и разбиение по датам, чтобы отследить динамику выполнения) А почему то не получается никак((

Нравится

10 комментариев

У Вас получается так, как в этом посте? Попробуйте дату поставить по оси Y, как описано в ответе.

Да, Олег, я по этому посту тоже пробовал делать, у меня получается на оси Y значение 0.0. и линия ровная..

И если выбираю DetailData в BandSource графика, то на каждую запись выводится отдельно по одному графику и на нем нет линий, хотя дата выводится..

Да, в принципе разобрался, я в самом запросе просто количество считаю задач определенного типа, вот и выводи у меня нули и одну линию, т.е. общее количество.. А как бы сделать, чтобы по датам разбивалось и считалось количество различных задач, вот это не понятно..

Николай, попытался реализовать по Вашему описанию простой пример.

1) Создал запрос с двумя полями: количество задач и дата завершения (формат отображения - дата).

2) Создал датасет по этому запросу.
3) Создал сервис FastReport с использованием этого датасета.
4) В сервис FastReport добавил объект Chart с одной линией, указав в её свойствах такие значения:

5) После сохранения отчёта и запуска предпросмотра непосредственно в Terrasoft Administrator получил такой график:

Олег, спасибо!) сейчас попробую) Это получается для одной задачи, а если для разных разные линии рисовать, то придется делать несколько запросов с разными фильтрами или я ошибаюсь?)
т.е. для всех задач

Можно либо так, как Вы предложили, либо следующим образом:

1) создать один запрос с фильтрацией по типу задачи (и соответствующий датасет);
2) в сервис FastReport добавить несколько датасетов с разными именами, которые ссылаются на один и тот же датасет в TS;
3) создать обработчик события OnPrepare для сервиса FastReport, в котором получать эти датасеты по имени в отчёте и применять для каждого соответствующий фильтр.

Ваш вариант получше!) Олег, большое спасибо за помощь:)

Последний вопрос) А как получить датасет из FastReporta?)

Показать все комментарии