자격증/컴활 1급
[개미의 걸음 3과목 데이터베이스 일반] 조회 및 출력① 보고서
IT개미 데이터
2020. 12. 13. 23:23
728x90
보고서
테이블이나 질의 등의 데이터를 요약하거나 그룹화하여 종이에 출력하기 위한 개체
- 보고서는 프린터를 통해 출력하기 위한 양식
- 폼과 동일하게 여러 유형의 컨트롤로 데이터를 표시 가능
→ 데이터 입력, 추가, 삭제 등의 작업은 불가능 - 보고서의 레코드 원본으로 테이블, 쿼리, SQL문 등을 지정 가능
- '디자인보기'상태에서 보고서 설정 및 수정
'인쇄 미리보기'나 '레이아웃 보기' 상태에서 보고서 확인 - 보고서에 자료별 평균, 합계, 개수 등의 통계 자료 표시 가능
보고서의 구성
보고서 머리글 | * 보고서의 첫 페이지 상단에 표시됨[단 1번] * 로고, 보고서 제목, 날짜 등을 주로 삽입 |
페이지 머리글 | * 보고서 모든 페이지의 상단에 표시[단, 첫 페이지에는 머리글 다음에 표시됨] * 열 제목 등을 주로 삽입 |
그룹 머리글 | * 그룹 지정시, 그룹 상단에 표시됨 * 그룹의 이름, 요약정보 등을 주로 삽입 * 그룹, 정렬 및 요약'창에서 설정 |
본문 | * 실제 데이터가 반복적으로 표시되는 부분 |
그룹 바닥글 | * 그룹 지정시, 그룹 하단에 표시됨 * 그룹별 요약 벙보 등을 주로 삽입 * 그룹, 정렬 및 요약'창에서 설정 |
페이지 바닥글 | * 보고서 모든 페이지의 하단에 표시 * 날짜, 페이지번호 등을 주로 삽입 |
보고서 바닥글 | * 보고서의 마지막 페이지에 표시됨 * 디자인 보기 상태에서는 가장 마지막 구역에 표시 * 인쇄 미리보기 상태에서는 마지막 페이지의 페이지 바닥글 위쪽에 한 번만 표시 |
보고서 보기
보고서 보기 | * 출력될 보고서를 미리 보는 기능[화면 출력용] * 인쇄 미리보기와 유사하지만 페이지 구분 없이 보고서를 모두 표시 |
인쇄 미리 보기 | * 출력될 보고서를 미리 보는 기능[종이 출력용] * 종이에 출력되는 모양 전체를 미리 보기 가능 |
레이아웃 보기 | * '보고서 보기'와 '디자인 보기'를 혼합한 형태 * 보고서의 레이아웃을 보여주는 '보고서 보기'기능 + 컨트롤 크기 및 위치, 그룹 수준 및 합계를 변경하거나 추가 가능한 '디자인 보기' 기능 |
디자인 보기 | * 컨트롤 도구를 이용해 보고서 생성 및 수정 * 실제 데이터는 표시되지 않음[실제 표시될 데이터 확인을 위해 인쇄미리보기 기능 사용] |
보고서의 주요 속성
레코드 원본 | * 사용할 데이터의 원본을 설정 * 테이블, 쿼리, SQL문 등을 레코드 원본으로 지정 |
필터 | 추출 조건으로 사용할 필터 설정 |
필터 사용 | 지정된 필터의 사용 여부 설정 |
정렬 기준 | 정렬 기준 설정 |
반복 실행 구역 | 해당 머리글을 매 페이지마다 표시할지의 여부를 지정[그룹 머리글의 속성] |
기본 보기 | 보고서의 보기 형식을 지정[보고서 보기 / 인쇄 미리보기] |
보고서의 그룹화
- 특정한 필드의 값을 기준으로 데이터를 구분하여 표시하는 기능
→ 보고서의 내용을 한눈에 파악 가능 - 특정 필드를 기준으로 그룹화하는 경우, 데이터는 그 필드를 기준으로 정렬되어 표시됨
- 그룹을 만들려면 머리글 구역이나 바닥글 구역 중 하나 이상을 만들어야 함
→ 그룹 삭제시 그룹 머리글이나 바닥글 구역에 삽입된 컨트롤들도 모두 삭제됨 - 그룹으로 설정한 필드에 그룹 간격, 요약, 인쇄 형식등을 설정 가능
- 필드나 식을 기준으로 10개까지 그룹화 가능
날짜 데이터 그룹화 | 연도별, 분기별, 월별, 주별, 일별 그룹화 가능 |
문자열 데이터 그룹화 | 첫 문자, 처음 두 문자, 사용자 지정 문자 등을 기준으로 그룹화 가능 |
숫자 데이터 그룹화 | 지정한 간격으로 그룹화 함수 사용 가능 |
예제 문제
1. 컨트롤에 값 표시
① 입구 ID 머리글 영역의 컨트롤에 '입구ID'와 '지역명'을 함께 표시[입구ID-지역명 형식]
- 해당 컨트롤 클릭 후 컨트롤 원본에서 오른쪽 마우스 클릭
- 확대/축소 창으로 들어가서 조건 입력
→ = [입구ID] & "-" & [지역명]
④ 컨트롤에 합계 표시
- 컨트롤 원본의 확대/축소에서 조건입력
→ =SUM([납입액])
※ 형식이 있는 합계[FORMAT, SUM함수 이용]
- 표시 예 : "소계는 7,777원입니다."
- 해당 컨트롤를 더블클릭해 속성시트
- 컨트롤 원본의 확대/축소에서 조건입력
→ =FORMAT(SUM([납입액]),"소계는 #,###원입니다.")
※ 보고서 제목 입력[보고서의 첫페이지에 한 번만 표시되도록 설정]
- 제목이 첫 페이지에 한 번만 표시되야 하므로 보고서 머리글에 제목 작성!!!!
→ 매 페이지마다 표시할려면 페이지 머리글에 제목 작성 - 페이지 머리글 마우스 오른쪽 클릭
- 보고서 머리글/바닥글 클릭
- [디자인 → 컨트롤]에서 레이블을 선택하여 보고서 머리글에 삽입
- 서식은 해당 레이블의 속성시트에서 변경
- 보고서 머리글을 더블클릭하면 속성시트에서 배경색 설정 가능
※ 그룹화된 필드 머리글/바닥글
- 보고서의 빈 영역 마우스 오른쪽 클릭
- 정렬 및 그룹화 선택
- 해당 그룹화 필드에서 자세히▶를 클릭
→ 머리글 구역 표시, 바닥글 구역 표시 설정 가능
※ 그룹 머리글/바닥글 속성 시트[해당 영역 더블 클릭 혹은 F4]
- 해당 그룹 머리글/바닥글 영역에 "대체 배경색 없음"옵션을 설정하시오.
→ 다른 배경색 : 색 없음 - 해당 그룹 머리글/바닥글 영역에 "같은 페이지에 인쇄" 옵션을 설정하시오.
→ 같은 페이지에 : 예
→ 해당 영역이 잘려서 출력되게 될 경우, 해당 영역을 전부 뒷 페이지에 함께 출력 - 해당 그룹 머리글/바닥글 영역을 매 페이지마다 반복적으로 표시/인쇄되도록 설정하시오.
→ 반복 실행 구역 : 예 - 해당 그룹 머리글/바닥글 영역으로 바뀌면 페이지가 바뀌도록 설정하시오.
→ 페이지 바꿈 : 구역전, 구역후, 구역전/후 중 설정 가능
※ 오늘날짜 표시[FORMAT, NOW함수 이용]
- 표시 예 : 2017년 7월 07일 07시
- 해당 컨트롤 클릭 후 컨트롤 원본에서 오른쪽 마우스 클릭
- 확대/축소 창으로 들어가서 조건 입력
→ = FORMAT(NOW(), "yyyy년 m월 dd일 hh시")
년 표시 형식 | 예 | 월 표시 형식 | 예 | 일 표시형식 | 예 |
yy | 20 | m | 7 | d | 7 |
yyyy | 2020 | mm | 07 | dd | 07 |
mmm | JUL | ddd | MON 영어로 해당 일의 요일 표시 |
||
mmmm | JULY | dddd | MONDAY 영어로 해당 일의 요일 표시 |
||
aaa | 월 한글로 해당 일의 요일 표시 |
||||
aaaa | 월요일 한글로 해당 일의 요일 표시 |
- AM/PM : AM/PM으로 표시
AMPM : 오전/오후로 표시 - hh : 시
nn : 분
ss : 초
※ 그룹별 거래 건수에 "건"자를 붙여 표시[FORMAT, COUNT함수 이용]
- 표시 예 : 3건[단, 0건일 경우 표시안함]
- 해당 컨트롤 클릭 후 컨트롤 원본에서 오른쪽 마우스 클릭
- 확대/축소 창으로 들어가서 조건 입력
→ = FORMAT(COUNT(*), "#건")
2. 일련번호 표시
- 그룹별로 일련번호가 표시되도록 조건 변경
→ 누적합계를 "그룹"으로 설정하여 그룹별로 합계 계산
→ 컨트롤 원본을 "=1"로 설정하여 1씩 누적될 수 있도록 만들어줌
누적합계 속성 | 설명 |
아니요 | 현재 레코드의 원본으로 사용하는 필드의 데이터를 텍스트 상자에 표시[기본값] |
그룹 | 그룹별로 누적 합계를 계산하여 표시 |
모두 | 그룹에 관계없이 보고서의 끝까지 값을 누적하여 표시 |
3. 이전 레코드와 동일한 값 숨기기
- 형식에서 중복 내용 숨기기를 "예"로 설정
4. 페이지 번호 삽입
- 'txt페이지'컨트롤의 컨트롤 원본 작성기 클릭
- 조건에 맞는 식 입력
→ = [Page] & " / " & [Pages]
→ =은 생략해도 무방
→ [page]는 현재 페이지 번호
[pages]는 전체 페이지 번호
※ 형식이 있는 페이지 번호[FORMAT함수 이용]
- 표시 예 : 007페이지[단, 숫자값이 없는 경우 0으로 표시]
- 해당 컨트롤 클릭 후 컨트롤 원본에서 오른쪽 마우스 클릭
- 확대/축소 창으로 들어가서 조건 입력
→ = FORMAT([Page], "000페이지")
※ 정렬
- 보고서의 빈 영역 마우스 오른쪽 클릭
- 정렬 및 그룹화 선택
- 문제에 주어진 조건대로 정렬
소수자리수는 속성시트의 형식에서 지정 가능 - 자세히▶를 클릭하면 머리글 구역 표시, 바닥글 구역 표시, 같은 페이지에 표시 등 설정 가능
※ 선 삽입
- [디자인 → 컨트롤]에서 선 선택
- shift키를 누른채로 문제에서 주어진 위치에 선을 그림
- 선을 더블클릭하여 속성시트에서 조건 설정
※ 인쇄용지, 방향, 여백 설정
- [페이지 설정]에서 설정 가능
- [페이지 크기]의 크기에서 용지 사이즈 설정 가능
- [페이지 레이아웃]에서 가로*세로 설정 가능
- [페이지 레이아웃]의 페이지 설정에서 여백 설정 가능
728x90