SAP 생산오더 번호, 다 쓰면 큰일? (feat. 12자리 숫자의 비밀)

안녕하세요. Rabbit입니다! 🐰

오늘은 실무에서 정말 많이 궁금해하시는 SAP 생산오더 번호에 대해 이야기해 보려고 해요.

“삭제한 오더 번호, 다시 쓸 수 있나요?”, “오더 번호가 꽉 차면 어떡하죠?”

이런 질문들, 한 번쯤은 머릿속에 떠올려 보셨을 텐데요.

이 복잡해 보이는 SAP 생산오더 번호의 규칙을 은행 순번대기표에 비유해서 아주 쉽고 명쾌하게 설명해 드릴게요!

은행에서 번호표 뽑는 것만 상상하시면, 오늘 내용은 이미 반은 마스터하신 겁니다.


SAP 생산오더 번호, 한번 뽑으면 그걸로 끝!

결론부터 딱 말씀드릴게요.

SAP에서 한 번 생성된 생산오더는 삭제하더라도, 그 번호는 절대 다시 사용할 수 없습니다.

마치 은행에서 내가 ’25번’ 대기표를 뽑았다가, “아, 그냥 다음에 올게요!” 하고 종이를 구겨서 버렸다고 생각해보세요. 그렇다고 다음 사람이 ’25번’ 표를 다시 뽑을 수 있나요? 아니죠! 기계는 무조건 다음 번호인 ’26번’을 뱉어냅니다.

SAP 시스템도 똑같아요. 오더를 생성하는 순간, 그 번호는 시스템 역사에 기록됩니다.

우리가 ‘삭제’라고 부르는 작업은 사실 데이터를 영구적으로 지우는 게 아니라, “이 오더는 이제 사용 안 함!” 하고 ‘삭제 플래그(Delete Flag)’라는 꼬리표를 붙여두는 개념에 가까워요.

한번 세상에 태어난 번호는 그 흔적이 남아서, 절대 다른 오더에게 그 자리를 내주지 않는 거죠.


옆 공장이랑 번호 겹치면? (유니크 기준의 비밀)

“그런데 이 번호, 우리 공장에서만 안 겹치면 되는 건가요? 아니면 회사 전체에서 유일해야 하나요?”

이거 정말 중요한 질문입니다.

정답은 클라이언트(Client) 단위에서 유일해야 한다입니다. 여기서 클라이언트는 SAP 시스템의 가장 큰 단위로, 여러 회사 코드(법인)나 플랜트(공장)가 하나의 클라이언트 안에 들어 있을 수 있어요.

즉, 같은 SAP 시스템 안에서는 회사나 공장이 달라도 똑같은 생산오더 번호를 절대 쓸 수 없다는 뜻입니다.

  • 1000 회사 / A 공장에서 오더 12345678 생성 → OK!
  • 2000 회사 / B 공장에서 오더 12345678 생성 → 에러 발생!

왜 그럴까요? 그 이유는 생산오더의 대장 테이블인 AUFK를 보면 명확해져요.

이 테이블의 ‘주인공’, 즉 데이터를 구분하는 유일한 열쇠(Key Field)가 딱 AUFNR(오더 번호) 하나거든요.

회사 코드(BUKRS)나 플랜트(WERKS) 정보도 테이블에 있긴 하지만, 이들은 주인공을 꾸며주는 ‘조연'(단순 속성)일 뿐, 키 필드가 아니에요. 그래서 SAP는 오직 ‘오더 번호’ 하나만으로 모든 오더를 식별해야 하는 거죠.

그래서 보통 실무에서는 여러 공장을 한 시스템에서 운영할 때, 아예 처음부터 공장별로 번호가 겹치지 않도록 범위를 나눠서 할당해줘요. “A 공장은 10000000번대 쓰세요! B 공장은 20000000번대 쓰시고요!” 하고 땅을 나눠주는 거죠. 이렇게 하면 충돌할 일이 없으니까요.


우리 회사 오더는 몇 개나 될까? (feat. AUFK 테이블)

“이론은 알겠는데, 그래서 우리 회사 데이터는 어디서 보나요?”

좋은 질문입니다! 바로 확인해 보죠.

SAP의 모든 데이터는 ‘테이블’이라는 거대한 엑셀 파일에 저장되어 있다고 생각하면 쉬워요. 그리고 생산오더의 마스터 정보는 위에서 언급한 AUFK라는 테이블에 차곡차곡 쌓인답니다.

SAP 생산오더 번호 확인을 위해 SE11 T-CODE를 입력하는 화면
T-CODE 입력창에 SE11을 입력하고 엔터를 누릅니다. 데이터의 보물창고로 들어가는 열쇠예요.

SE11은 ABAP Dictionary, 즉 SAP에 있는 모든 테이블의 구조를 볼 수 있는 곳이에요.

SAP 생산오더 번호가 저장된 AUFK 테이블을 조회하는 화면
Database table에 AUFK를 입력하고 ‘Display’ 버튼을 눌러줍니다.

자, 이제 AUFK 테이블의 뼈대를 구경할 차례입니다.

AUFK 테이블의 필드 구조, SAP 생산오더 번호 관련 데이터 포함
AUFK 테이블에는 오더 번호(AUFNR), 오더 유형(AUART) 등 다양한 정보가 필드로 정의되어 있어요.

구조를 봤으니 이제 실제 데이터가 얼마나 쌓여있는지 확인해 볼까요? ‘내용’ 버튼을 누르면 됩니다.

AUFK 테이블에 저장된 전체 SAP 생산오더 번호 개수 확인
와! 이 시스템에는 약 110만 개의 오더가 생성되었네요.

여기서 바로 ‘엔트리수’ 버튼을 누르면, 이 테이블에 저장된 전체 오더 개수를 확인할 수 있어요.

특정 기간 동안 생성된 SAP 생산 오더 번호 개수 조회 결
1년 동안 생성된 오더 개수는 867,723개로 확인됩니다.

특정 기간 동안 생성된 오더 개수가 궁금하다면? 생성일(ERDAT) 필드에 날짜 범위를 지정해주면 됩니다. 예를 들어 1년 치 데이터를 조회해 보니, 867,723건의 오더가 생성된 것을 확인할 수 있었어요. 1년에 약 87만 개의 번호표가 뽑힌 셈이죠!


이 필드는 뭐지? SAP 최고의 치트키, F1!

SAP 화면을 보다 보면 WERKS? BUKRS? ERNAM? 이게 다 무슨 외계어인가 싶을 때가 정말 많죠. 그때마다 사수나 동료에게 “이거 뭐예요?” 하고 물어보기도 눈치 보이고요.

이럴 때를 위한 SAP 최고의 비밀병기, 바로 F1 키를 기억하세요!

사용법은 정말 간단합니다. 알고 싶은 필드에 마우스 커서를 딱! 올려놓고, 키보드에서 F1 키를 살포시 눌러주기만 하면 끝이에요. 바로 아래 이미지처럼요!

SAP 생산오더 번호 테이블에서 WERKS 필드에 F1 도움말을 실행한 화면
WERKS 필드에 커서를 놓고 F1을 누르니, 친절한 설명창이 나타났습니다.

AUFK 테이블 조회 화면에서 WERKS 필드가 도대체 뭘 의미하는지 궁금해서 F1을 눌렀더니, ‘Performance Assistant’라는 창이 짠! 하고 나타났죠?

내용을 보니 “Key uniquely identifying a plant.” 라고 영어로 설명해주네요.

아하! WERKS는 플랜트(공장)를 식별하는 고유 키였군요!

이제부턴 낯선 필드를 만나도 절대 당황하지 마세요. 일단 커서부터 올리고 F1을 누르는 겁니다.

이 단축키 하나만으로도 여러분의 SAP 라이프가 훨씬 윤택해지고, 스스로 문제를 해결하는 실무 고수로 성장하는 첫걸음이 될 거예요!


오더 번호, 다 쓰면 9자리로 자동 변신?

“저희는 8자리 쓰는데, 1년에 87만 개씩 쓰다 보면 언젠가 꽉 차지 않을까요? 그럼 자동으로 9자리로 늘어나나요?”

이것도 정말 중요한 포인트입니다.

은행 대기표 기계에 딱 1번부터 999번까지만 인쇄된 번호표 롤이 들어있다고 상상해봅시다. 999번 고객이 표를 뽑고 나면, 기계가 갑자기 없던 1000번을 만들어낼 수 있을까요?

아니요, 불가능합니다. “번호표가 모두 소진되었습니다.” 라는 메시지가 뜨겠죠.

SAP도 마찬가지입니다.

8자리 번호 범위(예: 00000001 ~ 99999999)가 설정되어 있다면, 시스템은 딱 그 안에서만 번호를 생성해요. 99999999번 오더가 생성되고 나면, 더 이상 번호를 만들지 못하고 오류를 발생시킵니다.

자동으로 9자리로 넘어가는 일은 절대 없습니다.

이런 대참사(?)를 막기 위해, 시스템 관리자는 번호 범위가 소진되기 전에 미리 새로운 번호 범위를 설정하거나, 기존 범위를 확장하는 작업을 해줘야 해요. 예를 들어 12자리까지 번호 체계를 확장하는 거죠.


12자리면 얼마나 쓸 수 있을까? (feat. 영원의 시간)

그렇다면 8자리에서 12자리로 확장하면 얼마나 더 쓸 수 있을까요? 이건 거의 ‘걱정하지 마세요’ 수준을 넘어섭니다.

  • 8자리: 1 ~ 99,999,999 (약 1억 개)
  • 12자리: 1 ~ 999,999,999,999 (약 1조 개)

감이 잘 안 오시죠?

아까 Rabbit 회사 기준으로 1년에 약 87만 개의 오더를 쓴다고 했죠. 이 속도로 12자리 번호를 모두 소진하려면 얼마나 걸릴까요?

1,000,000,000,000 (1조) ÷ 870,000 (약 87만) ≈ 약 115만 년

네, 계산을 잘못한 게 아닙니다.

약 백십오만 년이 걸립니다. 인류의 역사보다 훨씬 긴 시간이죠.

그러니 SAP 생산오더 번호가 12자리로 세팅되어 있다면, 번호가 고갈될 걱정은 사실상 영원히 할 필요가 없다고 보셔도 무방합니다.


마무리하며

자, 오늘 SAP 생산오더 번호에 대해 알아봤는데, ‘은행 순번대기표’ 비유로 생각하니 훨씬 간단하게 느껴지지 않으셨나요?

핵심만 다시 정리해 드릴게요.

  1. 생산오더 번호는 은행 대기표처럼 한 번 발번되면 절대 재사용되지 않습니다.
  2. 오더 번호는 회사나 공장이 달라도 하나의 클라이언트 내에서는 절대 중복될 수 없습니다.
  3. 설정된 번호 범위를 다 쓰면 자동으로 자리수가 늘어나지 않으므로, 사전에 범위를 확장해줘야 합니다.
  4. 하지만 12자리까지 확장하면 사실상 영구적으로 사용 가능하니, 번호 고갈 걱정은 안 하셔도 됩니다.

이제 누군가 생산오더 번호에 대해 물어보면, 자신 있게 은행 대기표를 떠올리며 설명해주실 수 있겠죠? 오늘 내용이 여러분의 SAP 실무에 작은 도움이 되었기를 바랍니다! 😎

Similar Posts