본문 바로가기

CO IMG 세팅

#3. CO 전표 번호범위 세팅

배경 설명

'IMG 세팅' 카테고리에서는 개별 IMG Configuration 매뉴얼을 작성하고자 한다. 각 IMG 세팅의 목적, 연결관계, 용례, 개별 필드의 의미 등에 대해 기술한다. 나의 경험과 각종 교재, SAP HELP 문서 등을 참조해서 작성하겠지만 정답은 아닐 수 있다. 솔직히 이건 왜 있는 건지 제대로 모르는 메뉴도 많다. 참고해서 봐주시길 바라며 많은 도움이 되길 빈다.


 

1. 개요

 

SAP에 '번호범위 오브젝트(Number Range Object)'라는 게 있다. 번호범위 오브젝트란 목적에 따라 지정될 번호의 범위를 설정하는 오브젝트를 말한다.

 

전표를 예로 들면 생성할 때마다 1번, 2번, 3번... 이렇게 이어서 관리목적의 번호가 생긴다. 이렇게 생긴 전표번호는 전표 하나하나 마다 고유한 값으로 지정하여 다른 전표와 구분할 수 있게끔 한다.

 

'총계정원장(G/L: General Ledger)'에 기록되는 FI 전표의 번호범위는 FI의 IMG에서 세팅한다(T-CODE: FBN1). 그럼 CO 전표라는 건 무엇이고 어디서 세팅할까? CO 전표(관리회계 전표)란 총계정원장과 별도인 관리회계 원장에 기록되는 전표를 말한다. 따라서 당연히 CO의 IMG에서 세팅하는 부분이다.

 

이제부터 CO 전표의 번호범위를 세팅하는 화면을 함께 살펴보자.

 

 


 

2. IMG PATH

 

IMG PATH

 

  • PATH: 관리회계 > 일반 관리회계 > 조직 > CO전표의 번호범위 유지보수
  • T-CODE: KANK
  • T-CODE: SNRO, SNUM (이 경우 번호범위 오브젝트 'RK_BELEG' 입력)

 

 


 

3. 화면 설명

 

T-CODE: KANK(CO 전표 번호범위 유지보수)의 초기화면

 

초기화면을 보면 번호범위 오브젝트는 'RK_BELEG'로 자동 지정되어 있고, 하위 오브젝트로 '관리회계 영역'을 입력하게 되어 있다. 우리가 앞서 생성했던 관리회계 영역 코드를 여기에 입력하면 된다.

 

 

상단에 여러 버튼이 있고 하단에도 버튼이 있는데 하단의 버튼은 우리가 입력할 새로운 관리회계 영역에 대해서는 아무 값도 존재하지 않는다고 나올 것이다. 우선 상단의 '개요' 버튼부터 눌러보자.

 

 

상단 메뉴 구성

 

(1) 개요

개요 버튼을 누르면 모든 관리회계 영역에서 번호범위가 지정된 구조를 보여준다. SAP 시스템을 설치하면 여러 샘플 관리회계 영역 코드가 있으므로 그에 대한 번호범위도 조회된다. 우리는 참고만 하고 넘어가자.

 

 

그룹 개요 화면

 

 

(2) 그룹 조회
관리회계 영역을 입력하고 그룹 조회 버튼을 누르면, 해당 관리회계 영역에서 지정된 번호범위 구조가 조회된다.

 

 

그룹 조회

 

만약 신규로 만든 관리회계 영역이라면 '지정되지 않은 요소'에 모든 요소가 지정되어 있을 것이다. 지금 그림에서는 일부 요소를 제외하고는 대부분의 요소가 그룹에 지정된 상태이다.

 

그럼 여기서 보이는 '요소'라는 4자리 코드는 무엇을 뜻하는가? 바로 CO의 '비즈니스 트랜잭션'을 뜻한다. CO는 다양한 트랜잭션에 따라 전표가 생성되는데 이런 트랜잭션을 유형에 따라 묶어 놓은 것을 '비즈니스 트랜잭션'이라고 한다. 예를 들어 "COIN"이란 비즈니스 트랜잭션은 그 내역을 보면 "FI에서 CO로 전기"라고 되어 있는데 이는 설명 그대로 FI 전표가 생겼을 때 자동으로 생성되는 CO 전표에 대한 걸 말한다.

 

 

T-CODE: OKC1(CO 비즈니스 트랜잭션 조회)

 

비즈니스 트랜잭션은 T-CODE: OKC1에서 조회할 수 있다. 테이블은 TJ01이다. 이 세팅은 사용자가 변경할 수 없고 SAP에서 직접 관리한다. 버전업에 따라 새로 추가되는 건 있어도 기존 것이 변경되는 일은 99% 없으니 개발할 때 그냥 하드코딩해도 되는 항목이라 생각한다. SAP에서 직접 개발한 스탠다드 프로그램들도 보면 이 비즈니스 트랜잭션 코드를 하드코딩해둔 게 많다.

 

아무튼 여기서 비즈니스 트랜잭션에 대한 설명 텍스트를 확인할 수 있으니 참고하면 된다. 그런데 이 설명만으로 부족해서 더 구체적으로 알고 싶다면??? 별도 매뉴얼은 없으니 직접 테스트을 통해 확인하는 방법 밖에 없다... SAP가 이렇다 ㅜㅜ

 

참고로 CO 전표가 이렇게 '비즈니스 트랜잭션'에 따라 그룹핑하여 관리하는 한편, FI는 '전표 유형'에 따라 그룹핑하는 차이점이 있다.

 

 

(3) 그룹 변경

그룹을 생성, 변경하고 비즈니스 트랜잭션을 그룹 내에 지정하는 화면이다. 바로 이 그룹단위로 비즈니스 트랜잭션을 묶어 번호 범위를 지정하는 것이다.

 

 

그룹 변경

 

상단의 '변경'이나 '생성' 버튼을 눌러보자.

 

 

그룹 변경: 간격 편집

 

'그룹'에는 해당 그룹의 텍스트를 입력하고, '번호범위번호'에는 해당 그룹의 번호를 입력한다. 그리고 번호 범위의 시작번호와 종료번호를 입력하면 된다. 이때 시작번호와 종료번호의 범위는 다른 그룹과 겹치면 안 된다.

 

'NR 상태'는 현재 해당 범위에서 생성된 가장 최신의 번호를 보여주는데 우리는 새로 만드는 범위이니 이 값이 '0'으로 지정되어 있을 것이다.

 

그 옆에 '외부'라는 체크표시는 번호범위를 자동생성이 아닌 사용자 입력으로 받을 때 사용한다. CO 전표는 사용자가 직접 입력하는 게 아니고 대부분 타 모듈로부터 자동으로 생성되는 것이므로 체크 해제한다. 체크를 해제하면 번호범위에 따라 순차적으로 전표가 생성되게 된다. 

 

 

비즈니스 트랜잭션을 번호범위 그룹에 지정

 

비즈니스 트랜잭션을 번호범위 그룹에 지정

 

 

그룹을 생성한 다음에는 비즈니스 트랜잭션을 해당 그룹에 지정한다. 가급적 모든 비즈니스 트랜잭션에 대해서 빠짐 없이 지정해놔야 운영상에 에러가 안 생긴다. 특정 비즈니스 트랜잭션에 해당 하는 번호범위가 없을 경우 전표 자체를 생성할 수 없게 되기 때문이다.

 

 

S/4HANA 변화 사항
S/4HANA부터는 FI 원장(총계정원장)과 CO 원장이 하나로 통합되었다. 시스템 테이블로는, 총계정원장은 BKPF, BSEG였고 CO 원장은 COEP였다. 이 두 원장이 통합원장(Universal Journal)으로 합쳐졌고, 이제 테이블 ACDOCA로 집계된다.

이렇게 두 원장이 하나로 합쳐지면서 FI에서 CO로 들어오는 전표(비즈니스 트랜잭션 'COIN')에 대해서는 별도의 CO 전표 번호범위가 필요없게 됐다.

따라서 여기서 비즈니스 트랜잭션 'COIN'으로 발생하는 CO 전표는 여기서 설정한 번호범위가 아니라 FI 회계전표 번호에 따라 특정한 규칙으로 생성된 테크니컬 코드로 전표번호가 생성된다. 테이블 ACDOCA 내에서 CO_BELNR이란 필드가 바로 이거다. 따라서 S/4HANA부터는 비즈니스 트랜잭션 'COIN'에 대해 번호범위를 지정하지 않아도 무방하다. 이와 관련하여 『SAP NOTE: 2432129 - FAQ: CO document number for Financial Accouting』을 참조.

 

 

(4) 하위 오브젝트 복사

다른 CO 영역의 번호범위 세팅을 복사한다.

 

 

복사

 

'시작'에는 복사할 Source 관리회계 영역을, '종료'에는 복사받을 Target 관리회계 영역을 입력한다. SAP에서 기본으로 제공하는 샘플 관리회계 영역인 'KR01'을 복사해서 생성하면 편하다. 복사 기능을 활용하지 않으면 그룹부터 한땀한땀 만들어줘야 한다. 

 

 

(5) 변경문서

CO 전표 번호범위 오브젝트인 'RK_BELEG'의 변경이력을 조회한다.

 

 

변경 문서

 

 

(6) 간격 조회/간격 변경

그룹별 시작 번호와 끝 번호 간격을 조회하거나 수정한다.

 

 

간격 조회/간격 변경

 

전체 그룹의 시작번호와 종료번호, NR 상태를 입력할 수 있다.

 

 

NR 상태(Number Range 상태)

 

'NR 상태'에 있는 번호는 현재 해당 번호범위에서 생성된 가장 최신의 전표번호다. 상단의 연필 버튼을 클릭하면 'NR 상태'를 변경할 수 있게 된다. 이때는 현재 번호보다 큰 번호로만 입력 가능하다.

 

번호범위는 기본적으로 이런 자동 채번 규칙 때문에 시스템 간 전송을 하면 안 된다. 기능 자체는 있지만(T-CODE: OKE5에서 가능) 가급적 안 하는 게 좋다.

 

SAP에서는 개발, 품질(테스트), 운영의 세 가지 시스템으로 구성해두고, IMG 세팅사항은 개발 시스템으로부터 품질, 운영으로 전송해서 적용하는 방식이 일반적이다. 다른 세팅은 이렇게 전송하는 방식으로 해도 별 문제가 없으나 이 번호범위만은 각 시스템에서 직접 세팅하는 게 좋다.

 

전송 없이 NR 상태를 현재 번호보다 작게 입력하면 시스템 내에서 오류로 표시하여 막히지만, CTS를 통해 전송하는 경우에는 그런 Valiation이 먹히지 않는다. 따라서 현재 번호보다 작은 번호로 입력되어버릴 수 있고, 대부분의 전표번호는 테이블에서 Key로 존재하므로 심각한 에러를 발생시키게 된다.

 

따라서 전송하더라도 전송 받을 시스템의 NR 상태가 0인 아주 특별한 경우에만 전송하는 게 좋고, 사실 그런 상황은 거의 없다고 봐도 된다. 행여 그런 조건에 맞더라도 트랜잭션 데이터를 함께 전송하지 않는 상황에서 번호범위 상태만 전송할 필요성은 대부분 없을 것이다.

 

 

 


 

4. 관련 테이블

 

  • NRIV: 번호범위 간격 테이블
  • TNRGT: 번호범위 그룹 텍스트
  • TKA04: CO 비즈니스 트랜잭션과 번호범위 그룹 매핑 테이블

 

TABLE: NRIV(번호범위간격)

 

이 테이블에서 CO 전표의 번호범위뿐만 아니라 다른 모든 번호범위 오브젝트의 번호범위 간격을 확인할 수 있다. 

 

 

TABLE: TNRGT(번호범위 오브젝트 그룹의 텍스트)

 

이 테이블은 번호범위 내 그룹의 텍스트를 저장한다.

 

 

TABLE: TKA04(CO 전표에 대한 번호범위)

 

이 테이블은 CO 비즈니스 트랜잭션에 번호범위 그룹 매핑이 저장된다.

 

 


 

5. 이어서...


이어서 CO 버전, 통화유형에 대해 알아볼 예정이다. CO 일반세팅에 대해서만도 한참 진행될 것 같다.