2010-03-29 10 views
11

JasperReports를 처음 사용했습니다. iReport를 사용하여 보고서를 디자인하고 있습니다. 내 요구 사항은 두 개의 값 (필드) x, y를 비교할 수 있습니다. x < y이면 y의 데이터 색을 '검정색'&으로 변경하고 y의 데이터 색을 '빨강'으로 변경해야합니다.조건에 따라 필드 데이터 색상을 지정하십시오.

&의 유효성을 확인하는 방법에 대해 알려주십시오.

답변

7

이 주제에 JasperForge 포럼에서 discussion을있다, 이것은 아마도 가장 관련있는 부분입니다 :

먼저 끌어 두 번 dyanamic 색상을 할 필드를 놓습니다. 첫 번째 필드의 배경색을 노란색으로 변경하고 두 번째 필드를 빨간색으로 변경하십시오. 노란색 필드를 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭 한 다음 일반 탭을 선택하고 '인쇄 할 때 식'상자에 다음 코드를 씁니다. (myconditionalfield를 실제 필드 이름으로 바꾸십시오.) $ F {MyConditinalField} .intValue()> = 5 & & $ F {MyConditinalField} .intValue() <? Boolean.TRUE : Boolean.FALSE // if> = 5이면 < 10 노란색 필드를 표시합니다. // 빨간색 필드의 코드는 $ F {MyConditinalField } .intValue()> = 10? Boolean.TRUE : Boolean.FALSE 희망이 도움이됩니다.

그것은 당신이 필요 정확히 아니지만, 가능성이 올바른 방향으로 밀어 충분히 가까이있을 수 있습니다.

+1

감사 토미 슬라브, 귀하의 설명은 나에게 많은 도움이 내 요구 사항을 달성하기 위해. 감사합니다. 찬두 – Chandu

8

나는 이것이 오래된 질문이지만 Jasper Reports가 변경되었다고 가정하고 있습니다. 이제 조건부 스타일을 사용하여이를 수행 할 수 있습니다.

iReport에서 새 스타일을 만들고 이름을 지정합니다. 글꼴, 색상, 텍스트 크기 등과 같은 기본 설정을 스타일에 넣을 수 있습니다. 그런 다음 Stlye를 마우스 오른쪽 버튼으로 클릭하고 조건부 스타일 추가를 선택합니다. 그런 다음 적용하려는 필드에서 필드를 만들었습니다.

그래서 귀하의 예제에서 나는 검은 색 메인 stlye에 데 ForeColor를 설정합니다,

$F{y} > $F{x} 

을 할 조건부 스타일의 조건식을 설정하고 빨간색으로 조건 Stlye의 데 ForeColor. 그런 다음 y 필드를 배치 한 세부 구역에서 우리가 만든 스타일을 스타일로 설정하십시오.

5

예도 행 색상에 홀수 행 아래

<style name="BackgroundStyle" mode="Opaque" backcolor="#FFFFFF"> 

    <conditionalStyle> 
     <conditionExpression><![CDATA[Boolean.valueOf($V{REPORT_COUNT}.intValue() % 2 == 0)]]></conditionExpression> 
     <style backcolor="#CCFFCC"/> 
    </conditionalStyle> 
</style> 

도움이 희망 그리고 각 열 스타일을 지정, 나 :)와 함께 일

관련 문제