제12장 데이터베이스 프로그래밍 -...

42
12데이터베이스 프로그래밍

Upload: others

Post on 09-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

제12장 데이터베이스 프로그래밍

Page 2: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

데이터베이스 프로그래밍

매크로 개요

매크로 작성하기

명령 단추에 매크로 연결하기

명령 단추에 매크로 작성하기

매크로 작성을 위한 폼 만들기

조건을 만족하는 데이터 검색 매크로 작성하기

매크로를 Visual Basic으로 변환하기

이벤트 프로시저 만들기

2

Page 3: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

1. 매크로 개요

매크로는 응용 프로그램에서 반복적인 작업을 수행하는 경우에 이를 하나의 명령어로 저장하여 사용자가 같은 작업을 반복적으로 수행할 때 간단하게 처리할 수 있도록 하는 기능이다.

매크로는 작업을 자동화할 때 사용할 수 있는 매크로 함수와 매크로 함수 인수의 설정으로 실행 가능하며 주로 컨트롤의 이벤트에 연결하여 사용한다.

3

Page 4: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 개요

주요 매크로 함수

4

분류 작업 매크로 함수명

폼/보고서의

데이터

필터 ApplyFilter

특정 데이터로 이동 FindNext, FindRecrd, GoToControl, GoToRecord, GoToPage

실행

명령 실행 RunCommand

Microsoft Access 종료 Quit

매크로, 프로시저, 쿼리 실행 RunApp

실행 중지 CancelEvent, Quit, StopAllMacros, StopMacro

가져오기/

내보내기

Access의 개체를 내보내기 OutputTo, SendObject

Access의 형식과 다른 데이터간의 전송 TransferDatabase,

TarnsferSpreadsheet, TransferText

개체 조작

개체 복사, 저장, 이름 바꾸기 CopyObject, Rename, Save

개체 삭제 DeleteObject

창의 이동/크기 조절 등 Maximize, Minimize, MoveSize, Restore

개체 열기/닫기 Close, OpenForm, OpenModule, OpenQuery, OpenReport, OpenTable, OpenDataAccessPage,

OpenDiagram, OpenStoredProcedure, OpenView

개체 인쇄 OpenForm, OpenQuery, OpenReport, OpenStoredProcedure, OpenView, PrintOut

개체 선택 SelectObject

필드, 컨트롤, 속성의 값 설정 SetValue

데이터나 화면 업데이트 RepaintObject, Requery, ShowAllRecords

기타

메뉴 만들기 관련 AddMenu

전역 메뉴모음 설정 SetMenuItem

정보 표시 Echo, Hourglass, Msgbox, SetWarning

키 입력 넘겨주기 SendKeys

도구 모음 보이기/숨기기 ShowToolbar

Page 5: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 개요

폼과 보고서 관련 매크로 함수

5

매크로 함수 설명

ApplyFilter 테이블이나 쿼리로부터 레코드를 필터링한다.

FindNext 특정한 조건에 의해 찾아진 레코드의 바로 다음에 위치하는 조건에 만족하는 레코드를 검색한다.

FindRecord 특정한 조건에 맞는 첫 번째 레코드를 검색한다.

GoToControl 활성화된 폼에서 커서를 특정한 컨트롤로 이동시킨다.

GoToPage 현재 폼에서 커서를 지정한 페이지의 첫 번째 컨트롤로 이동시킨다.

GoToRecord 레코드 포인터를 이동시킨다.

Page 6: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 개요

실행 관련 매크로 함수

6

매크로 함수 설명

RunCommand 액세스 내부에서 제공하는 명령을 실행시킨다.

Quit 액세스를 종료한다.

OpenQuery 질의를 실행한다.

RunCode 프로시저를 실행한다.

RunMacro 매크로를 실행한다.

RunSQL SQL문을 실행한다.

RunApp 메모장, 엑셀 등의 응용 프로그램을 실행한다.

Page 7: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 개요

가져오기/내보내기 관련 매크로 함수

7

매크로 함수 설명

OutputTo 데이터베이스 개체를 엑셀, 텍스트, 서식 있는 문서 파일 형식 등으로 내보내기한다.

SendObject 데이터베이스 개체를 전자 우편 메시지에 첨부하여 전송한다.

TransferDatabase 다른 데이터베이스 파일과의 가져오기, 내보내기, 연결 등을 지원한다.

TransferSpreadsheet 스프레드시트 파일과의 가져오기, 내보내기, 연결 등을 지원한다.

TransferText 텍스트 파일과의 가져오기, 내보내기, 연결 등을 지원한다.

Page 8: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

2. 매크로 작성하기

매크로 작성 메뉴

8

Page 9: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성하기

매크로 함수 선택

9

Page 10: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성하기

매크로 인수 설정

매크로 저장

10

Page 11: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성하기

매크로 실행

매크로 실행 결과

11

Page 12: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

3. 명령 단추에 매크로 연결하기

명령 단추 추가

12

Page 13: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 연결하기

명령 단추에 매크로 연결

13

Page 14: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 연결하기

폼 보기에서 명령단추 실행

14

Page 15: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 연결하기

명령 단추와 연결된 매크로 실행 결과

15

Page 16: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

4. 명령 단추에 매크로 작성하기

고객 테이블 폼 디자인 보기

16

Page 17: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 작성하기

매크로 작성기

17

Page 18: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 작성하기

매크로 함수 선택

18

Page 19: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

명령 단추에 매크로 작성하기

매크로 저장

폼 보기에서 명령단추 실행

19

• 명령단추와 연결된 매크로 실행 결과

Page 20: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

5. 매크로 작성을 위한 폼 만들기

텍스트 컨트롤 추가

20

Page 21: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

‘제품’테이블 입력 데이터

매크로 작성을 위한 폼 만들기

‘제품’테이블

21

필드 이름 데이터 형식 필드 크기 필드 속성

제품코드 텍스트 3 기본 키

제품명 텍스트 10

거래처 텍스트 30

단가 숫자 정수

제품코드 제품명 거래처 단가

101

102

103

휘발유

경유

LPG

SK에너지

GS칼텍스

S-Oil

1600

1400

950

Page 22: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

‘거래내역’테이블 입력 데이터

매크로 작성을 위한 폼 만들기

‘거래내역’테이블

22

필드 이름 데이터 형식 필드 크기 필드 속성

주문번호 텍스트 3 기본 키

고객명 텍스트 10

고객등급 텍스트 10

제품코드 텍스트 3

주문날짜 날짜/시간

수량 숫자 정수

주문번호 고객명 고객등급 제품코드 주문날짜 수량

1

2

3

4

5

6

7

8

9

10

11

12

13

규현

이특

희철

한경

예성

강인

신동

성민

은혁

동해

시원

려육

기범

골드

신규

일반

골드

실버

골드

신규

실버

골드

실버

일반

신규

일반

101

102

103

101

101

103

103

102

102

101

102

103

101

2015-05-01

2015-05-01

2015-05-01

2015-05-01

2015-05-15

2015-05-15

2015-05-15

2015-05-15

2015-05-15

2015-06-01

2015-06-01

2015-06-01

2015-06-01

200

300

250

200

350

200

300

400

150

350

450

300

400

Page 23: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성을 위한 폼 만들기

매크로 작성을 위한 조회 폼 예제

23

Page 24: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성을 위한 폼 만들기

목록 상자 추가

24

ResultList

Page 25: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성을 위한 폼 만들기

쿼리 작성기

25

Page 26: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성을 위한 폼 만들기

속성 시트 변경

26

Page 27: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로 작성을 위한 폼 만들기

매크로 작성을 위한 조회 폼 결과 화면

27

Page 28: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

6. 조건을 만족하는 데이터 검색 매크로 작성하기

조건을 만족하는 데이터 검색 매크로 작성 예제

28

Page 29: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

조건을 만족하는 데이터 검색 매크로 작성하기

조건을 만족하는 데이터 검색 매크로 작성 예제

29

SearchText ResultList

Page 30: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

조건을 만족하는 데이터 검색 매크로 작성하기

쿼리 작성기

30

Like "*" & [forms]![고객검색]![SearchText] & "*"

Page 31: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

조건을 만족하는 데이터 검색 매크로 작성하기

명령단추에 매크로 작성

31

Page 32: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

조건을 만족하는 데이터 검색 매크로 작성하기

매크로 함수 선택

32

Page 33: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

조건을 만족하는 데이터 검색 매크로 작성하기

조건을 만족하는 데이터 검색 매크로 실행 결과

33

Page 34: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

7. 매크로를 Visual Basic으로 변환하기

고객 보고서 매크로 디자인 보기

34

Page 35: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로를 Visual Basic으로 변환하기

고객 보고서 매크로를 Visual Basic으로 변환

35

Page 36: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로를 Visual Basic으로 변환하기

Visual Basic으로 변환된 매크로 함수

36

Page 37: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로를 Visual Basic으로 변환하기

변환된 Visual Basic 코드 저장

37

Page 38: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

매크로를 Visual Basic으로 변환하기

Function 프로시저와 Sub 프로시저의 설명

38

구분 설명

Function

프로시저

Function 고객 보고서 매크로()

DoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”, “”, acNormal

End Function

① 폼의 [디자인 보기] 창에 [단추 ] 컨트롤을 추가한다.

② [단추 ] 컨트롤 위에서 마우스 오른쪽 버튼을 클릭하여 나타난 단축 메뉴에서 [이벤트 작성(E)]을 선택한다.

③ [작성기 선택] 대화상자에서 [매크로 작성기]를 선택하고 [확인] 단추를 클릭한다.

④ [매크로 작성기] 창에서 매크로 함수를 선택하고 매크로 인수를 설정한다.

⑤ [매크로 도구]의 [디자인] 탭에서 [도구] 그룹의 [ 매크로를 Visual Basic으로 변환]을 클릭한다. Function 프로시

저가 작성된 것을 확인할 수 있다.

Sub

프로시저

Private Sub custCmd_Click()

DoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”, “”, acNormal

End Sub

① 폼의 [디자인 보기] 창에 [단추 ] 컨트롤을 추가한다.

② [단추 ] 컨트롤 위에서 마우스 오른쪽 버튼을 클릭에 나타난 단축 메뉴에서 [이벤트 작성(E)]을 선택한다.

③ [작성기 선택] 대화상자에서 [코드 작성기]를 선택하고 [확인] 단추를 클릭한다.

④ Sub 프로시저를 작성한다.

Page 39: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

8. 이벤트 프로시저 만들기

명령단추에 Visual Basic 코드 작성

39

Page 40: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

이벤트 프로시저 만들기

Microsoft Visual Basic for Application에서 Visual Basic 코드 작성

40

Page 41: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

이벤트 프로시저 만들기

이벤트 프로시저 연결

41

Page 42: 제12장 데이터베이스 프로그래밍 - KOCWcontents.kocw.net/KOCW/document/2015/pusan/kimjongki/12.pdfDoCmd.OpenReport “고객 테이블 보고서”, acViewPreview, “”,

이벤트 프로시저 만들기

이벤트 프로시저와 매크로 중 택일

42