SAP 시스템을 운영하다 보면 가장 당혹스러운 순간 중 하나가 바로 표준 트랜잭션에서 발생하는 Dump(T-code ST22)일 것입니다.
특히 데이터베이스 모니터링의 핵심인 ST04(Oracle Cockpit)에서 발생하는 에러는 운영자에게 큰 스트레스를 주곤 하죠.
오늘은 ST04 실행 시 발생하는 "Runtime Error - DYNPRO_FIELD_CONVERSION, FX015: Sign lost " 에러의 원인과 해결 방법을 완벽하게 정리해 드리겠습니다.
🚩 에러 현상 파악
먼저 발생한 덤프의 핵심 내용을 복기해 보겠습니다.
- Screen name : SAPLS_ORA_COCKPIT_2
- Screen Number: 0001
- Screen Field: ST04N_DATA-DBUFF_BUSYWAITS
- 에러 메시지: FX015: Sign lost
이 에러는 ABAP 프로그램이 계산한 결과값이나 DB에서 가져온 값이 화면(Screen)에 정의된 필드 속성과 맞지 않을 때 발생합니다.
특히 "Sign lost"는 출력하려는 값에 음수 부호(-)가 포함되어 있는데, 화면 필드는 부호를 표시할 공간이 없거나 양수 전용으로 설정되어 부호가 잘려 나갈 때 발생합니다.
🔍 원인 분석: 왜 부호(Sign)가 생기는 걸까?
Oracle 데이터베이스의 통계 값은 기본적으로 누적 카운터입니다.
하지만 다음과 같은 상황에서 비정상적인 값이나 음수가 발생할 수 있습니다.
- 카운터 오버플로우 (Wrap-around): Oracle 내부의 통계 카운터가 최대치를 넘어 다시 0부터 시작할 때, SAP가 이전 값과의 차이를 계산하는 과정에서 일시적으로 음수가 발생할 수 있습니다.
- Oracle 버그 또는 버전 특성: 특정 Oracle 버전(특히 12c 이상)에서 v$sysstat 등의 뷰가 반환하는 데이터 형식이 SAP의 기존 UI 설계와 충돌하는 경우입니다.
- UI 필드 설계 한계: DBUFF_BUSYWAITS 필드는 시스템 설계 당시 매우 큰 수치나 음수를 고려하지 않았을 수 있습니다.
🛠️ 해결 단계별 가이드
1. SAP Note 적용
SAP는 이러한 표준 프로그램의 결함을 수정하기 위해 이미 여러 노트를 배포했습니다.
SNOTE 트랜잭션에서 다음 노트를 조회하고 적용 가능 여부를 확인하세요.
- https://community.sap.com/t5/technology-q-a/getting-a-dump-in-st04-dynpro-field-conversion/qaq-p/5516155
- SAP Note 1703434: https://userapps.support.sap.com/sap/support/knowledge/en/1703434
1703434 - ABAP Short Dump DYNPRO_FIELD_CONVERSION in DBACOCKPIT | SAP Knowledge Base Article
Symptom If you try to display the size information for a database table in transaction DBACOCKPIT it dumps with following error message: DYNPRO_FIELD_CONVERSION Short text: conversion error Screen name.............. "SAPLSMSSCCMS"Screen number............
userapps.support.sap.com
2. SAP 커널(Kernel) 업데이트
표준 프로그램 수정으로 해결되지 않는다면, DB 라이브러리와 통신하는 커널의 패치 레벨이 낮을 수 있습니다.
- T-Code: SM51 -> Release Notes에서 현재 커널 버전을 확인하세요.
- 특히 dboraslib (Oracle DB Library) 관련 최신 패치가 포함된 커널로 업데이트하면 해결되는 경우가 많습니다.
3. Oracle 통계 정보 갱신
DB 레벨에서 잘못된 통계 값을 제공하고 있는지 확인해야 합니다.
- SQL 실행: SELECT name, value FROM v$sysstat WHERE name = 'buffer busy waits';
- 만약 위 쿼리 결과가 비정상적으로 크거나 이상 현상을 보인다면, Oracle Dictionary 통계를 갱신하거나 인스턴스 재기동을 고려해야 할 수도 있습니다. (단, 운영 환경에서는 신중해야 합니다.)
💡 임시 대처법
당장 운영 환경에 노트를 적용하거나 시스템을 재시작하기 어렵다면, Tcode ST04 대신 DBACockpit을 사용해 보세요.
Tip: ST04는 특정 화면(Screen 0001)에서 덤프가 발생하지만, DBACockpit 트랜잭션을 통해 다른 경로(예: Performance -> Wait Events)로 접근하면 동일한 데이터를 덤프 없이 확인할 수 있는 경우가 많습니다.
✅ 요약 및 결론
ST04 FX015 에러는 데이터의 수치가 UI의 수용 범위를 벗어나 부호가 누락되면서 발생하는 표준 프로그램의 UI 제약 사항 때문입니다.
- ST22에서 어떤 필드(예: DBUFF_BUSYWAITS)인지 확인한다.
- SAP Note를 최우선으로 검토한다.
- 필요시 Kernel 업데이트를 통해 DB 통신 안정성을 확보한다.
'ERP(SAP)' 카테고리의 다른 글
| [SAP] Fiori(피오리)란 무엇인가? - 개념, 학습, 강의 추천 (0) | 2026.04.09 |
|---|---|
| [SAP] QM Inspection Lot(품질검사의뢰)란? (1) | 2026.04.08 |
| SAP S/4HANA 출력 관리의 혁명: OPD ( BRF+ ) (0) | 2026.04.06 |
| [SAP] SD 2nd GI (2-Step Goods Issue) 프로세스 정리 (0) | 2026.04.02 |
| [SAP] Green Ledger란 무엇인가? SAP 탄소회계 솔루션 (0) | 2026.03.27 |
