LLM 연동 실수 3가지 #shorts #SAP #Joule
BTP Generative AI Hub LLM 통합 시 실수 TOP 3 SAP BTP Generative AI Hub는 OpenAI, Anthropic, Google 등 다양한 LLM을 단일 API로 호출할 수 있게 해주는 서비스입니다. 하지만 비즈니스 앱에 통합할 때 흔히 발생하는 실
BTP Generative AI Hub LLM 통합 시 실수 TOP 3 SAP BTP Generative AI Hub는 OpenAI, Anthropic, Google 등 다양한 LLM을 단일 API로 호출할 수 있게 해주는 서비스입니다. 하지만 비즈니스 앱에 통합할 때 흔히 발생하는 실
왜 destroy()가 필요한가 SAPUI5는 자체 ManagedObject 레지스트리로 모든 컨트롤을 추적합니다. 컨트롤을 DOM에서 제거하거나 부모에서 detach해도 이 레지스트리 참조는 그대로 남습니다. 이벤트 핸들러, 모델 바인딩, 프래그먼트 캐시까지 메모리에 계속 쌓입니다.
SQLScript에서 예외 처리를 빠뜨리면? HANA SQLScript로 프로시저를 작성할 때, 예외 처리를 생략하면 어떤 일이 벌어질까요? 트랜잭션 롤백 없이 데이터가 반쪽만 저장되거나, 오류 메시지 없이 프로세스가 멈추는 상황이 발생합니다. 실제 운영 환경에서는 디버깅조차 어려운 큰
OData V2 vs V4 — Service Binding 선택의 차이 ABAP RAP에서 Service Binding을 생성할 때 OData 버전을 선택해야 합니다. V2 는 오래된 Fiori 앱과 호환성이 높고, V4 는 최신 기능과 성능이 더 우수합니다. 언제 어느 버전을 선택해야
Bound Action vs Unbound Action RAP(ABAP RESTful Application Programming Model)에서 Action은 데이터를 변경하는 비표준 작업입니다. Bound Action 은 특정 엔티티 인스턴스에 종속되지만, Unbound Action
에러 처리, 매번 따로 짜고 있진 않나요? CAP for Java 프로젝트가 커지면, 서비스마다 try-catch 반복하게 됩니다. Global Exception Handler 로 한 곳에서 처리하면 코드도 줄고, 클라이언트 응답도 일관됩니다. 핵심 구조 Spring의 @Controll
ABAP 개발자도 이제 AI 코파일럿 시대 SAP의 AI 어시스턴트 Joule 이 ABAP 개발 환경에 직접 통합되었습니다. ABAP Development Tools(ADT)나 SAP Build Code에서 코드를 짜다가 막히면, Joule에게 바로 물어볼 수 있습니다. 어떤 걸 도와주
이 글이 답하는 질문 RAP에서 Function과 Action은 언제 각각 사용하나요? 데이터 변경이 가능한 건 둘 중 어느 쪽인가요? OData에서 어떤 HTTP 메서드로 매핑되나요? Function — 읽기 전용 오퍼레이션 RAP Behavior Definition에서 functio
컴포넌트 간 통신, 왜 까다로울까요? UI5 앱이 커지면 부모→자식 모델 바인딩만으로는 부족합니다. 형제 뷰나 독립된 컨트롤러 간 데이터 전달 시 직접 참조를 남발하면 의존성 지옥에 빠집니다. EventBus는 이 문제를 Publish/Subscribe 패턴으로 해결합니다. 발행(Pub
Function과 Action, 뭐가 다른가? RAP(RESTful ABAP Programming) BDEF에서 function 과 action 은 둘 다 커스텀 오퍼레이션처럼 보이지만 근본적인 차이가 있다. Function은 읽기 전용 , Action은 상태 변경 이다. 이 구분을 무
이 글이 답하는 질문 CAP for Java에서 역할(Role) 기반 접근 제어를 어떻게 선언하나요? @AuthorizedRole과 @PreAuthorize 중 어떤 걸 써야 하나요? 로컬에서 권한 테스트는 어떻게 하나요? 직접 해보기 1. CDS에서 Role 선언 CDS 서비스 정의에
Object Page란? Fiori 상세 화면의 표준 패턴입니다. 구조는 Header Area 와 Content Area 로 나뉘고, Content Area는 Section → SubSection → Facet 계층을 따릅니다. 이 계층을 잘못 이해하면 레이아웃이 무너지거나 내용이 통째
Fiori에서 ARIA가 없으면 벌어지는 일 SAP Fiori 앱에 ARIA 속성을 빠뜨리면 스크린 리더 사용자는 버튼이 존재하는지조차 알 수 없습니다. 단순한 권고 사항이 아닙니다. 유럽 EAA(European Accessibility Act) 2025, 미국 Section 508 등
이 글이 답하는 질문 여러 Component로 쪼개진 UI5 앱에서, 서로를 직접 참조하지 않고 데이터를 주고받으려면 어떻게 해야 하나? EventBus의 channelId와 eventId는 어떤 단위로 설계해야 충돌 없이 운영할 수 있나? subscribe를 걸어 둔 뒤 뷰가 dest
이 글이 답하는 질문 CAP for Java에서 Custom Action을 어떻게 정의하나? Java Handler를 @On으로 연결하는 정확한 방법은? Action 구현 시 자주 하는 실수는? 직접 해보기 1. service.cds에 Action 정의 // srv/my-service.
Custom Action이란? CAP CDS에서 action 은 데이터 조회·수정 외의 비즈니스 로직을 명시적으로 노출하는 방법입니다. REST로 치면 POST /approve 같은 비표준 동작을 OData 서비스에 추가할 때 사용합니다. CDS 정의 service OrderServic
Custom Action이 필요한 순간 CAP for Java에서 표준 CRUD만으로는 부족할 때 Custom Action을 사용합니다. 주문 승인, 결제 처리, 외부 시스템 호출처럼 특정 비즈니스 로직을 전용 API 엔드포인트로 노출할 수 있습니다. CDS 모델에서 Action 선언
External vs Internal Numbering RAP에서 엔티티를 생성할 때 키(Key) 값을 누가 결정하느냐에 따라 두 방식으로 나뉩니다. External Numbering 은 클라이언트(UI/API 호출자)가 키를 직접 지정하고, Internal Numbering 은 서버가
ABAP TIMESTAMP 타임존 처리. UTC 기준 저장, CONVERT TIME ZONE으로 현지 변환, SY-ZONLO 활용.
Expression Binding이란? UI5의 Expression Binding은 XML View 안에서 JavaScript 표현식을 직접 실행할 수 있는 기능입니다. {= ... } 문법을 사용하며, 단순한 조건 처리나 문자열 조합을 위해 Controller에 formatter 함수