상세 컨텐츠

본문 제목

[개미의 걸음 3과목 데이터베이스 일반] 조회 및 출력① 보고서

자격증/컴활 1급

by 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

관련글 더보기

댓글 영역