(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Создание отчета с помощью TFS и Crystal Reports. часть 2

Источник: aspalliance

 

В недавно завершенной мной серии работ показано, как создавать некоторые типы отчетов для agile-проектов с использованием TFS и Crystal Reports. Данная статья продолжает традицию использования TFS и Crystal Reports, на этот раз для создания карточек историй на основе информационного хранилища данных.

В части 1 нашей серии статей мы рассмотрели предпосылки использования Базового сервера команды (TFS) и инструментального средства Crystal Reports для создания отчетов в рамках agile-проектов. Во 2-й части серии публикаций мы создадим 2 отчета: Отчет по журналу регистрации подробностей историй, который позволяет распространить журнал обрабатываемых историй между удаленными пользователями. Ко второму рассмотренному типу отчетов относится отчет о текущей итерации, в котором фиксируется состояние текущей итерации и отчет об авариях.

В части 3 рассматривается процедура создания диаграммы отказов с использованием TFS и Crystal Reports.

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

Системные требования

  • Базовый сервер команды (TFS);
  • SQL Server 2005;
  • Visual Studio 2005
  • Crystal Reports XI.

 

Отчет по историям

Как было подробно рассмотрено в части 1, мы используем TFS для сбора историй.Я осуществляю сбор историй в TFS по ряду причин.Одна из причин состоит в возможности хранения этих историй в массиве данных, который постоянно резервируется и т.д. Другая причина заключается в возможности создания отчетов различными способами с использованием SQL.

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

Мы рассмотрим шаг за шагом процедуру создания отчета, который будет генерировать истории для Вас. Прежде всего, отчет историй предназначен для распечатки карточек историй, которые можно приколоть к информационной доске. Если читатель знаком с agile-проектами, при создании которых используется ЭП или аналогичные методики, то он, вероятно, знаком также и с обычной процедурой создания карточек историй. Большинство команд разработчиков, работающих с историями, используют карточки для заметок, на которых они записывают истории. После этого они помещают карточку с историей на информационную доску, где фиксируется рабочий задел.

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

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

Давайте рассмотрим SQL-оператор, использованный для генерации этого отчета.

Листинг 1

 

select      [System.Id]

            , [System.Title]

            , [System.CreatedDate]

            , [System.TeamProject]

                                , [Microsoft.VSTS.Common.RoughOrderOfMagnitude]

                                , [Microsoft.VSTS.Common.Rank] as Iteration 

            , [System.State]

                                , [System.Reason]

            , [Microsoft.VSTS.Common.ClosedDate]

from dbo.WorkItemsLatestUsed

where [System.WorkItemType] = 'Scenario'

В этом SQL-операторе мы собираем ID, Заголовок, Microsoft.VSTS.Common.Rank для итерации и .VSTS.Common.RoughOrderOfMagnitude в качестве балльного показателя. Этот SQL-оператор создает основу для отчета историй.

Создание отчета

С помощью этого SQL-оператора можно создать отчет, содержащий истории размером 4x6 каталожных карточек. Давайте создадим отчет с использованием обычной страницы размером 8.5" x 11", как я обычно делаю, а затем вырезаю из него по мере надобности карточки историй.

Прежде всего для отчета нам нужно добавить следующие поля. System.ID, System.Title, Microsoft.Common.VSTS.RoughOrderOfMagnitude и Iteration.  Поле ID удобно для поиска истории в TFS позже в ходе проведения совещания по планированию с заказчиками. После этого можно хранить подробности в поле описания. С его помощью легче находить эти истории, особенно при наличии большого их количества. В среднем проекте можно обрабатывать до 200 историй, и такой проект очень удобен для их хранения.

На иллюстрации 1 показаны места расположения полей. Поле @IdNum (формула, которая добавляет знак # перед числом) должно находиться в центре верхней строки. Поле System.Title располагается в середине, а поля Score и номер Iteration размещаются в нижней части карточки. Для всех полей используется шрифт Arial размером 36 пунктов, если не указано иное. Давайте применим дополнительное форматирование.

Рисунок 1

 

Прежде всего, для каждой карточки мы должны предусмотреть уникальный внешний вид с тем, чтобы карточки легко различались на совещании по планированию. Для этого давайте воспользуемся шрифтами Wingdings, которые поставляются совместно с другими шрифтами ОС Windows. Если у Вас на компьютере отсутствует шрифт Wingdings, поищите шрифт символьного типа, который может быть уникальным.

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

Для этого будем использовать поле System.ID, которое всегда имеет разные значения.  Поэтому мы зададим значение первого поля System.ID. Поместим это поле в верхнюю левую часть карточки. Давайте установим шрифт поля System.ID на Wingdings в разделе свойств. Затем на вкладке Font Color щелкнем мышью на кнопке Formula и поместим формулу в Листинг 2.

Листинг 2

 

iif(mid (cstr( {command.System.Id} ),3)="1", crBlack,

 iif( mid( cstr( {command.System.Id} ),3) ="2", crRed, 

iif( mid( cstr( {command.System.Id} ),3) ="3" , crBlue , 

iif( mid( cstr( {command.System.Id} ),3)="4", crGreen, 

iif( mid( cstr( {command.System.Id} ),3)="5", crPurple, 

iif( mid( cstr( {command.System.Id} ),3)="6", crYellow, 

iif( mid( cstr( {command.System.Id}),3) ="7", crGray, 

iif( mid( cstr( {command.System.Id} ),3)="8", crMaroon, crTeal))))))))

Мы хотим также подставить ту же самую формулу в формулу для цвета поля System.Title.При этом цвет заголовка будет совпадать с уникальным цветом карточки.  Теперь давайте скопируем это поле System.ID, имеющее шрифт wingding, в правый верхний угол карточки, а затем в нижние два угла на каждой стороне карточки. Теперь вашу карточку можно распечатать!

  

Краткие выводы

В этой статье мы показали, как можно использовать базовый сервер команды и приложение Crystal Reports для создания карты истории. Эта информация полезна для любого пользователя, использующего TFS в качестве хранилища информации для своего agile-проекта. Этой картой может воспользоваться любой сотрудник, понимающий преимущества использования в проекте распечатанной карты относительно написанных от руки индексных карт. Я надеюсь, что приведенная здесь информация окажется полезной для любого разработчика, применяющего стиль ЭП при разработке agile-проекта, и желаю всем разработчикам успехов в программировании.

 

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 12.05.2008 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
SAP® Crystal Reports 2016 WIN INTL NUL
SAP Crystal Reports 2008 INTL WIN NUL License
SAP® Crystal Presentation Design 2016 WIN INTL NUL
SAP CRYSTAL Reports 2013 WIN INTL NUL
SAP® Crystal Dashboard Design Departmental 2016 WIN INTL NUL
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
Новые материалы
Мир OLAP и Business Intelligence: новости, статьи, обзоры
Один день системного администратора
Delphi - проблемы и решения
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100