Skip to main content

크리스탈 레포트 사용방법

MacOS에서 크리스탈 레포트 사용 및 윈도우 서버 접근 방법

1. 크리스탈 레포트 개요

크리스탈 레포트(Crystal Reports)는 데이터를 자동으로 가져와 PDF, Excel, Word 등의 보고서를 생성 및 배포하는 역할을 합니다 일반적으로 기업용 ERP, 회계 시스템, CRM 등과 연동하여 사용되며, 이러한 이유로 윈도우 서버 환경에서 운영됩니다

2. MacOS에서 윈도우 서버 접근 방법

MacOS에서 윈도우 서버에서 실행 중인 크리스탈 레포트에 접근하려면 원격 데스크톱 연결을 사용해야 합니다

2.1 Microsoft 원격 데스크톱 앱 설치

MacOS에서는 RDP(Remote Desktop Protocol) 파일을 실행하여 원격 서버에 접속할 수 있으며, 이를 위해 Microsoft의 원격 데스크톱 앱이 필요합니다

 2.2 원격 데스크톱 연결 방법

  1. Microsoft Remote Desktop 앱을 실행합니다.

  2. 'Import from RDP File' 또는 **'새 연결 추가'**를 선택합니다.

  3. 제공받은 RDP 파일을 불러오거나 수동으로 서버 정보를 입력합니다.

  4. Username(사용자명)과 Password(비밀번호)를 입력하여 로그인합니다.

  5. 원격 데스크톱을 통해 윈도우 서버에 접속하면 크리스탈 레포트를 사용할 수 있습니다.

스크린샷 2025-02-14 오전 11.19.35.png


3. 크리스탈 레포트 실행

다음은 윈도우 서버 접속 후 .rpt 파일을 열어 크리스탈 리포트에서 보고서를 편집할 때, 자주 사용하는 기능들 입니다

스크린샷(19).png

🔹 1. 텍스트 상자 (Text Box)

📌 역할:

  • 고정된 텍스트(라벨)를 추가할 때 사용합니다
  • 예: "사업자등록번호", "전화번호", "고객명" 같은 문구

🔹 2. 라인(Line) 생성 도구

📌 역할:

  • 보고서에서 표(테이블)와 같은 구조를 만들 때 가로, 세로 선(Line)을 추가하는 기능입니다
  • 예: 표의 구분선을 추가하여 가독성을 높일 때 사용합니다

🔹 3. DB 필드 (Database Fields) - 동적 데이터 바인딩

📌 역할:

  • DB에서 가져온 데이터를 자동으로 보고서에 반영하는 역할입니다
  • 예: {c1}"사업자등록번호", {c2}"전화번호" 등의 값을 동적으로 불러옴

4. 크리스탈 리포트에서 동적 데이터 로우 추가 및 합계 자동 정렬 방법

📌 목표: ex) 연말정산에서 데이터 한줄 한줄 추가 될때 합계가 맨 아래에 위치하는 방법

  • DB에서 불러온 데이터(Details)가 동적으로 추가될 때, 맨 아래의 "합계"가 자동으로 내려가도록 설정
  • Header, Details, Footer에서 같은 변수 이름을 사용할 때, position 값을 이용해 구분
  • Section ExpertSuppress 기능을 활용하여 필요한 섹션만 표시되도록 설정

📌 원리:

  • Details(바디)에서 데이터가 많아질수록 Report Footer(합계) 섹션이 자동으로 아래로 내려감
  • Report Footer를 사용

스크린샷(20).png

📌 설정 방법:
1️⃣ "Section Expert"에서 Report Footer 설정 조정

  • Report Footer를 우클릭 → "Section Expert" 클릭
  • "Print at Bottom of Page" 체크 해제!
  • "Keep Together" 체크! (이렇게 하면 데이터와 합계가 붙어서 나옴)

2️⃣ Suppress 조건 추가하여 Report Footer가 마지막에만 나오도록 설정

📌 예상 결과:

No 방문일 현금 카드 외상금액 합계
1 2024-11-10 10,000 50,000 0 60,000
2 2024-11-11 5,000 40,000 0 45,000
3 2024-11-12 8,000 35,000 0 43,000
  합계 23,000 125,000 0 148,000

데이터가 많아질수록 합계가 자동으로 맨 아래로 정렬됨

 

5. 크리스탈 리포트에서 Database Fields를 연동하여 데이터 치환하는 방법

📌 목표:
오른쪽 Database Fields에서 불러온 데이터를 원하는 위치에 배치하여 동적으로 치환하기


1. Database Fields에서 필요한 데이터 가져오기

📌 설정 방법:
1️⃣ 오른쪽 Field Explorer 창에서 "Database Fields" 선택
2️⃣ 필요한 데이터 필드를 찾음 (예: {c1}, {c2}, {c3} 등)
3️⃣ 각 필드를 드래그하여 보고서(Report) 디자인의 적절한 위치에 배치


2. 데이터 필드를 Header, Details, Footer에 적절히 배치하기

📌 배치 방법:
Header(헤더) 섹션:

  • {position} = "head-foot" 데이터를 사용하여 회사명, 고객정보 등 배치
    Details(바디) 섹션:
  • {position} = "body" 데이터를 사용하여 반복되는 상세 데이터 배치
    Footer(합계) 섹션:
  • {position} = "head-foot" 데이터를 사용하여 총합 표시

3. 예제: Database Fields 배치하기

📝 Report 디자인에서 데이터 배치 예시

위치Database Fields (예제)설명
Header{c1} (사업자번호)보고서 상단에 고정
Header{c2} (전화번호)보고서 상단에 고정
Details{c3} (방문일)데이터가 동적으로 반복됨
Details{c4} (현금)데이터가 동적으로 반복됨
Details{c5} (카드)데이터가 동적으로 반복됨
Details{c6} (합계)데이터가 동적으로 반복됨
Footer{c7} (총합계)마지막 행 아래에 위치

이제 데이터가 동적으로 추가될 때, 각 위치에 맞는 값이 자동으로 채워짐
합계도 마지막 행 아래에 자동으로 정렬됨