МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
Учреждение образования 
«Гомельский государственный университет 
имени Франциска Скорины»
Математический факультет
Кафедра математических проблем управления

Настройка отчетов с помощью условного форматирования

Гомель 2014

Содержание
Цели
Демо 1: Создание многоязычного отчета
Задание 1 Создание и оглавление списка
Задание 2 Создать языковую переменную и выбрать языки
Задание 3 Определить название как условный текст
Задание 4 Установите отображение для каждого значения
Задание 5 Запустить отчет на разных языках
Демо 2: Выделение исключительных данных
Задание 1 Создание перекрестного отчета
Задание 2 Создание переменной для дохода
Задание 3 Определить ячейки как условные и установить отображение для каждого значения
Демо 3: Создание отчета с условно отображаемой колонкой (необязательно)
Задание 1 Создайте отчет List и добавьте информацию
Задание 2 Создать Value Prompt на титульной странице
Задание 3 Добавте логическую переменную
Задание 4 Примените условное отображение/скрытие столбца описания, а затем запустите отчет
Резюме
Семинар 1: Выделение данных для каждого года
Семинар 1: Таблица задач
Семинар 1: Результаты семинара
Семинар 1: Инструкция «Шаг за шагом»
Задание 1 Создайте перекрестный отчет
Задание 2 Создайте строковую переменную
Задание 3 Определите ячейки, как условные и установите отображение для каждого значения

Настройка отчетов с помощью условного форматирования
Цели
В конце этой главы вы должны уметь:
•	создавать многоязычные отчеты;
•	выделять важные данные;
•	отображать и скрывать данные;
•	отображать объекты отчета по условию.
Изменение отображения в зависимости от условия
Вы можете изменять отображение отчета на основе заданных условий с помощью условного форматирования. Это полезно для выделения данных, которые превышают или не превышают заданные значения, запуска одного и того же отчета на разных языках, устранения разделов отчета, которые не относятся к стандартами, которые вы создаете.
Определение изменений
Создайте переменные и значения, чтобы решить, какой элемент отчета будет определять изменения и возможные результаты.
Булевы переменные используются, если есть только два возможных исхода, где значения будут Да или Нет. Строковые переменные используются, если есть больше чем один результат, основанный на значениях строк, которые вы укажете. Языковые переменные используются, когда значения являются языками.
Определение условий и результатов
Определите условия и предоставьте критерии, используемые для определения возможных результатов.
Если вы создаете логические или строковые переменные, необходимо определить условия. Если вы создаете языковые переменные, вы не должны определять состояние. Вы должны выбрать языки, которые вы хотите поддерживать.
Создание представления для каждого значения
Как только вы создали переменную, измените отчет в рабочей области, как требуется для каждого значения.
После того как элемент отчета был определен как условный, настройте отображение для этого значения, как вы хотите, чтобы он выглядел, если это условие выполнено.

Демо 1: Создание многоязычного отчета
Цель:
Ваши региональные менеджеры по продажам хотят изучить валовую прибыль всех ваших продуктов, чтобы продвигать самые прибыльные. Так как этот доклад будет распространен в Германии, Франции и Соединенных Штатах, мы должны запустить отчет на разных языках.
Сервер:	localhost Пользователь/Пароль	brettonf/Education1!
Студия:	Report Studio
Пакет:	GO Data Warehouse (query)
Тип отчета:		ListПапка:	Sales and Marketing (query)
Пространство имен:	Sales (query)
Задание 1 Создание и оглавление списка
1.	Нажмите кнопку Создать новый отчет или шаблон, нажмите кнопку List, а затем нажмите кнопку ОК.
2.	В панели Insertable Objects, добавьте следующие пункты запроса в список: Product → Product line, Product type и Product name. Sales fact → Gross profit.
3.	Ctrl + клик столбцы Product line, Product type и Product name, и затем на панели инструментов, выберите Group / Ungroup.
4.	Нажмите на колонке Gross profit, нажмите Aggregate, а затем нажмите Total.
5.	В заголовке дважды щелкните на значок текста заголовка, напишите Product Report, а затем нажмите Enter.
Вы будете применять условное форматирование для текста заголовка, так что название отчета появится в языке, на котором запустится отчет.
Задание 2 Создать языковую переменную и выбрать языки
1.	В Explorer bar выберите Condition Explorer.
Панель Condition Explorer показывают, что в настоящее время нет переменных для данного отчета.
2.	Нажмите кнопку Variables.
3.	Из панели Insertable Objects, перетащите языковую переменную в рабочую область переменных.
4.	Прокрутите список и установите флажки рядом со всеми английскими, французскими и немецкими языками, а затем нажмите кнопку OK.
5.	В окне значений, Shift + клик английский и английский (Зимбабве), а затем нажмите Group Values.
6.	Повторите шаг 5, чтобы сгруппировать все французские языки вместе, и все немецкие языки вместе.
Результаты выглядят следующим образом:

Теперь отчет имеет одну переменную с тремя сгруппированными значениями, по одному для каждого языка, на котором отчет будет работать.
7.	В панели Properties, в разделе Miscellaneous, в поле Name введите Language и нажмите клавишу ВВОД.
8.	На панели инструментов нажмите кнопку Back.
Задание 3 Определить название как условный текст
1.	В заголовке отчета, убедитесь, что элемент текст Отчет продуктов выбран.
2.	В панели Properties, в разделе Conditional, дважды щелкните Text Source Variable.
Откроется диалоговое окно Text Source Variable.
3.	В списке Variable щелкните Language.
Значения панели отображается на трех языках, которые мы выбрали, плюс опция под названием другие. Три языка выбраны по умолчанию, так что мы можем использовать Проводник условий для выполнения условной разработки для любого из этих трех языков.
4.	Нажмите кнопку ОК.
Задание 4 Установите отображение для каждого значения
1.	В окне Explorer bar выберите пункт Condition Explorer, а затем нажмите English.
Окно Explorer bar становится зеленым, чтобы напомнить вам, что любые изменения, внесенные в отчет, будут распространяться на значение, которое вы выбрали. Предыдущее название исчезает, потому что вы должны задать текст для этого значения.
2.	Дважды щелкните на значок текста заголовка, и напишите Product Report.
3.	В окне Explorer bar выберите пункт Condition Explorer, а затем нажмите французский язык.
4.	Дважды щелкните на значок текста заголовка, и напишите Rapport sur les produits.
5.	В окне Explorer bar выберите пункт Condition Explorer, а затем нажмите немецкий язык.
6.	Дважды щелкните на значок текста заголовка, и напишите Produktbericht.
7.	Дважды щелкните на окне Explorer bar, чтобы выключить условное форматирование.
Теперь, когда вы установите отображение для каждого значения, вы можете запустить отчет на различных языках, чтобы увидеть, как выглядит отчет.
Задание 5 Запустить отчет на разных языках
1.	На панели инструментов щелкните Run Report.
Наш отчет появляется на английском языке, поскольку это наш текущий язык по умолчанию. Название отчета отображается для его английского значения. Вы сейчас запустите отчет на французском языке, чтобы увидеть результаты.
2.	Закройте Cognos Viewer, а затем на панели инструментов щелкните стрелку вниз рядом с кнопкой Run Report.
Вы можете запускать отчеты в HTML, PDF, Excel 2007, Excel 2002, Excel 2000 Single Sheet, Excel 2000, CSV, XML форматах. Вы хотите использовать опцию вывода по умолчанию HTML, но хотели бы выбрать другой язык, отличный от наших текущих значений по умолчанию.
3.	Нажмите кнопку Run Options.
4.	В списке Language, прокрутите вниз и выберите French (France), а затем нажмите кнопку ОК.
5.	Запустите отчет.
Результаты выглядят следующим образом:

Отчет отображается по-французски, включая заголовок, который вы создали.
6.	Повторите шаги со 2 по 5 для запуска отчета на немецком языке (Австрия).
Результаты выглядят следующим образом:

Вы хотите, вернуть Report Studio язык оригинала по умолчанию.
7.	Нажмите стрелку вниз рядом с Run Report, а затем нажмите кнопку Run Options.
8.	В списке Language прокрутите вверх, выберите Default, а затем нажмите кнопку ОК.
9.	Закройте Cognos Viewer.
Оставьте Report Studio открытым для следующего демо.
Результаты:
Региональные менеджеры по продажам могут изучить валовую прибыль по продвижению самых прибыльных продуктов. Данный отчет может быть распространен в офисы немецко-, французско- и англоговорящих стран на соответствующих языках.

Демо 2: Выделение исключительных данных
Цель:
Менеджер хочет, чтобы быстро идентифицировать доход больше $20,000,000 и меньше $5.000.000 в целях выявления высокого и низкого дохода продуктовых линеек во всех торговых территориях.
Сервер:	localhost Пользователь/Пароль	brettonf/Education1!
Студия:	Report Studio
Пакет:	GO Data Warehouse (query)
Тип отчета:		CrosstabПапка:	Sales and Marketing (query)
Пространство имен:	Sales (query)
Задание 1 Создание перекрестного отчета
1.	На панели инструментов, выберите команду Создать, а затем выберите Нет в ответ на предложение сохранить отчет.
2.	Нажмите Crosstab, а затем нажмите кнопку ОК.
3.	В панели Insertable Objects добавьте следующие элементы запроса кросс-таблицы: Retailer site →Region в область Columns, Time dimension → Current year правее Region как вложенные колонки, Product → Product line в область Rows.
4.	Перетащите Product type вправо от Product line, чтобы добавить его в качестве вложенных строк.
5.	Из Sales fact перетащите Revenue в область Measures.
Результаты выглядят следующим образом:

Вы создаете переменную для определения дохода как "high" или "low", если сумма выше или ниже указанной суммы.
Задание 2 Создание переменной для дохода
1.	В Explorer bar выберите Condition Explorer.
2.	На панели Condition Explorer нажмите кнопку Variables, а затем перетащите String Variable на панель Variables.
Так как вы создали строковую переменную, необходимо указать условия, на которых доход будет изменяться, а затем создать значения для возможных результатов.
3.	Щелкните внутри области Expression Definition и введите следующее условие: if ([Revenue]>20000000) then ('high') else if ([Revenue]<5000000) then ('low') 
Вы можете дважды щелкнуть Revenue в панели Available Components, чтобы добавить его к выражению, которое вы пишете.
4.	Нажмите кнопку Validate, чтобы удостовериться, что выражение не имеет ошибок, а затем нажмите кнопку ОК.
5.	В поле Values нажмите кнопку Add.
6.	В диалоговом окне Add введите high, а затем нажмите кнопку OK.
7.	Повторите шаги 5 и 6, для второго значения low.
8.	В панели Properties, в разделе Miscellaneous, в поле Name введите Revenue_high_low, а затем нажмите Enter.
9.	На панели инструментов нажмите кнопку Back.
Теперь, когда вы создали переменную и определили ее значения, необходимо отформатировать ячейки Revenue для каждого значения.
Задание 3 Определить ячейки как условные и установить отображение для каждого значения
1.	Нажмите любую из ячеек дохода в кросс-таблице, а затем в панели Properties, в Conditional, дважды щелкните Style Variable.
Появится диалоговое окно Style Variable.
2.	В списке Variable, нажмите Revenue_high_low, а затем нажмите кнопку ОК.
Ячейки Revenue в настоящее время условно отформатированы с использованием переменной, которую вы только что создали. Теперь Вы должны установить параметры отображения для каждого значения.
3.	В Explorer bar выберите Condition Explorer затем щелкните на high.
Explorer bar станет зеленым.
4.	Пока ячейки Revenue выделены, на панели инструментов выберите Foreground Color и щелкните Green, а затем нажмите кнопку OK.
5.	Повторите шаги с 3 по 6, чтобы изменить цвет шрифта для значения low на красный.
6.	Дважды щелкните на Explorer bar чтобы выключить условное форматирование.
Вы настроили отображение для каждого значения.
7.	Запустите отчет.
Результаты выглядят следующим образом :

Вы можете видеть, что некоторые продукты Camping Equipment приносят высокий доход в течение трехлетнего периода в Центральной Европе, в то время как Outdoor Protection приносит низкий доход. Обратите внимание- когда условие не выполняется доход отображается черным цветом.
8.	Закройте Cognos Viewer.
Оставьте Report Studio открытым для следующего демо.
Результаты:
Вы создали отчет, который сравнивает доход продуктовой линейки для всех регионов продаж, чтобы быстро определить доход более $20 млн и менее $5 млн в целях выявления приносящих высокий и низкий доход товаров.

Условное скрытие/показ объектов в отчетах
Используя условное скрытие/показ вы можете определить будут ли включены в доклад элементы отчета при запуске или нет.
Если объекты не отображаются, они не занимают много места в отчете при запуске.
Условное скрытие/показ полезно, когда ваш отчет содержит конфиденциальные данные или данные, которые могут быть актуальны для некоторых пользователей, но не для других.
Если условное скрытие/показ применено к столбцу в списке, то оно применяется ко всем элементам колонки, включая заголовок.
Чтобы установить условное скрытие/показ, нужно использовать логическое выражение, чтобы определить, будет ли объект представлен в отчете.
Демо 3: Создание отчета с условно отображаемой колонкой (необязательно)
Цель:
Некоторые пользователи требуют отчет, включающий описание каждого продукта, в то время как другие пользователи, знакомые с продуктами, не хотят, чтобы эти описания были в отчете. Вы создадите отчет, который может быть запущен как с колонкой, отображающей описания продукта, так и без нее.
Сервер:	localhost Пользователь/Пароль	brettonf/Education1!
Студия:	Report Studio
Пакет:	GO Data Warehouse (query)
Тип отчета:		ListПапка:	Sales and Marketing (query)
Пространство имен:	Sales (query)
Задание 1 Создайте отчет List и добавьте информацию
1.	Создайте новый отчет List.
2.	В панели Insertable Objects, добавьте следующие пункты запроса в список:
Time dimension → Date, Sales order → Order number, Product → Product name и Product description, Sales fact → Quantity, Unit sale price и Revenue.
3.	Щелкните по колонке Date, затем щелкните кнопку Section.
4.	Щелкните по колонке Order number, затем щелкните кнопку Group/Ungroup.
5.	Щелкните по колонке Revenue, а затем на панели инструментов выберите Aggregate, а затем нажмите Total.
6.	Пока колонка Revenue выделена, отформатируйте её в $ (USD).
7.	В заголовке страницы, дважды щелкните текст заголовка отчета, введите Order Details и нажмите кнопку OK.
Задание 2 Создать Value Prompt на титульной странице
Вы добавите параметр, который будет использоваться для выбора режима запуска отчета со столбцом или без столбца, отображающего описания продукта.
1.	В Explorer bar выберите Page Explorer, а затем щелкните Prompt Pages.
2.	Из панели Insertable Objects перетащите объект Page на панель Prompt Pages.
3.	На панели Prompt Pages дважды щелкните Prompt Page1.
4.	Из панели Insertable Objects перетащите объект Text Item на prompt page.
5.	В диалоговом окне Text, введите «Include product descriptions?», а затем нажмите кнопку ОК.
6.	На панели инструментов нажмите кнопку Insert Table, а затем выберите 2x1 таблицу.
7.	Из панели Insertable Objects перетащите Value Prompt в нижнюю ячейку таблицы, выберите Create a new parameter, введите p_ShowDescrip, затем нажмите кнопку Finish.
8.	На Prompt Page перетащите текст «Include product descriptions?» в верхнюю ячейку таблицы.
Задание 3 Добавте логическую переменную
1.	В рабочей области щелкните Value Prompt, а затем в панели Properties в разделе Data дважды щелкните Static Choices.
2.	В списке Variable щелкните New boolean variable и в диалоговом окне введите ShowDescrip, затем нажмите кнопку ОК.
3.	В диалоговом окне Report Expression щелкните вкладку Parameters, перетащите p_ShowDescrip на панель Expression Definition, допишите в конец выражения =‘Yes’ и щелкните кнопку validate.
4.	Щелкните OK, затем в диалоговом окне Static Choices щелкните Add.
5.	В диалоговом окне Edit в поля Use и Display введите Yes, и щелкните OK.
6.	Щелкните Add, в поля Use и Display введите No, и щелкните OK.
7.	Щелкните OK в диалоговом окне Static Choices.
Задание 4 Примените условное отображение/скрытие столбца описания, а затем запустите отчет
1.	В Explorer bar выберите Page Explorer, а затем щелкните Page1.
2.	В отчете List выделите колонку Product description, на панели Properties щелкните Select Ancestor, затем щелкните List Column.
3.	На панели Properties в разделе Conditional дважды щелкните ячейку Render Variable, затем в списке Variable щелкните ShowDescrip.
4.	Щелкните OK и запустите отчет.
5.	В списке Include product descriptions? выберите Yes, а затем щелкните Finish.
Результаты выглядят следующим образом:

Отчет содержит столбец, отображающий описание каждого товара.
6.	Закройте Cognos Viewer, и запустите отчет еще раз.
7.	В списке Include product descriptions? выберите No, а затем щелкните Finish.
Результаты выглядят следующим образом:

8.	Закройте Cognos Viewer.
Оставьте Report Studio открытой для workshop.
Результаты:
Вы создали отчет, который может работать с отображением или без отображения колонки описания продуктов на основе предпочтений пользователя.
Резюме
В конце этой главы вы должны уметь:
•	создавать многоязычные отчеты;
•	выделять важные данные;
•	отображать и скрывать данные;
•	отображать объекты отчета по условию.

Семинар 1: Выделение данных для каждого года
Вас попросили создать отчет, который показывает объемы продаж розничного типа в каждом регионе. Для того чтобы годовые данные было легче различать, вы будете форматировать отчет так, что каждый год будет иметь свой цвет фона.
Чтобы достичь этого, вы будете:
•	Создавать перекрестный отчет, показывающий объемы продаж розничного типа в каждом регионе для 2004, 2005, 2006 и 2007 годов;
•	Создавать строковую переменную для текущего года со значениями для каждого года;
•	Назначать условный стиль ячейкам меры перекрестного отчета, используя стоковую переменную;
•	Устанавливать желтый фоновый цвет для 2004 года, зеленый фоновый цвет для 2005 года, синий фоновый цвет для 2006 года, красный фоновый цвет для 2007 года;
•	Запускать отчет.
Для получения более подробной информации, указанной в качестве задачи, см. таблицу задач.
Окончательный результат, см. в разделе результатов семинара в таблице задач.

Семинар 1: Таблица задач
Задача	Где работать	Советы	
1.	Создайте перекрестный отчет	GO Data
Warehouse (query)
Insertable Objects
Панель	•	Колонки: Region.
•	Вложенные колонки: Current year.
•	Строки: Retailer type.
•	Ячейки: Quantity.	
2.	Создайте строковую переменную	Condition Explorer	•	Имя переменной: CurrentYear.
•	Тип: String.
•	Выражение:
•	if ([Current year]=2004) then ('2004') else if ([Current year]=2005) then ('2005') else if ([Current year]=2006) then ('2006')
•	Значения: 2004, 2005 и 2006.	
3.	Определить ячейки, как условные и установить отображение для каждого значения.	Properties панель
Condition Explorer
Панель инструментов	•	Ячейки Quantity, Conditional Style = Current Year.
•	Фоновый цвет, Web Safe
•	Colors.
•	2004: желтый #FFFF99.
•	2005: зеленый #33FF99.
•	2006: синий #66FFFF.
•	2007: красный #FF6666
•	Запустите отчет.	
Если вам нужна дополнительная информация для выполнения задачи, см. инструкцию «Шаг за шагом» в конце семинара.
Семинар 1: Результаты семинара
Результаты выглядят следующим образом:

Семинар 1: Инструкция «Шаг за шагом»
Задание 1 Создайте перекрестный отчет
1.	Создайте новый перекрестный отчет используя GO Data Warehouse (query).
2.	Перетащите Retailer site → Region в область Columns.
3.	Перетащите Time dimension → Current year в область Columns как вложенную колонку для Region.
4.	Перетащите Retailer → Retailer type в область Rows, а затем перетащите Sales fact → Quantity в область Measures.
Задание 2 Создайте строковую переменную
1.	В Explorer bar выберите Condition Explorer, щелкните Variables, а затем щелкните дважды String Variable.
2.	В панели Expression Definition напишите следующее условие: 
if ([Current year]=2004) then ('2004') else if ([Current year]=2005) then ('2005') else if ([Current year]=2006) then ('2006') else if ([Current year]=2007) then ('2007')
3.	Щелкните Validate, а затем щелкните OK.
4.	В панели Properties в поле Name введите CurrentYear и нажмите Enter.
5.	В поле Values, щелкните Add, чтобы добавить значение, введите 2004, затем щелкните ОК.
6.	Повторите шаг 5, чтобы добавить значения 2005, 2006 и 2007.
7.	На панели инструментов щелкните Back.
Задание 3 Определите ячейки, как условные и установите отображение для каждого значения
1.	Щелкните ячейку Quantity и на панели Properties дважды щелкните Style Variable.
2.	В списке Variable щелкните CurrentYear и затем щелкните OK.
3.	В Explorer bar выберите Condition Explorer и затем щелкните 2004.
4.	Пока ячейки Quantity выделены щелкните кнопку Background Color.
5.	Выберите вкладку Web Safe Colors, затем в нижней строке, в третьем столбце справа выберите цвет #FFFF99.
6.	Повторите шаги с 3 по 5 для 2005, 2006 и 2007 чтобы сменить фоновые цвета в соответствии с таблицей:
Год	Цвет	Код цвета	Позиция	
2005	Light green	#33FF99	4-я строка, 3-й столбец справа	
2006	Light blue	#66FFFF	6-я строка, последний столбец	
2007	Light red	#FF6666	2-я строка снизу, 4-й столбец справа	
7.	Дважды щелкните Explorer bar, чтобы выключить условное форматирование.
8.	Запустите отчет.
9.	Закройте Cognos Viewer, закройте Report Studio без сохранения изменений, затем закройте Internet Explorer.