모두CBT

출제 23-1다음은 [cmd처리] 명령 단추의 클릭 이벤트 프로시저이다… | [컴퓨터활용능력 1급 필기] 가끔 나오는 문제 · 최근 상시 회차 1회 출제 (331) 상세 페이지

1[컴퓨터활용능력 1급 필기] 가끔 나오는 문제 · 최근 상시 회차 1회 출제 (331)

출제 23-1

다음은 [cmd처리] 명령 단추의 클릭 이벤트 프로시저이다. 이에 대한 설명으로 옳지 않은 것은?

Private Sub cmd처리_Click()
    DoCmd.OpenForm "사원", acNormal, , "부서 = '영업'"
    DoCmd.OpenReport "급여보고서", acViewPreview
    DoCmd.RunSQL "DELETE FROM 임시 WHERE 처리 = True"
End Sub

1
OpenReport 메서드에서 두 번째 인수 acViewPreview를 생략하면 보고서가 기본값인 인쇄 미리 보기로 열린다.
2
[사원] 폼이 폼 보기로 열리며, 부서 필드의 값이 '영업'인 레코드만 표시된다.
3
[급여보고서] 보고서가 인쇄 미리 보기 상태로 열린다.
4
RunSQL 메서드는 DELETE, UPDATE, INSERT INTO 같은 실행 쿼리를 실행하며 SELECT 문은 실행할 수 없다.
해설

DoCmd.OpenReport에서 View 인수를 생략하면 인쇄 미리 보기가 아니라 곧바로 인쇄되는 기본값으로 열리므로 이 설명은 옳지 않다.

위 코드에서 DoCmd.OpenForm은 [사원] 폼을 폼 보기로 열면서 부서 필드 값이 '영업'인 레코드만 표시되도록 필터링하고, DoCmd.OpenReport "급여보고서", acViewPreview는 View 인수를 acViewPreview로 명시했으므로 [급여보고서]가 인쇄 미리 보기 상태로 열린다.

DoCmd.RunSQL은 DELETE, UPDATE, INSERT INTO 같은 실행(액션) 쿼리만 실행할 수 있고 SELECT 문은 실행할 수 없으므로, 마지막 줄은 [임시] 테이블에서 처리 필드가 True인 레코드를 삭제하는 동작이다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.