본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

SAP OData Explorer

0

SAP OData Explorer는 실제 SAP 시스템의 OData 서비스를 탐색하고 메타데이터를 살펴보며 쿼리를 실행할 수 있는 도구입니다.

개발 도구

소개

SAP OData Explorer는 실제 SAP 시스템의 OData 서비스를 탐색하고 메타데이터를 살펴보며 쿼리를 실행할 수 있는 도구입니다. kts982가 개발한 이 오픈소스 프로젝트는 OData V2 및 V4 서비스를 지원하며, SAP Gateway 카탈로그 발견, 엔티티 탐색, 시각적 쿼리 빌더, 결과 그리드, HTTP 인스펙터, SAP View 오버레이, Fiori-readiness 린터, 오프라인 모드 등을 제공합니다. MIT 라이선스로 배포되며, Windows, Linux, macOS에서 실행 가능합니다.

상세정보

서비스 발견 및 엔티티 탐색

SAP Gateway 카탈로그에서 OData V2 및 V4 서비스를 검색하고 browsable하게 제공합니다. 서비스 선택 후 엔티티 세트, 속성, 키, 네비게이션 속성, 라벨을 탐색할 수 있으며, $select, $expand, $filter, $orderby, $top, $skip을 인터랙티브하게 구성할 수 있는 시각적 쿼리 빌더를 제공합니다.

결과 및 트레이스 분석

쿼리 실행 결과를 탭ular 그리드로 표시하며, $expand로 인한 중첩 데이터도 확장 가능하게 보여줍니다. 데스크톱 앱에서는 요청/응답 헤더, 바디 프리뷰, 타이밍을 포함한 HTTP 트레이스를 탭별로 검사할 수 있으며, 이는 CLI에서도 –verbose 플래그를 통해 동일하게 이용 가능합니다.

SAP-aware 기능

SAP View 오버레이를 통해 서비스에 정의된 SAP/UI5 annotation을 읽어 Fiori-aware 컬럼 순서, 필터 칩, F4 값 도움말 피커, 제한 사항 검증을 적용할 수 있습니다. Fiori-readiness 린터는 서비스 annotation을 객체 페이지/리포트 체크리스트와 비교하여 dangling Path 참조를 탐지하고 ABAP CDS 수정 힌트를 제공합니다. 또한, 404/403/5xx 오류 시 /IWFND/MAINT_SERVICE, /IWFND/ERROR_LOG, ST22 또는 브라우저 SSO 로그인 흐름을 안내하는 힌트를 제공합니다.

연결 및 오프라인 모드

연결 프로파일을 통해 SAP 시스템 정보를 저장하고, 기본 인증 시 OS 키링에 자격 증명을 보관합니다. 오프라인 모드에서는 연결된 시스템의 $metadata를 저장하거나 디스크의 EDMX 파일을 가져와 네트워크 없이도 메타데이터 탐색, 린트, annotation 보기 등을 수행할 수 있으며, 캐시된 서비스는 [OFFLINE] 배지로 표시됩니다.

데스크톱 앱 (Windows)

Winget을 통해 winget install kts982.SAPODataExplorer 명령으로 설치할 수 있으며, GitHub 릴리스 페이지에서 MSI, NSIS 또는 포터블 실행 파일을 다운로드하여 수동 설치도 가능합니다. 포터블 버전은 설치 없이 실행 가능하여 관리자 권한이 없는 환경에서도 활용할 수 있습니다.

기본 사용법

앱 실행 후 프로파일 드롭다운 옆의 + 버튼을 클릭해 SAP 시스템을 추가하고, 인증 방식(Basic, Windows SSO, Browser SSO)을 선택해 저장합니다. Browser SSO 프로파일의 경우 데스크톱 앱에서 Sign In 버튼을 클릭해 최초 로그인 흐름을 완료해야 합니다. 프로파일 저장 후 Search 입력란을 이용해 OData 서비스를 검색하거나 전체 경로를 직접 입력할 수 있습니다. 서비스 선택 후 왼쪽 패널에서 엔티티를 클릭하고, 중간 패널에서 속성을 선택해 $select에 추가하거나 네비게이션 속성을 선택해 $expand를 설정한 뒤 하단의 Run 버튼을 클릭해 쿼리를 실행합니다. 결과는 하단 테이블에 표시되며, 오른쪽 상단의 Search 입력란과 URL 버튼을 이용해 추가 검색 또는 직접 URL 입력이 가능합니다.

CLI 사용법

sap-odata setup 명령으로 인터랙티브 프로파일 추가 위зар드를 실행할 수 있습니다. 이후 sap-odata -p DEV services로 서비스 목록을 확인하고, sap-odata -p DEV -s API_WAREHOUSE_2 entities로 엔티티 세트를 목록화할 수 있습니다. sap-odata -p DEV -s API_WAREHOUSE_2 describe Warehouse로 엔티티 속성을 확인하고, sap-odata -p DEV -s API_WAREHOUSE_2 run Warehouse --top 5로 쿼리를 실행해 결과를 표 형태로 확인할 수 있습니다. 모든 명령에 --verbose 플래그를 추가하면 HTTP 트레이스를 stderr로 출력할 수 있으며, 이는 데스크톱 앱의 인스펙터와 동일한 정보를 제공합니다. 오프라인 모드는 sap-odata -p DEV -s API_WAREHOUSE_2 offline save로 $metadata를 캐시하고, sap-odata offline import ./file.edmx로 EDMX 파일을 가져올 수 있습니다.

화면으로 보는 주요 기능

OData Explorer 화면

OData Explorer 화면

SAP OData Explorer 인터페이스에서 'WarehousePhysicalStockProducts' 엔티티를 선택한 상태로, 왼쪽에는 엔티티 목록이, 중앙에는 엔티티 속성과 필터 설정이, 하단에는 쿼리 결과 테이블이 표시되어 있다. 'Run' 버튼을 통해 쿼리를 실행할 수 있으며, 결과 테이블에는 'Product', 'ProductDescription', 'EWMStorageBin' 등의 컬럼이 포함되어 있다. 오른쪽 상단에는 'Search' 입력란과 'URL' 버튼이 있다.

시스템 요구사항

Rust 1.85+ 및 Node.js 20+가 소스 빌드 시 필요합니다. Windows에서는 Winget, MSI, NSIS 또는 포터블 실행 파일을 통해 설치할 수 있으며, 기본 인증 시 OS 키링에 자격 증명이 저장됩니다. 브라우저 기반 SSO의 경우 데스크톱 앱에서 최초 로그인 후 CLI가 세션을 재사용합니다.