CAST vs ?= — 다운캐스팅 실수 3가지 #shorts #SAP #ABAP
이 글이 답하는 질문 레거시 ABAP 코드를 유지보수하다 보면 MOVE ?TO 나 ?= 연산자로 객체 참조를 다루는 패턴을 흔히 만납니다. 이런 코드는 ABAP 7.40 이후 도입된 CAST 연산자로 대체되어야 합니다. 단순한 문법 변경이 아니라 가독성, 표현식 기반 프로그래밍, 인라인
이 글이 답하는 질문 레거시 ABAP 코드를 유지보수하다 보면 MOVE ?TO 나 ?= 연산자로 객체 참조를 다루는 패턴을 흔히 만납니다. 이런 코드는 ABAP 7.40 이후 도입된 CAST 연산자로 대체되어야 합니다. 단순한 문법 변경이 아니라 가독성, 표현식 기반 프로그래밍, 인라인
개요 및 핵심 포인트 ABAP 객체 지향 프로그래밍에서 참조 변수(reference variable) 간 형 변환은 일상적으로 발생합니다. 과거에는 MOVE source ?TO target 또는 MOVE source TO target TYPE 구문을 사용했지만, ABAP 7.40 SP0
Code Inspector와 ATC, 뭐가 다른가 ABAP 코드 품질을 잡는 도구는 두 가지입니다. Code Inspector(SCI 트랜잭션)는 2000년대부터 사용해온 전통적인 방식이고, ATC(ABAP Test Cockpit)는 SAP가 현재 권장하는 현대적 품질 관리 방식입니다.
같은 요건, 세 갈래의 길 SAP S/4HANA와 ABAP Platform 환경에서 표준 기능을 확장할 때, 어떤 방식을 고를지 망설인 경험이 한 번쯤 있을 겁니다. 같은 "판매 오더에 프로모션 코드 필드 하나 추가"라는 요건이라도 Tier 1(Key User), Tier 2(Devel
SAP 확장 모델이 3계층으로 나뉜 이유 SAP S/4HANA Cloud가 등장하면서 ERP를 "건드리지 않고 어떻게 확장할 것인가"가 핵심 과제로 떠올랐습니다. 과거 ECC 시절에는 SE38에서 표준 프로그램을 그대로 수정하거나, User Exit/BAdI로 핵심 로직에 깊숙이 개입하
면접에서 꼭 나오는 질문 ABAP 면접에서 가장 자주 나오는 질문 중 하나는 내부 테이블의 종류와 차이 입니다. 단순 암기가 아니라 성능 차이까지 설명할 수 있어야 합니다. STANDARD TABLE 순차 검색(O(n)). 삽입 순서 유지. 중복 허용. 소량 데이터나 순서가 중요할 때
Bound Action vs Unbound Action RAP(ABAP RESTful Application Programming Model)에서 Action은 데이터를 변경하는 비표준 작업입니다. Bound Action 은 특정 엔티티 인스턴스에 종속되지만, Unbound Action
ABAP 개발자도 이제 AI 코파일럿 시대 SAP의 AI 어시스턴트 Joule 이 ABAP 개발 환경에 직접 통합되었습니다. ABAP Development Tools(ADT)나 SAP Build Code에서 코드를 짜다가 막히면, Joule에게 바로 물어볼 수 있습니다. 어떤 걸 도와주
이 글이 답하는 질문 RAP에서 Function과 Action은 언제 각각 사용하나요? 데이터 변경이 가능한 건 둘 중 어느 쪽인가요? OData에서 어떤 HTTP 메서드로 매핑되나요? Function — 읽기 전용 오퍼레이션 RAP Behavior Definition에서 functio
Function과 Action, 뭐가 다른가? RAP(RESTful ABAP Programming) BDEF에서 function 과 action 은 둘 다 커스텀 오퍼레이션처럼 보이지만 근본적인 차이가 있다. Function은 읽기 전용 , Action은 상태 변경 이다. 이 구분을 무
RAP에서 Determine과 Modify, 헷갈리죠? 두 메서드는 트리거 시점이 완전히 다릅니다. 이걸 모르면 의도치 않은 순서로 로직이 실행됩니다. determineBySave 저장(Save) 직전에 호출됩니다. 데이터베이스에 기록하기 전, 최종 필드 값을 계산하거나 파생 데이터를
이 글이 답하는 질문 HANA SQLScript에서 WHILE/FOR 루프를 쓰면 왜 느린가? Set 방식으로 어떻게 대체하나? 실무에서 루프를 피해야 하는 이유는? 직접 해보기 루프 방식 (느림) -- 행 단위 처리 — 대용량에서 치명적 DECLARE i INT = 1; WHILE i
External vs Internal Numbering RAP에서 엔티티를 생성할 때 키(Key) 값을 누가 결정하느냐에 따라 두 방식으로 나뉩니다. External Numbering 은 클라이언트(UI/API 호출자)가 키를 직접 지정하고, Internal Numbering 은 서버가
내부 테이블 3종 기본 ABAP 내부 테이블은 STANDARD , SORTED , HASHED 세 가지 타입이 있습니다. 단순해 보이지만 잘못 선택하면 READ 성능이 수십 배 달라집니다. 특히 데이터 건수가 늘어날수록 차이가 두드러집니다. STANDARD TABLE — 기본, 순차 탐
LOOP AT INTO vs LOOP AT ASSIGNING ABAP에서 내부 테이블을 순회할 때 INTO 와 ASSIGNING 중 어떤 방식을 선택하느냐에 따라 성능과 메모리 사용량이 달라집니다. 특히 대용량 테이블에서는 그 차이가 확연하게 나타납니다. INTO: 복사본 방식 LOOP
ABAP LOOP AT WHERE 조건 사용법. LOOP + IF + SKIP 패턴을 WHERE 한 줄로 대체. 가독성과 성능 동시 개선.
이 글이 답하는 질문 LOOP AT ... INSERT가 왜 느린가? INSERT ... FROM TABLE은 어떻게 다른가? 실제 코드에서 어떻게 바꾸면 되나? LOOP AT + INSERT — 뭐가 문제인가 행마다 DB 왕복이 발생한다. 1,000건이면 최소 1,000번 네트워크 라

2026년 5월 13일 AI 업계는 주요 기업들의 엔터프라이즈 확장과 동시에 보안·윤리 이슈가 동시다발적으로 불거진 하루였습니다. Anthropic은 법률 시장 공략과 일본 진출을 가속화하는 한편 Claude 모델의 오남용 사례가 도마에 올랐고, OpenAI는 Codex 활용 사례를 잇
ABAP에서 MODIFY FROM TABLE이란? MODIFY dbtab FROM TABLE itab 은 내부 테이블의 레코드를 DB에 한 번에 upsert(있으면 UPDATE, 없으면 INSERT)하는 ABAP SQL 구문입니다. INSERT 나 UPDATE 를 따로 쓸 때보다 코드도
Cursor 처리의 문제 HANA에서 Cursor를 쓰면 행마다 네트워크 왕복이 발생합니다. 10만 건이면 10만 번의 컨텍스트 스위치가 생깁니다. -- ❌ Cursor 방식 (느림) FOR cur_row AS cursor FOR SELECT id, amount FROM orders D