Применение стилей к компонентам отчета осуществляется:

strel11 Ручным способом. Для этого необходимо выделить компонент отчета, выбрать стиль из меню быстрого выбора стиля на вкладке Главная (Home) или выбрать необходимый стиль в свойстве Стиль (Style) компонента или элемента.

strel11 Применить коллекцию к отчету. В этом случае, стили из коллекции будут применяться автоматически, согласно заданным условиям. Если у стилей в коллекции не определены условия применения, то все стили из этой коллекции будут применяться ко всем компонентам последовательно. В результате, у компонентов будет назначен последний стиль из коллекции.

 

Информация

 

Для корректного автоматического применения коллекции стилей к компонентам отчета, необходимо определить условия применения для каждого стиля в этой коллекции.

 

 

 

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

 
Настройки применения стиля из коллекции задаются в редакторе Условия (Conditions). Для того чтобы вызвать этот редактор, следует:
strel11 В дизайнере стилей выделить стиль.
strel11 Нажать кнопку Обзор у свойства Условия на панели свойств дизайнера стилей.

 

Информация

 

При создании коллекции стилей в автоматическом режиме при помощи команды Создать коллекцию стилей (Create Style Collection), условия в стили будут добавлены при создании этой коллекции. В этом случае, условия применения стилей зависят от настроек при создании этой коллекции.

 

 

 

Редактор условий

Добавление и настройка условий применения стиля из коллекции осуществляется в редакторе Условия (Conditions). Для добавления блока условий, следует нажать кнопку Добавить условие (Add Condition). Блок условий содержит различные логические условия. Эти условия могут быть установлены все вместе или по отдельности. Также могут быть различные комбинации условий. Для того чтобы включить логическое условие, следует установить флажок возле ее наименования. Для того чтобы логическое условие игнорировать, флажок необходимо снять.

 

Кроме этого, может быть добавлено более одного блока условий. Блоки условий обрабатываются последовательно, в направлении сверху вниз. Первым блоком, который обрабатывается, является тот, который расположен выше остальных. Для того чтобы переместить блок условий, т.е. изменить последовательность его обработки, следует:
strel11 Выделить блок условий в редакторе;
strel11 При помощи элементов перемещения, переместить блок условий вверх или вниз списка.
 
Для того чтобы удалить блок условий необходимо:

strel11 Выделить блок условий в редакторе;
strel11 Нажать кнопку Удалить условие (Remove Condition).
 

 

img_1 Условие вида Размещение (Placement) предоставляет возможность применить к компоненту стиль в зависимости от его размещения. В списке значений выбираются контейнеры (бэнды, панель, таблица, страница).

strel11 Если выбрана операция равно (equal to), то стиль будет применен к компонентам размещенным на выбранных контейнерах.
strel11 Если выбрана операция не равно (not equal to), то стиль будет применен к компонентам размещенным на любых контейнерах, кроме выбранных в поле значений.

 

img_2 Условие вида Уровень вложенности (Nested Level). C помощью этого вида условия к компонентам можно применить стиль в зависимости от уровня вложенности контейнеров, на котором расположен компонент. В поле значения указывается уровень вложенности контейнера (максимально 100). У данного вида условия присутствуют следующие операции:

strel равно, при данной операции, стиль будет применяется, когда уровень вложенности контейнеров будет равен указанному уровню в поле значений.

strel не равно - стиль будет применяться ко всем компонентам в контейнерах, уровень вложенности которых не будет равен указанному уровню в поле значений.

strel больше чем (greater than) выбирается, если необходимо чтобы стиль применялся к компонентам в контейнерах, уровень вложенности которых больше, чем уровень указанный в поле значений.

strel больше чем или равно (greater than or equal to), выбирается если необходимо, чтобы стиль применялся к компонентам в контейнерах, уровень вложенности которых равен или больше указанного уровня в поле значений.

strel меньше чем (less than), при выборе данной операции, стиль будет применяться к компонентам в контейнерах, уровень вложенности которых будет меньше указанного уровня в поле значений.

strel меньше чем или равно (less than or equal to) выбирается, если необходимо, чтобы стиль применялся к компонентам в контейнерах, уровень вложенности которых будет равен или меньше указанного уровня в поле значений.

 

img_3 Условие вида Тип компонента (Component Type) предоставляет возможность применять стиль только для компонентов определенного типа. В поле значений данного условия, можно одновременно выбрать несколько типов компонентов. В данном условии доступны следующие операции:

strel11 равно, если необходимо чтобы стиль применялся к компонентам указанным в поле значений.
strel11 не равно, при выборе которой, стиль будет применен ко всем компонентам, кроме выбранных в поле значений.

 

img_4 Условие вида Расположение (Location) предоставляет возможность применить стиль к компоненту, в зависимости от его расположения на контейнере. В поле значений выбирается желаемое расположение компонента. В данном условии доступны операции:

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

 

img_5 Условие вида Наименование компонента (Component Name) предоставляет возможность применять стиль к компоненту с определенным наименованием или его частью. В поле значение следует указать имя или часть имени компонента. При использовании условия данного вида доступны следующие виды операций:

strel равно, при данной операции стиль будет применен к компоненту с наименованием идентичным тому, которое указано в поле значений;

strel не равно - стиль будет применен ко всем компонентам, кроме того, у которого наименование совпадает с указанным в поле значений;

strel содержит. Если выбрана данная операция, то стиль будет применяться ко всем компонентам, которые в своем наименовании содержат имя или часть имени указанное в поле значений.

strel не содержит. Если выбрана данная операция, то стиль будет применяться ко всем компонентам, которые в своем наименовании не содержат имя или часть имени указанное в поле значений.

strel начинается с (beginning with). При выборе данной операции, стиль будет применяться ко всем компонентам, у которых наименование начинается с имени указанного в поле значений.

strel заканчивается на (ending with). При выборе данной операции, стиль будет применяться ко всем компонентам, у которых наименование заканчивается на имя указанное в поле значений.

 

 

Уровни вложенности

Уровни вложенности иногда используются в условиях стилей. Например, если необходимо чтобы стиль применялся только к компонентам третьего уровня вложенности или ко всем компонентам, кроме компонентов второго уровня вложенности. Также, при автоматической генерации коллекций стилей, важно понимать, что такое уровень вложенности.

 

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

 

Информация

 

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

 

Также стоит отметить, что компонентов одного уровня вложенности может быть несколько, т.е. одному бэнду Данные может подчиняться несколько бэндов. Следует понимать, что невозможно создать уровень вложенности между бэндом Данные и бэндом Заголовок отчета (ReportTitleBand), потому что они относятся к разным типам бэндов.

 

 

 

На рисунке снизу схематично показаны уровни вложенности на примере бэндов Данные:

 

 

 

Уровни вложенности бэнда Данные и бэндов к нему относящихся

Как уже ранее говорилось, при добавлении компонента в шаблон отчета ему присваивается первый уровень вложенности. Изменить уровень вложенности можно при помощи свойства Мастер компонент (Master Component). Для этого, следует в поле данного свойства выбрать бэнд Данные, которому он будет подчиняться.

 

Уровень вложенности подчиняемого бэнда будет следующим за уровнем подчиняющего, т.е. если будет выбран бэнд Данные третьего уровня вложенности, то подчиняемому бэнду будет присвоен четвертый уровень вложенности. Также следует помнить, что одному бэнду могут подчиняться несколько бэндов. В таком случае, у подчиняемых бэндов будет одинаковый уровень вложенности. На рисунке снизу представлен пример схемы организации отчета с трехуровневой вложенностью:

 

 

 

Информация

 

Стоит отметить, что создавая коллекцию стилей, в окне Создать коллекцию стилей (Create Style Collection), максимум можно указать десятый уровень вложенности, но используя Условия (Condition) его можно повысить до 100-го.

 

 

 

Бэнды Заголовок данных (HeaderBand), Итог данных (FooterBand), Заголовок группы(GroupHeaderBand) и Итог группы (GroupFooterBand) относятся непосредственно к бэнду Данные и поэтому уровень их вложенности зависит от уровня вложенности бэнда Данные к которому они относятся. Важно понимать, что уровень вложенности бэнда Данные и бэндов к нему относящихся, не зависит от их расположения в отчете.

 

 

Уровень вложенности остальных бэндов

Для бэндов Заголовок отчета (Report Title Band) и Итог отчета (Report Summary Band) можно создать коллекцию стилей только первого и второго уровня вложенности, т.е. для данных бэндов невозможно создать коллекцию стилей третьего и последующих уровней вложенности. В отличие от бэнда Данные, подчинение в данном случае, осуществляется по принципу расположения бэндов на странице отчета.

 

strel11 Для бэнда Заголовок отчета уровень вложенности определяется в следующем порядке: первому (верхнему) бэнду присваивается первый уровень вложенности, а всем последующим (ниже расположенным) - второй уровень вложенности.

strel11 Для бэнда Итог отчет порядок будет несколько иным: всем бэндам, кроме последнего (нижнего), присваивается второй уровень вложенности, а последнему (нижнему) - первый уровень.

 

На рисунке снизу схематично показано распределение уровней вложенности для бэндов Заголовок отчета и Итог отчета:

 

 

 

Для бэндов Заголовок страницы (Page Header Band) и Итог страницы (Page Footer Band) можно создать коллекцию стилей только первого уровня вложенности.