개발

#TIBCO Jaspersoft report Table사용방법 / 리스트변수 반복출력방법

만준이 2023. 7. 21. 20:35

1

1. 우측상단 palette에서 Table을 클릭하고 원하는곳을 클릭하면 위와같은 테이블생성창이 보입니다.
dataset을 먼저 만들어줄수도 있지만 일단 없다치고 create a table using a new dataset을 선택하고
Next를 눌러줍시다.

 

 

2

2. Dataset의 이름을 입력해줍니다. 여기서 이름은 레포트로 보낼 vo(object) 또는 map에 담아서 넘길 list의 변수명입니다.
예를들어

public class ExampleVo {
    List<SampleVo> minList = new List<SampleVo>();
}

위코드에서 minList가 Dataset의 이름이라고 보시면 됩니다.

 

3

3. 이부분은 정확하게 어떤역할을 하는건지 모르겠지만 어떤 라이브러리나 커넥션을 사용하겠다 라고 설정하는 부분인것 같습니다.
Use a JRDatasource expression을 선택하고 Finish를 클릭합니다.
여기서 텍스트박스의 내용은 수정될겁니다. 저대로 하면 안되더라구요..

 

4

4. 생성하면 위와같은 그림이 만들어집니다.
저 그림(테이블)을 더블클릭하면 테이블만을 위한 수정공간(?)으로 들어가게 됩니다.
(참고로 상단에 Main Report를 클릭하면 원래화면으로 돌아갈 수 있습니다.)

 

5

5. 우측하단의 Properties창에서 3단계에서 수정하겠다던 datasource expression을 아래와같이 수정해줍니다
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{minList})
당연히 캐치하시겠지만 minList부분은 본인의 소스에 맞게 수정해주세요.

 

6

6. 그리고 Outline창에서 Table항목을 열어보면 그림의 총 5칸이 위에서부터
TableHeader, ColumnHeader, Detail, ColumnFooter, TableFooter라는것을 알 수 있습니다.
상황에 따라 사용해주시면 되고 저는 일반적인 간단한 테이블이 필요했기에 
ColumnHeader와 Detail만 외의 항목은 삭제처리 하였습니다.
Outline창에서 테이블의 스타일, 컬럼의 갯수 등 많은것을 설정 할 수 있습니다.

 

7

7. 제가 한참 헤멨던 부분입니다. Header칸에 텍스트를 어떻게 입력하는지입니다.
우측상단 Palette의 Static Text(Label)를 클릭하고 원하는 Header를 클릭하면 됩니다.
저만 헤멨을수도 있지만 혹시몰라서요ㅎㅎ

 

8

8. 마지막으로 중요한 부분인 변수를 세팅하는 부분입니다. Outline에서 필드에 해당 변수명을(vo의 변수명) 생성해주고
Detail칸에 드래그 앤 드랍 해줍니다.

 

** 추가로 테이블에서 사용하는 리스트명을 메인레포트에서 field로 추가해주어야합니다.

 


마지막으로 빌드 후 테스트 해보시면 되겠습니다.

반응형