SAP MM 모듈의 자재 마스터(MM01·MM02·MM03) 화면에는 표준 SAP 가 제공하는 수백 개의 필드가 있습니다. 실제 회사 운영에서는 그중 일부만 사용하고 나머지는 보이지 않게 하거나, 사용자가 잘못 수정하지 못하도록 조회 전용으로 잠가야 하는 경우가 많습니다. 이런 화면 필드 제어를 표준에서 지원하는 메커니즘이 Field Selection 이며, OMSR + OMS9 두 T-Code 로 다룹니다.
핵심 개념은 두 단계로 나뉩니다 — (1) OMSR 에서 필드가 속한 그룹 번호를 찾고, (2) OMS9 에서 그 그룹 번호에 대해 표시 / 숨김 / 필수 / 조회 모드를 결정. 그룹 단위로 제어하므로 같은 그룹의 필드들은 한 번에 같이 영향을 받습니다.
이 글에서는 자재 마스터 표준 필드를 비활성화하는 OMSR → OMS9 흐름, 4가지 모드(Hide · Display · Required · Optional) 의 우선순위 규칙, 4계층(트랜잭션·자재 유형·산업·플랜트) 의 동작 원리, 운영 적용 시 주의점까지 정리합니다. 회사 정책에 맞춰 자재 마스터 UI 를 정돈하는 표준 운영 도구입니다.
핵심 — 4가지 모드 + 4계층 우선순위
| 모드 | 동작 | 활용 |
|---|---|---|
| Hide (-) | 화면에서 완전히 숨김 | 사용 안 하는 필드 제거 |
| Display (*) | 보이지만 입력 / 수정 불가 (회색) | 참고만, 수정 차단 |
| Required (+) | 필수 입력 (저장 시 검증) | 반드시 채워야 하는 필드 |
| Optional (.) | 선택 입력 (기본) | 표준 입력 가능 필드 |
여러 계층의 룰이 충돌할 때 SAP 가 결정하는 우선순위:
Hide (-) > Display (*) > Required (+) > Optional (.)
가장 강함 가장 약함
한 필드에 대해 "트랜잭션 = Optional", "자재 유형 = Required", "플랜트 = Hide" 가 동시에 적용되면 가장 강한 Hide 가 이깁니다. 숨김으로 정한 필드는 어디서도 보이지 않게 됩니다.
4계층 — Field Reference Group: 같은 필드라도 어떤 컨텍스트에서 보이는지에 따라 다르게 제어할 수 있습니다.
| 계층 | 의미 / 예시 |
|---|---|
| Transaction | MM01 / MM02 / MM03 등 사용 트랜잭션 단위 |
| Material Type | ROH · HALB · FERT · DIEN 단위 |
| Industry Sector | M (기계) · C (화학) 등 산업 분야 |
| Plant + Procurement Type | 조달 유형 (F = 외부 구매 · E = 내부 생산) |
같은 자재 마스터라도 트랜잭션 / 자재 유형 / 산업 / 플랜트가 다르면 다른 룰을 적용할 수 있어 회사 정책에 정밀하게 맞출 수 있습니다.
1단계 — OMSR 로 필드 그룹 번호 찾기
T-Code: OMSR. 필드명과 Field Selection Group 번호의 매핑 테이블 입니다. 비활성화할 필드가 어떤 그룹에 속하는지 먼저 확인.
T-Code: OMSR
또는 IMG 경로:
SPRO → Logistics - General → Material Master
→ Field Selection
→ Assign Fields to Field Selection Groups

화면이 뜨면 모든 자재 마스터 필드가 행별로 표시됩니다. 컬럼:
| 컬럼 | 의미 |
|---|---|
Field name |
DDIC 필드 (예: MARA-MEINS·MARC-DISMM) |
Selection Group |
필드가 속한 그룹 번호 (3자리) |
Field Description |
필드의 설명 (한글 / 영문) |
Maint. status |
유지보수 상태 (어떤 View 에서 보이는지) |
핸들 / 검색: 화면 상단에서 필터 또는 Find(Ctrl + F) 로 비활성화할 필드명을 검색. 그 행의 Selection Group 번호를 메모. 이 번호가 다음 단계의 키.
예시:
+----------+----------+----------+-----------------+
| FIELD | GROUP | STATUS | DESCRIPTION |
+----------+----------+----------+-----------------+
| MARA-EAN11| 029 | KDEABMP | EAN/UPC | ← 그룹 029
| MARC-MMSTA| 109 | KDEAB | Plant status | ← 그룹 109
| MBEW-BKLAS| 015 | KB | Valuation class | ← 그룹 015
+----------+----------+----------+-----------------+

비활성화할 필드 옆의 그룹 번호(예: 029) 를 가지고 다음 단계로.
2단계 — OMS9 로 그룹 번호 모드 결정
T-Code: OMS9. 위 단계에서 찾은 그룹 번호를 Field Reference Group 단위로 어떻게 처리할지 결정.
T-Code: OMS9
또는 IMG 경로:
SPRO → Logistics - General → Material Master
→ Field Selection
→ Maintain Field Selection for Data Screens

화면 진입 → Field Reference Group 목록 (트랜잭션 · 자재 유형 · 산업 · 플랜트별로 미리 등록된 그룹).
+-----------+----------------------------+
| FldRef | Description |
+-----------+----------------------------+
| MM01 | Material creation |
| MM02 | Material change |
| MM03 | Material display |
| ROH | Material type ROH |
| HALB | Material type HALB |
| FERT | Material type FERT |
| WERK0001 | Plant 0001 |
| M | Industry: Mechanical Eng. |
+-----------+----------------------------+
비활성화할 컨텍스트의 Field Reference Group 더블 클릭 → 화면이 그룹 번호별 모드 설정으로 전환됩니다.
+----------+--------+---------+--------+--------+
| Group | Hide | Display | Req. | Opt. |
+----------+--------+---------+--------+--------+
| 015 | ☐ | ☐ | ☐ | ☑ |
| 029 | ☑ | ☐ | ☐ | ☐ | ← Hide 체크
| 109 | ☐ | ☑ | ☐ | ☐ | ← Display 체크 (조회만)
+----------+--------+---------+--------+--------+

1단계에서 찾은 그룹 번호 행에서 원하는 모드 컬럼 체크 → 저장 → CTS 선택 → 활성화.
저장 직후 MM02 화면에 진입하면 해당 필드가 숨김 / 조회 / 필수 / 선택 상태로 즉시 적용됩니다. 화면 갱신이 즉시 안 되면 /$SYNC 또는 사용자 세션 재로그인.
3단계 — 4계층 우선순위 활용 (정밀 제어)
같은 필드에 대해 여러 Field Reference Group 의 설정이 동시에 적용되는데, 각 계층마다 다른 모드를 줘서 정밀하게 제어 할 수 있습니다.
시나리오 예시 — Plant Status (MARC-MMSTA, 그룹 109)
─────────────────────────────────────────────────────
[MM02 (변경)] Optional (기본)
[ROH 자재 유형] Required (반드시 입력)
[WERK0001 플랜트] Hide
→ 결과: 플랜트 0001 에서는 숨김 (Hide 가 가장 강함)
그 외 플랜트에서는 ROH 자재일 때 필수
다른 자재 유형은 선택 입력
이 우선순위 규칙을 활용하면 "특정 플랜트에서만 숨김", "특정 자재 유형에서만 필수" 같은 세밀한 정책을 룰만 등록해서 구현할 수 있습니다.
조회용으로 회사 정책을 정리한 후 변경 모드(MM02) 진입 시점에는 조회 전용으로 잠그는 패턴이 가장 흔합니다:
[MM01 (생성)] Required → 생성 시 반드시 입력
[MM02 (변경)] Display → 변경 모드에서는 잠금
[MM03 (조회)] Display → 조회 모드는 어차피 조회만
이 조합이면 사용자는 자재를 처음 만들 때만 그 필드를 채우고, 이후 변경 시점에는 잠겨서 운영 사고가 줄어듭니다.
4단계 — 적용 후 검증
CTS 활성화 후 실제 화면에서 의도대로 동작하는지 확인.
1. MM03 → 영향 받는 자재 + 영향 받는 뷰 진입
- 숨김 필드: 화면에 표시되지 않는지
- 조회 필드: 회색 / 입력 불가인지
2. MM02 → 같은 자재 변경 모드 진입
- 필수 필드: 비워두면 저장 시 에러
- 선택 필드: 비워도 저장 가능
3. SE16N → T130F 테이블 조회 (Field 그룹 매핑 마스터)
- 정확한 적용 결과 확인
운영 적용 전 개발 / 품질 환경에서 전체 시나리오(생성·변경·조회·여러 자재 유형·여러 플랜트) 를 한 번에 점검하시기 바랍니다.
흔히 빠뜨리는 함정
Required 와 Hide 동시 설정
같은 필드에 한 컨텍스트에서 Required, 다른 컨텍스트에서 Hide 를 함께 설정하면 우선순위에 의해 Hide 가 이깁니다. 결과 — 필수인데 숨겨져 있어서 저장 시 무한 에러. 두 모드를 같은 필드 / 계층에 동시 설정하지 마시기 바랍니다.
Hide 후 저장 안 됨 / 검증 실패
Required 로 정의된 필드를 Hide 로 강제 숨겨도, 백엔드의 데이터 검증은 살아 있습니다. 화면에는 안 보이지만 저장 시 "Field is empty" 류 에러가 발생할 수 있습니다. 필수 검증이 백엔드에 박혀 있는 필드는 Hide 대신 Display 로 처리하는 게 안전합니다.
CI Include 자체 필드도 같은 룰
CI Include 로 추가한 회사 자체 필드(ZMOSEN 등) 도 OMSR / OMS9 로 제어 가능합니다. CI 추가 후 그룹 번호도 같이 등록해야 표준처럼 다룰 수 있습니다.
그룹 단위 변경의 영향 범위
OMSR 그룹은 여러 필드를 묶고 있을 수 있습니다. 한 필드만 비활성화하려고 그룹 모드를 바꾸면 같은 그룹의 다른 필드도 같이 영향받을 수 있습니다. 그룹의 구성원을 사전 확인 후 영향 범위가 좁은지 검증.
트랜잭션별 다른 적용
MM01 (생성) 에는 Hide 인데 MM02 (변경) 에는 적용 안 하면, 사용자가 변경 모드에서 그 필드를 볼 수 있습니다. MM01 / MM02 / MM03 세 트랜잭션의 정책이 일관되게 설정되어야 정책의 의도가 깨끗하게 적용됩니다.
권한 그룹 / 사용자 매개변수
같은 필드라도 사용자 권한 그룹(SU01) 이나 화면 변형(SHD0) 으로 다르게 보일 수 있습니다. OMSR / OMS9 가 다른 계층보다 후행하므로 결과가 다르면 권한 / 변형 측을 점검.
표준 동작 변경 시 회사 리스크
자재 마스터 핵심 필드(MEINS 기본 단위·MATKL 자재 그룹) 를 Hide 로 잠그면 후속 BAPI / 인터페이스가 실패할 수 있습니다. 표준 BAPI 가 그 필드를 자동 채워주지 않는 시나리오라면 신중하게 결정.
MM 마이그레이션 / Upgrade 영향
OMSR / OMS9 변경은 회사 자체 IMG 영역이라 Upgrade 시 대부분 유지됩니다. 단 SAP Note 로 권장 룰이 변경되는 경우가 있으므로 정기적으로 한 번씩 표준 룰과 비교 점검.
같이 보면 좋은 글
- "IMG 운송오더 자재 등록 에러 해결 — OMS2 자재 유형 × 플랜트 갱신 플래그" — 자재 유형 × 플랜트 단위 IMG 설정의 짝꿍 글
- "Screen Exit 커스텀 필드 추가 — MAP_DYNPRO_FIELDS BAdI 활용 방법" — CI Include 로 자체 필드 추가 후 OMSR 등록 흐름
- "BAdI 정의로 Screen Exit 구축 — Function Group · Screen · SUBSCRIBE 매핑" — 신규 BAdI 로 화면 확장 시 Field Selection 함께 적용
요약
| 단계 | 하는 일 | T-Code · 핵심 |
|---|---|---|
| 1 | 필드 그룹 번호 확인 | OMSR · Selection Group 메모 |
| 2 | Field Reference Group 선택 | OMS9 · 트랜잭션 / 자재 유형 / 플랜트 |
| 3 | 모드 결정 | Hide / Display / Required / Optional |
| 4 | 저장 · CTS 활성화 | 개발 → 품질 → 운영 이송 |
| 5 | 검증 | MM01 / MM02 / MM03 모두 점검 |
자재 마스터 필드 비활성화의 핵심은 "OMSR 로 필드 → 그룹 번호 매핑 확인" + "OMS9 로 그룹 번호 × Reference Group 단위 모드 결정" 두 단계입니다.
4가지 모드(Hide · Display · Required · Optional) 의 우선순위와 4계층(트랜잭션 · 자재 유형 · 산업 · 플랜트 / 조달) 의 동작 원리를 이해하면 회사 정책에 정밀하게 맞춘 자재 마스터 화면을 만들 수 있습니다. Required 와 Hide 가 같이 적용되어 입력 불가 + 검증 실패의 무한 루프가 생기지 않도록 정책 충돌은 사전 시뮬레이션으로 점검하시기 바랍니다.
Disclaimer — 이 포스트는 실무 정리 노트를 바탕으로 AI 보조로 정리되었습니다.
OMSR Selection Group 매핑 · OMS9 Field Reference Group 동작 · 우선순위 룰은 SAP MM 표준(ECC 6.0 / S/4HANA on-premise) 기준이며, 회사 자재 유형 / 플랜트 / 권한 그룹 정책에 따라 적용 결과가 달라질 수 있으니 운영 시스템 적용 전 개발·QA 환경에서 검증하시기 바랍니다. 회사가 사용 중인 화면 변형(SHD0) 이나 BAdI / Customer Exit 가 OMS9 보다 우선 적용되는 경우도 있으므로 결과가 의도와 다르면 후속 레이어를 점검하시기 바랍니다.