SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox)

SAP ABAP 프로그램을 개발할 때 리포트 프로그램의 선택 입력 필드나 스크린 프로그램의 텍스트 박스에서 텍스트 입력을 비밀번호(Password) 형식으로 표시해야 할 경우가 있습니다.

비밀번호 형식이란 입력하는 텍스트가 원래의 문자로 보이지 않고 ‘*‘로 텍스트가 표시되도록 텍스트 박스 형식을 변경하는 것을 말합니다.

비밀번호(Password, 암호)를 입력하는 텍스트 박스인 경우 비밀번호 형식으로 표시해줄 필요가 있습니다.

이번 글에서는 SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox)에 대해 알아보겠습니다.

Report 프로그램과 Screen 프로그램 두 가지 프로그램 타입으로 나누어 설명하겠습니다. ABAP 프로그램 타입에 대한 설명은 ABAP 프로그램의 Type(종류)에 대한 정의와 설명 포스팅 글을 참고하시기 바랍니다.

ABAP Report 프로그램에서 텍스트 박스를 비밀번호(*) 형식으로 표시하기

▶ ABAP의 리포트 프로그램에서 선택 화면의 입력 필드를 비밀번호 형식으로 표시하는 방법입니다.

1. 아래 화면은 일반적인 리포트 프로그램의 선택(SELECTION SCREEN) 화면입니다.

2. 패스워드 텍스트 입력 필드가 비밀번호 형식으로 되어 있습니다.

SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox) 1

3. 아래 화면은 실제 ABAP 프로그램 소스입니다.

4. PARAMETERS의 PA_PASS 필드를 비밀번호 형식으로 변경해 주는 예제입니다.

5. AT SELECTION-SCREEN OUTPUT 이벤트에서 SCREEN-INVISIBLE = 1 로 해 주면 됩니다.

AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF SCREEN-NAME = ‘PA_PASS’.
      SCREEN-INVISIBLE = 1.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox) 2

ABAP 스크린 프로그램에서 텍스트 박스를 비밀번호(*) 형식으로 표시하기

▶ ABAP의 스크린 프로그램에서 텍스트 박스 필드를 비밀번호 형식으로 표시하는 방법입니다.

1. 아래 화면은 스크린 프로그램의 스크린 페인터의 입력/출력 필드가 있는 화면입니다.

2. 입력/출력 필드가 비밀번호 형식으로 되어 있습니다.

SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox) 3

3. 스크린 페이트의 입력/출력 필드의 형식을 바꾸기 위해서는 PBO(Process Before Output)에서 처리해 주어야 합니다.

SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox) 4

4. PBO 모듈에서 SCREEN-INVISIBLE = ‘1’ 로 해 주면 됩니다.

MODULE TEXT_INVISIBLE OUTPUT.
  LOOP AT SCREEN.
    IF SCREEN-NAME = ‘GV_PERSONCODE’.
      SCREEN-INVISIBLE = ‘1’.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
ENDMODULE.                 ” TEXT_INVISIBLE  OUTPUT

SAP ABAP 텍스트박스 입력을 비밀번호 형식 입력으로 변경 방법(Password TextBox) 5

마무리

ABAP의 리포트 프로그램이나 스크린 프로그램 모두 동일하게 SCREEN-INVISIBLE 값을 ‘1’로 설정해서 텍스트 필드의 입력 형식을 비밀번호(Password) 포맷으로 표시할 수 있습니다.

리포트 프로그램에서는 AT SELECTION-SCREEN OUTPUT. 이벤트에서 설정하고, 스크린 프로그램에선 PBO(Process Before Output) Module에서 설정하는 차이만 있을 뿐입니다.





이 글이 도움이 되었기를 바랍니다. ^-^
댓글로 흔적을 남겨 주세요.

답글 남기기