솔루션 홈
OB08 · 외화 관리

SAP 환율 마스터 점검 — 며칠째 갱신되지 않았는가

통화쌍과 환율유형별로 마지막 갱신일을 확인하고, 미갱신 경과일수로 누락된 환율을 찾아내는 화면입니다.

환율이 없으면 외화 전표가 전기되지 않습니다. 그런데 환율 등록은 자동 배치로 돌아가는 경우가 많아 멈춰도 아무도 모릅니다.

결산일에 평가환율이 없는 것을 발견하면 그때부터 급해집니다. 표준 환율 마스터 구조를 그대로 이어받아 통화쌍마다 마지막 갱신일과 경과일수를 보여 주도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 2종을 함께 공개합니다.

SAP 표준 기능을 그대로 이어받은 부분

  • 통화쌍 — 원통화(FromCurr)와 대상통화(ToCurr)
  • 환율유형 — RateType 로 매입률·매도률·기준율 구분
  • 환율 — 환율값(ExchRate)과 환산비율(Ratio)
  • 유효일 — 환율 적용 시작일(RateDate)
  • 등록자 — 환율을 입력한 사용자(ChangedBy)
항목내용
대응 T-codeOB08 (환율 입력) · TCURR
업무 영역재무회계(FI) · 외화 관리 · 결산
Namespacezui5.fxratechk
셸 구조조회조건 영역(우측 조회·초기화) + 통화쌍별 점검 목록
화면 수조회 화면 1개
데이터환율 이력 331건
성격조회형(Read-Only) — 환율 등록은 표준이 담당
UI 테마sap_horizon 단일 적용

실제 화면 1종 둘러보기

기준일·환율유형·통화로 조회하면 통화쌍별 최근 환율이 나옵니다 → 경과일수가 긴 통화쌍을 가려내고 → 등록자와 이력으로 배치가 멈춘 지점을 확인합니다.

아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.

OB08 — Main.view.xml
초기 진입 화면과 환율 점검
초기 진입 화면과 환율 점검 — 기준일·환율유형·통화를 고르면 통화쌍마다 마지막 환율일·환율값·환산비율·경과일수·등록자가 이어집니다. 경과일이 긴 통화쌍은 상태 색으로 먼저 보입니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.

조작 방법

  1. 기준일을 넣습니다. 이 날짜에서 마지막 환율일을 빼 경과일이 계산됩니다.
  2. 환율유형을 고릅니다. 기준율·매입률·매도률이 각각 따로 관리됩니다.
  3. 통화로 특정 통화쌍만 볼 수 있습니다.
  4. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
  5. 경과일수가 긴 통화쌍부터 확인합니다. 배치 누락이나 신규 통화일 수 있습니다.
  6. 등록자가 배치 계정이 아니라 사람이면 수동 입력된 환율입니다.
  7. 결과는 CSV 다운로드로 내려받습니다.

경과일 판정 규칙

계산은 뺄셈 하나이고, 판단은 통화 사용 빈도에 달렸습니다.

경과일수 = 기준일 − 마지막 환율일(RateDate)

경과일 0~2일   →  정상 — 영업일 기준 최신
경과일 3~7일   →  주의 — 배치 확인
경과일 8일 이상 →  이상 — 등록 누락 가능

원화환산 = 외화금액 × 환율 ÷ 환산비율(Ratio)

환산비율을 함께 보는 이유

일부 통화는 1 단위가 아니라 100 단위나 1,000 단위로 환율을 고시합니다. 환산비율을 빼고 환율만 보면 금액이 100배 틀릴 수 있습니다. 엔화나 인도네시아 루피아처럼 단위가 큰 통화에서 실제로 생기는 오류라 열로 둡니다.

환율이 필요한 네 가지 상황

상황쓰임환율유형
외화 전표 전기거래 시점 환율로 원화환산기준율
결산 외화평가평가 시점 환율로 재평가평가환율
해외법인 연결재무제표 환산기말·평균환율
지급·입금실제 거래 환율매입률·매도률

유형별로 별도 관리되므로 하나가 누락되면 그 업무만 막힙니다.

조회조건

필드필수설명
기준일필수경과일 계산 기준
환율유형 RateType선택M 기준율 · B 매입률 · G 매도률
원통화 FromCurr선택USD · EUR · CNY 등
대상통화 ToCurr선택보통 KRW
상태선택전체 / 경과일 초과만

결과 컬럼

컬럼의미 · 표시
원통화 FromCurr · 대상통화 ToCurr통화쌍
환율유형 RateType기준율 · 매입률 등
마지막 환율일 RateDate최근 등록 유효일
환율 ExchRate적용 환율값
환산비율 Ratio1 · 100 · 1000 등
경과일수기준일 − 마지막 환율일. 구간별 상태 색
등록자 ChangedBy배치 또는 수동 입력자
이력 건수해당 통화쌍의 누적 등록 수

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
OB08환율 입력·유지보수통화쌍별 미갱신 경과일을 계산해 점검
TCURR환율 테이블조회 원천
TCURF환산 계수환산비율
TCURV환율유형 설정유형별 구분
FAGL_FCV외화평가평가환율 필요 시점

도입 시 확인이 필요한 부분

환율은 보통 외부 시세 제공 서비스에서 자동으로 받아 옵니다. 그 연계가 멈춰도 오류가 나지 않고 단지 등록이 안 될 뿐이라, 이 화면이 사실상 배치 감시 역할을 합니다. 영업일 기준과 휴일 처리를 어떻게 볼지도 경과일 판정에 반영해야 합니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCFXRATECHK'
@EndUserText.label: '환율 마스터 점검 (Z)'
define view Z_C_FX_RATE_CHECK
  as select from tcurr as Rate
    left outer join tcurf as Factor on Rate.kurst = Factor.kurst
                                   and Rate.fcurr = Factor.fcurr
                                   and Rate.tcurr = Factor.tcurr
{
  key Rate.kurst as RateType,
  key Rate.fcurr as FromCurr,
  key Rate.tcurr as ToCurr,
      // 유효일은 역순 저장이므로 변환 필요
      max( Rate.gdatu ) as LastRateDate,
      Factor.ffact      as Ratio
      // 경과일수 = 기준일 − 마지막 환율일 (소비 뷰에서 계산)
}
group by Rate.kurst, Rate.fcurr, Rate.tcurr, Factor.ffact

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 영역 · 점검 테이블
조회조건sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화
이벤트모든 버튼이 onPAI 단일 진입점, fcCode 로 분기
점검 테이블sap.m.Table — 경과일 내림차순 기본 정렬
상태 표시sap.m.ObjectStatus — 경과일 구간별 색
환율sap.m.ObjectNumber — 소수점 자릿수 유지

경과일 내림차순을 기본으로 둔 이유

통화쌍이 수십 개여도 문제가 되는 것은 갱신이 멈춘 몇 개뿐입니다. 경과일이 긴 순으로 정렬해 두면 화면을 여는 순간 확인할 대상이 맨 위에 모입니다. 나머지는 볼 필요가 없습니다.

파일 구성

경로역할
manifest.json앱 디스크립터 — 앱 ID(zui5.fxratechk) · ko 로케일
view/Main.view.xml조회조건과 점검 테이블
controller/Main.controller.js조회 · 경과일 계산 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js환율 · 일자 · 상태 색 포맷터
localdata/fxratehist.json환율 이력 331건

검증 결과

검증 항목결과
경과일수 = 기준일 − 마지막 환율일 (전 통화쌍)통과
통화쌍별 마지막 환율일이 이력 최대값과 일치통과
환산비율이 1 · 10 · 100 · 1000 중 하나통과
환율값이 양수통과
환율유형 코드가 설정 값과 일치통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 조회 후 캡처2/2
테마 런타임 확인sap_horizon

자주 묻는 질문

주말과 휴일은 어떻게 계산하나요?

영업일 기준으로 보는 것이 맞습니다. 달력일로만 세면 연휴 뒤에는 모든 통화가 경과일 초과로 잡혀 경고가 의미를 잃습니다. 영업일 달력을 참조하도록 설정하는 편이 좋습니다.

환율유형을 왜 따로 보나요?

용도가 다르기 때문입니다. 전표 전기는 기준율, 결산 평가는 평가환율, 실제 송금은 매입·매도률을 씁니다. 하나만 등록되고 다른 유형이 빠지면 그 업무만 막힙니다.

신규 통화를 추가하면요?

등록 이력이 없어 경과일이 매우 크게 나옵니다. 정상이지만 경고로 보이므로, 신규 통화는 첫 환율 등록 전까지 제외하거나 별도 표시하는 편이 낫습니다.

SAP 표준 기능과 어떻게 이어지나요?

환율 등록은 OB08 과 외부 연계 배치가 담당합니다. 이 화면은 그 결과를 통화쌍별로 모아 마지막 갱신일과 경과일을 계산해, 배치가 멈춘 것을 결산 전에 알아채게 하는 확장입니다.

환율 관리, 지금 쓰는 SAP 위에서 확장해 보세요

환율 배치가 멈춘 것을 결산일에 알면 늦습니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

환율환율마스터TCURROB08외화환산환율점검해외법인OpenUI5