두 개의 필드 (ID와 NAME)가있는 간단한 보고서가 있습니다. 런타임시 사용자가 선택한 매개 변수에 따라 ID 또는 NAME별로 세부 정보를 정렬하려고합니다.iReport의 매개 변수에 따라 보고서 정렬
<sortField name="sort" type="Variable"/>
<variable name="sort" class="java.lang.String">
<variableExpression>
<![CDATA[$P{ord}.equals("name") ? $F{entity}.getName() : $F{entity}.getId().toString()]]>
</variableExpression>
</variable>
편집 : 1 :
내가 이런 일을 해봤 내가 매개 변수로 데이터 소스를 전달하고있어, 나는 JasperReports에에서 SQL 쿼리를 실행하지 않습니다. 나는 alasy가 JasperReports로 정렬 된 데이터 소스를 전달할 수 있다고 생각하지만 보고서에서 직접 데이터를 정렬하고 싶습니다.
EDIT 2 : 이전 코드를 검토 한 결과 제대로 작동합니다.
당신은 열을 기준으로 정렬 세트 다음
JasperReports의 쿼리 – nailujed