🔹 "이제 ABAP 프로그램에서 사용할 수 있는 Open SQL 문들을 살펴보자."

 

Open SQL 문을 사용하면 DB 테이블의 레코드에 간접적으로 접근하거나 수정할 수 있음.

 


🔹 "Open SQL의 장점"

Open SQL의 큰 장점은,
우리가 어떤 종류의 데이터베이스(Oracle, Microsoft SQL 등) 를 쓰든 동일한 방식으로 ABAP 프로그램에서 사용 가능하다.

→ 즉, 데이터베이스 종류에 상관없이 코드가 호환됨!
이건 SAP가 내부적으로 그 차이를 알아서 처리해주기 때문!


🔹 "MANDT 필드"

  • MANDT는 클라이언트 번호(예: 100, 200, 800 등) 를 의미해요.
  • 그리고 이 MANDT 필드는 대부분의 거래 데이터(트랜잭션 테이블),
    마스터 데이터, 설정 테이블 등에 기본적으로 포함되어 있음

🔹 SQL에서의 MANDT 필드

ABAP에서는 굳이 MANDT를 SQL문에 명시하지 않아도 됨!

왜냐하면:

  • 내가 어떤 클라이언트(100번, 800번 등) 로 로그인하든,
  • SAP 시스템이 자동으로 MANDT 값을 기준으로 필터링함

즉, 내가 클라이언트 100번으로 로그인해서 프로그램을 돌리면,

SELECT * FROM ZEMPLOYEES.

SELECT * FROM ZEMPLOYEES WHERE MANDT = '100'.

아래 select문으로 자동필터링됨

 


🔹 "이 자동 필터링의 장점은?"

  • 보안성: 다른 클라이언트의 데이터를 실수로 접근할 일이 없어짐
  • 코드 간결함: MANDT를 따로 조건에 쓰지 않아도 됨!
  • 일관성: 여러 클라이언트에서 동일한 프로그램이 동일하게 작동!

✅ 요약


Open SQL DB 종류에 상관없이 ABAP에서 사용하는 SQL 문
MANDT 필드 클라이언트 번호, 대부분의 테이블에 자동 포함됨
자동 필터링 로그인한 클라이언트에 따라 MANDT는 자동으로 필터됨
프로그래머 역할 MANDT를 SQL문에 명시할 필요 없음
보안 효과 다른 클라이언트 데이터 접근 차단됨

+ Recent posts