✅ Variant란? (변형값 저장 기능)
Variant는 사용자가 selection screen(선택화면)에 입력한 값을 저장해두었다가, 나중에 불러와서 재사용할 수 있는 기능!
📌 기본 사용법 (사용자 관점)
- 프로그램 실행 (F8)
- 선택화면에 필드 값 입력
- 상단 도구바에서 Save (디스켓 아이콘) 클릭
- Variant 이름 입력 (예: Z1), 설명도 입력
- 저장!
👉 다음에 프로그램 실행 시 "Get Variant" 버튼(시계 아이콘) 을 클릭하면 저장한 값들을 불러올 수 있음
🛠️ 개발자/운영자 관점: SE38에서 Variant 생성
- SE38에서 프로그램 선택
- 상단 도구바의 Variants 버튼 클릭
- Create → Variant 이름 지정
- 선택화면에서 값 입력
- 설명 입력 후 Save
- 생성 완료!
🟡 이렇게 만들면 다른 사용자들이 사용할 수 있는 공용 Variant가 됨
⚙️ Variant 속성 (Attributes) 설명
Variant를 선택 후 Change → Attributes 버튼을 누르면 다양한 옵션 설정 가능:
✅ Only for background processing | 이 Variant는 백그라운드 작업(batch job) 전용으로 사용 |
🔒 Protect variant | 다른 사용자가 이 Variant를 사용하지 못하도록 보호 |
🙈 Only display in catalog | 사용자가 F4로 Variant 목록 볼 때 목록에 숨김 |
🧩 Field attributes (필드 속성) | 각 필드별로 다양한 설정 가능 |
📌 Field Attributes (필드 속성) 정리
🛡 Protect field | 해당 필드 수정 불가(회색 비활성화) |
❌ Hide field | 선택화면에서 해당 필드를 숨김 |
📌 Required field | 입력 필수 필드로 지정 (기존 OBLIGATORY와 유사) |
🗂 Save field without value | 값을 비워도 그 상태로 저장됨 |
🔄 Selection variable | 값이 변하는 경우, 다른 시스템 변수와 연결 가능 (예: 오늘 날짜 등) |
※ P는 Parameter, S는 Select-option 필드를 의미한다.
🎯 예제 상황 정리
- my_dob (date of birth) 필드를 Protect로 설정한 Variant를 저장함
- 이후 프로그램 실행 시, my_dob 필드는 회색으로 비활성화됨
- 사용자가 수정할 수 없음!
✅ Variant 기능 요약
입력값 저장 | 입력한 필드값들을 저장하고 나중에 불러오기 가능 |
사용자별/공용 | 개인용/전체용 Variant 구분 가능 |
백그라운드용 설정 | 배치 작업 전용으로 지정 가능 |
필드 속성 제어 | 필드 숨기기, 보호, 필수 등 세부 제어 가능 |
- 운영자가 자주 실행하는 보고서에 기본값 세팅할 때
- 사용자가 초기값 자동으로 채우고 실행할 때
- 배치 작업에서 자동 실행 시 사용
- 특정 사용자에게만 고정된 설정을 제공할 때 주로 쓰인다고함
🔧 Variant 속성들
- Only for background processing:즉, **배치 작업(Batch Job)**에서만 사용하도록 설정할 수 있다.
- 👉 이 옵션은 해당 Variant를 백그라운드 작업 전용으로 제한함
- Protect Variant:
- 👉 다른 사용자가 해당 Variant를 사용하지 못하도록 보호
- Only display in catalog:
- 👉 Variant는 존재하지만, F4 도움말 목록에는 표시되지 않음
🔎 필드 속성(Field Attributes)
화면에 보이는 개별 필드들에 대해 속성 조정이 가능함
- Protect field: 값을 변경하지 못하도록 회색 비활성화
- Hide field: 필드를 숨김
- Required field: 입력을 필수로 설정
- Save fields without values: 값이 없어도 빈 상태 저장 가능
- Switch GPA off: 글로벌 파라미터 자동 입력 방지
- P: Parameter
- 👉 파라미터 필드를 나타냄
- S: Select-option
- 👉 Select-Options 필드를 나타냄
🔧 Variant 속성들이 잘 이해가 안가서 정리하는 상세 설명
✅ 1. Only for background processing
"이 Variant는 백그라운드(batch job) 작업에서만 사용할 수 있게 제한한다."
📌 이 옵션을 설정하면:
- 사용자가 직접 실행(F8) 하거나 화면에서 Variant를 불러오는 것은 불가능
- SM36 등의 백그라운드 작업에서만 이 Variant를 사용할 수 있음
📍 사용 예시
야간에 자동으로 돌리는 월말 급여 집계 프로그램
- 담당자가 매번 입력하지 않고, 고정된 값으로 자동 실행
- 이 Variant를 일반 사용자가 실수로 수정하거나 실행하지 못하게 하려면
→ 이 옵션을 켜두는 게 안전함
✅ 2. Protect Variant
"다른 사용자가 이 Variant를 선택하거나 실행하지 못하도록 막는다."
📌 이 옵션을 설정하면:
- 해당 Variant는 Variant 목록(F4) 에 나타날 수 있음
- 그러나 실행은 등록한 사용자만 가능
- 다른 사용자는 실행하거나 수정할 수 없음
📍 사용 예시
특정 부서에서만 사용하는 매출 정산 Variant
- 다른 부서 직원이 실수로 이 Variant를 선택하거나 실행하지 못하게
- 특정 담당자가 만든 Variant를 보호(Protect) 하면 안전하게 유지됨
✅ 3. Only display in catalog
"Variant는 존재하지만, F4 도움말 목록에는 보이지 않는다."
📌 이 옵션을 설정하면:
- Variant는 실행은 가능하지만
- F4 눌러서 Variant를 고를 때 목록에 보이지 않음
- 즉, 숨겨진 상태로 사용됨
📍 사용 예시
테스트 용도로 만든 내부 전용 Variant
- 다른 사람에게 보여줄 필요는 없지만, 내부에서 직접 이름으로 호출해서 사용할 수 있음
→ 예를 들어, 배치 작업에서 Variant 이름을 직접 지정할 수 있으니 숨겨두기만 해도 됨
💡 정리 표
✅ Only for background processing | 백그라운드 작업 전용 Variant | 야간 자동 보고서, 일일 배치 |
🔒 Protect Variant | 다른 사용자 접근 제한 | 보안상 민감한 보고서 설정 |
🙈 Only display in catalog | F4 목록에서 숨김 | 테스트용, 내부 전용 설정 |
'SAP' 카테고리의 다른 글
SAP ABAP Programming for Beginners - 62 Text Messages (0) | 2025.04.13 |
---|---|
SAP ABAP Programming for Beginners - 61 Text Symbols (0) | 2025.04.13 |
SAP ABAP Programming for Beginners - 59 Selection Screens Text Elements (0) | 2025.04.13 |
SAP ABAP Programming for Beginners - 58 No-EXTENSION (0) | 2025.04.13 |
SAP ABAP Programming for Beginners - 57 Select-options (0) | 2025.04.13 |