300x250
728x90
# 시작하기 전
# 테이블 만들 때 항상은 아니지만 99프로 붙어있는 " MANDT "... [ 만드기 ], [ 엠티 ] 등등 여러 별명이 있다..
처음 보는 사람은 궁금한 "MANDT"에 대해서 알아보자.
클라이언트에 따른 " MANDT "
# MANDT 정의
# [ MANDT ] 필드는 Client Identifier로, SAP 시스템의 클라이언트를 식별하기 위한 필드이다.
# DB Table에서 항상 첫 번째 필드에 있으며, 다음과 같은 Type을 가지고 있다.
# MANDT를 사용하는 이유
# 간단하게 말하자면, 클라이언트 별로 데이터를 관리하기 위해서 [ MANDT ]를 사용하는 것이다.
- ex) 클라이언트 별
-- 클라이언트 100 : 로직 변경
-- 클라이언트 300 : 개발용 데이터 저장
# 프로젝트를 하다 보면, 여러 클라이언트에 따라서 데이터를 다양하게 관리하게 될 수도 있고,
# 다국적 기업에서 본사와 여러 지사 별로 클라이언트를 각각 운영할 수도 있게 된다.
# 그렇기 때문에 사용자가 자신의 클라이언트와 관련된 데이터만 접근하도록 보장할 수 있다.
# MANDT 자동 필터링
- 다음과 같이 클라이언트 별로 나누어져 있다고 가정해 보자. 또한, 다음과 같이 똑같은 테이블이다.
# SELECT문에서 MANDT 활용
# ABAP 런타임 환경에서 SELECT을 하게 되면 자동으로 현재 클라이언트에 해당하는 데이터만 조회가 된다.
( 보통은 Open SQL -> Native SQL로 넘어갈 시 MANDT가 자동으로 조건문이 붙게 되어있다 ).
# Open SQL 말고 Native SQL을 활용할 때에는 항상 [ MANDT ] 조건문을 달아주어야 한다.
[ T-CODE : ST05 ] -> [ Diagnostics ] -> [ SQL Editor ]에 들어가서 SQL을 짜보면
# 다음과 같이 200과 110에 대한 클라이언트 값이 나오는 걸 볼 수 있다.
그렇기 때문에 Open SQL 말고 Native SQL을 사용할 때에는 조건문에 MANDT를 꼭 붙여주어야 한다.
끝..!
728x90
'.ABAP > ..모든 것' 카테고리의 다른 글
SAP Customer Exit 사용법( SMOD/ CMOD ) (0) | 2025.01.10 |
---|---|
SAP Enhancement 정리 ( User Exit, Customer Exit ) - 1 (0) | 2025.01.10 |
SAP 로컬 파일 엑셀 버튼 오류( 로컬파일.... ) (2) | 2024.11.27 |
SAP 여러 테이블의 데이터 개수 가져오기( Tables Record Count ) (0) | 2024.11.25 |
SAP Standard 수정 방법론 (0) | 2024.11.19 |