일반회계

SAP BP 업로드 — 탭 아홉 개를 세 갈래로 나눠 처리하기

고객·공급업체 마스터를 양식 한 파일로 올리고, 대상에 따라 읽는 탭과 호출 API 를 나눠 처리하는 화면입니다.

소개 영상블로그 목차 순서대로 · 자막 포함

주요 재생 지점

도입 포인트 — 이 앱을 사용해야 하는 이유

SAP 거래처 마스터 등록은 여러 화면을 거쳐 반복되는 복잡한 작업입니다. 이 앱은 다수의 거래처 정보를 지능적으로 분할 처리하고, 7가지 규칙으로 사전 검증하며, 표준 SAP 인터페이스를 활용해 정확하고 효율적인 마스터 데이터 관리를 지원합니다.

한 줄 요약 — 단순 데이터 업로드를 넘어, SAP 표준 마스터 구조와 업무 흐름에 맞춰 데이터 유효성 검증, 처리 대상 자동 판정, 단계별 오류 제어를 제공하는 지능형 솔루션입니다.

핵심 포인트 여섯 가지

핵심 포인트고객이 얻는 것지금 방식이라면
① 데이터 유효성 자동 검증업로드 양식의 각 라인에 BP 그룹, 상호, 국가코드 등 7가지 업무 규칙을 자동으로 적용하여 데이터 유효성을 점검하고, 기준 미달 시 처리를 반려하여 마스터 데이터 품질을 확보합니다.수작업으로 데이터를 검토하거나 오류 발생 후 뒤늦게 수정하며 SAP 표준 거래처 마스터 등록 기준에 맞지 않는 오류를 겪습니다.
② 처리 대상별 지능적 분할 처리하나의 양식에서 선택한 처리 대상(일반 BP, 영업, 구매)에 따라 읽는 탭과 호출할 SAP 인터페이스(BP 펑션, 고객/공급업체 API)를 자동으로 구분하여 마스터 데이터를 처리합니다.복수의 마스터 데이터를 등록할 때 각 데이터 성격에 따라 다른 화면이나 API를 수동으로 선택하고 처리해야 합니다.
③ SAP 표준 로직 정합성 유지BP 마스터 등록/변경 시 `ZFIG_BP_MAINTAIN`, `cmd_ei_api`, `vmd_ei_api` 등 SAP 표준 펑션과 BAPI를 직접 활용하여 시스템 원장과의 정합성을 유지하며 데이터를 처리합니다.외부 시스템에서 생성된 마스터 데이터가 SAP 표준 마스터 구조 및 로직과 맞지 않아 데이터 불일치 문제가 발생할 수 있습니다.
④ 작업 유형 자동 판정영업 데이터 처리 시, SAP KNVV 테이블의 기존 데이터 유무를 자동으로 확인하여 작업 유형을 '생성(I)' 또는 '변경(U)'으로 판정하며, 수동 개입을 최소화합니다.영업 데이터 등록 시 마스터의 생성 또는 변경 여부를 수동으로 판단하여 처리하거나, 잘못된 작업 유형으로 인해 오류가 발생합니다.
⑤ 단계별 오류 제어 및 재처리처리 대상이 아닌 탭의 데이터는 '작업전' 상태로 유지하고, 실패한 특정 단계(예: 구매 데이터)만 수정 후 다시 업로드할 수 있어 전체 작업을 재시작할 필요 없이 효율적인 오류 수정을 지원합니다.업로드 중 오류가 발생하면 어떤 단계에서 문제가 생겼는지 파악하기 어렵고, 전체 업로드 프로세스를 처음부터 다시 시작해야 합니다.
⑥ SAP 마스터 구조 준수KNA1(고객 일반), KNVV(고객 영업), LFA1(공급업체 일반), LFM1(공급업체 구매) 등 SAP 표준 마스터 데이터 구조를 그대로 반영하여, 일관되고 신뢰할 수 있는 방식으로 데이터를 관리합니다.SAP 마스터 데이터 구조를 제대로 이해하지 못하고 데이터를 구성하여, 불필요한 오류나 데이터 불일치가 발생합니다.

사례로 보는 효과

양식 한 파일에 담긴 아홉 개 탭의 거래처 정보를 'BP', '영업', '구매' 세 갈래로 나눠 처리하며, 각 단계마다 7가지의 데이터 유효성 규칙을 점검하여 정확한 마스터 등록을 지원합니다.

도입하면 달라지는 것

  • 복잡한 수작업 등록 절차 자동화
  • 마스터 데이터 오류율 및 재작업 감소
  • SAP 시스템과의 데이터 정합성 강화
  • 마스터 데이터 관리 업무 효율성 증대

이런 회사에 맞습니다

다량의 거래처 마스터를 정기적/비정기적으로 SAP에 등록 및 변경해야 하는 재무회계, 관리회계, 물류팀 담당자와 팀장, 그리고 데이터 품질 향상과 업무 효율화를 추구하는 CFO에게 적합합니다.

실행 화면

실제 화면 8종 둘러보기

양식을 선택하면 아홉 개 탭이 올라옵니다 → 처리 대상을 바꿔 가며 세 번 실행하고 → 에러만 보기로 고칠 줄을 추립니다.

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

Main.view.xml
초기 화면 — 파일과 처리 대상
초기 화면 — 파일과 처리 대상 — 파일 경로와 처리 대상(business partner / sales / purchase)을 고릅니다. create·update 라디오는 사양서대로 business partner 를 골랐을 때만 나타납니다.
양식 적재
파일 선택 — 아홉 개 탭을 한 번에
파일 선택 — 아홉 개 탭을 한 번에 — 양식의 모든 탭을 읽어 한 목록에 올립니다. 이 단계에서는 처리하지 않고 어느 탭에 몇 줄이 있는지만 보여 줍니다.
실행 확인
실행 확인 — 읽는 탭과 호출 API
실행 확인 — 읽는 탭과 호출 API — 고른 대상에 따라 어떤 탭을 읽고 어떤 펑션을 호출할지 먼저 보여 줍니다. BP 는 일곱 개 탭을 한 번에 넘깁니다.
처리 결과
실행 완료 — 대상 행수와 결과
실행 완료 — 대상 행수와 결과 — 전체 행수가 아니라 이번에 처리한 대상 행수를 기준으로 완료·에러를 집계합니다.
BP 결과
business partner — 일곱 탭 처리
business partner — 일곱 탭 처리 — 일반·은행·고객·고객세금·공급업체·원천세·대체지급처 탭이 한 번에 처리되고, 신규 건에는 Partner 번호가 채워집니다. 메시지에 IV_MODE 값이 함께 표시됩니다.
Sales 결과
sales — KNVV 유무로 task 판정

데모를 신청하신 고객께 공개되는 내용입니다

CDS 뷰 구성, 데이터 모델, 점검 · 산출 규칙처럼 실제 구현에 가까운 상세 설계는 이 앱의 데모를 신청하신 고객께만 보여 드리고 있습니다. 양해 부탁드립니다.

데모를 신청해 주시면 확인 후 바로 열람할 수 있도록 열어 드리고, 이미 신청하셨다면 신청하신 Google 계정으로 로그인하시면 이 자리에 내용이 표시됩니다.

sales — KNVV 유무로 task 판정 — 상세 설명은 데모를 신청하신 고객께 보여 드려요.
Purchase 결과
purchase — 대상 탭만 처리

데모를 신청하신 고객께 공개되는 내용입니다

CDS 뷰 구성, 데이터 모델, 점검 · 산출 규칙처럼 실제 구현에 가까운 상세 설계는 이 앱의 데모를 신청하신 고객께만 보여 드리고 있습니다. 양해 부탁드립니다.

데모를 신청해 주시면 확인 후 바로 열람할 수 있도록 열어 드리고, 이미 신청하셨다면 신청하신 Google 계정으로 로그인하시면 이 자리에 내용이 표시됩니다.

purchase — 대상 탭만 처리 — 상세 설명은 데모를 신청하신 고객께 보여 드려요.
에러 필터
에러만 보기 — 고칠 줄 추리기

데모를 신청하신 고객께 공개되는 내용입니다

CDS 뷰 구성, 데이터 모델, 점검 · 산출 규칙처럼 실제 구현에 가까운 상세 설계는 이 앱의 데모를 신청하신 고객께만 보여 드리고 있습니다. 양해 부탁드립니다.

데모를 신청해 주시면 확인 후 바로 열람할 수 있도록 열어 드리고, 이미 신청하셨다면 신청하신 Google 계정으로 로그인하시면 이 자리에 내용이 표시됩니다.

에러만 보기 — 고칠 줄 추리기 — 상세 설명은 데모를 신청하신 고객께 보여 드려요.

사용 방법

  1. Template Download로 양식을 받아 탭별로 작성합니다. 탭마다 필요한 컬럼이 다릅니다.
  2. 파일 선택으로 양식을 올리면 모든 탭의 내용이 한 목록에 표시됩니다.
  3. 처리 대상을 고릅니다. business partner 를 고르면 create·update 라디오가 함께 나타납니다.
  4. 실행하면 해당 대상의 탭만 처리되고, 나머지 탭은 '작업전'으로 남습니다.
  5. 대상을 바꿔 가며 business partner → sales → purchase 순으로 세 번 실행합니다.
  6. 탭 필터와 에러만 보기로 확인할 줄을 추리고, 결과 CSV로 전체를 내려받습니다.

처리 대상 3종

고른 대상에 따라 읽는 탭과 호출하는 인터페이스가 달라집니다.

처리 대상읽는 탭호출처리 구분
business partnergeneral · bank · customer · customer_tax · vendor · vendor_tax · vendor_altpayZFIG_BP_MAINTAIN라디오에서 고른 create/update 가 IV_MODE
salessalescmd_ei_api=>maintain_bapiKNVV 유무로 task 자동 판정
purchasepurchasevmd_ei_api=>maintain_bapiLFA1 존재 확인 후 처리

세 갈래로 나눈 덕분에 실패한 단계만 다시 올릴 수 있고, 어느 인터페이스에서 막혔는지도 분명해집니다.

실행 조건

필드필수설명
File name필수업로드 양식 경로. Template Download 로 빈 양식을 받을 수 있음
처리 대상필수business partner / sales / purchase
create · update조건부business partner 를 골랐을 때만 표시 (사양서)
탭 필터선택결과를 특정 탭만 추려 보기
에러만 보기선택실패한 줄만 남기기

결과 컬럼

데모를 신청하신 고객께 공개되는 내용입니다

CDS 뷰 구성, 데이터 모델, 점검 · 산출 규칙처럼 실제 구현에 가까운 상세 설계는 이 앱의 데모를 신청하신 고객께만 보여 드리고 있습니다. 양해 부탁드립니다.

데모를 신청해 주시면 확인 후 바로 열람할 수 있도록 열어 드리고, 이미 신청하셨다면 신청하신 Google 계정으로 로그인하시면 이 자리에 내용이 표시됩니다.

SAP 표준 기능 확장 포인트

SAP 표준 기능 매핑

마스터 생성·변경은 표준 펑션과 BAPI 가 수행합니다. 이 화면은 양식을 읽어 맞는 인터페이스로 넘기고 결과를 모읍니다.

표준역할이 화면에서의 확장
ZFIG_BP_MAINTAINBP 생성·변경 펑션일곱 개 탭을 T_GENERAL 등 테이블 파라미터로 묶어 한 번에 전달
cmd_ei_api고객 마스터 API영업 데이터(KNVV)와 세금(KNVI)·파트너기능(KNVP) 처리
vmd_ei_api공급업체 마스터 API구매 데이터(LFM1) 처리
BP 트랜잭션BP 단건 유지보수건수가 적거나 예외 건은 표준 화면에서 처리
XD03 · XK03 관점마스터 조회업로드 결과 확인

운영 데이터 소스 매핑

항목SAP 원천비고
일반·주소KNA1 · LFA1BP 그룹 · 상호 · 국가 · 사업자번호
영업 데이터KNVV영업조직 · 유통경로 · 제품군 · Incoterms
고객 세금·파트너KNVI · KNVPALAND='KR' · TATYP='MWST' 조회, 필수 파트너기능 보완
구매 데이터LFM1구매조직 · 통화 · 지급조건
처리 방식펑션 · BAPIZFIG_BP_MAINTAIN / cmd_ei_api / vmd_ei_api

도입 시 확인이 필요한 부분

BP 역할(FLCU01·FLVN01 등)과 번호범위 규칙이 회사마다 다릅니다. 내부 채번인지 외부 채번인지에 따라 양식에 Partner 코드를 넣을지가 갈립니다. 또 필수 파트너기능은 표준 체크 클래스로 보완하도록 사양서에 지정돼 있으므로, 영업 데이터 업로드 전에 파트너기능 설정을 함께 확인해야 합니다.

CDS 구성

데모를 신청하신 고객께 공개되는 내용입니다

CDS 뷰 구성, 데이터 모델, 점검 · 산출 규칙처럼 실제 구현에 가까운 상세 설계는 이 앱의 데모를 신청하신 고객께만 보여 드리고 있습니다. 양해 부탁드립니다.

데모를 신청해 주시면 확인 후 바로 열람할 수 있도록 열어 드리고, 이미 신청하셨다면 신청하신 Google 계정으로 로그인하시면 이 자리에 내용이 표시됩니다.

자주 묻는 질문

자주 묻는 질문

처리 대상을 왜 세 갈래로 나눴나요?

탭마다 SAP 에서 부르는 인터페이스가 다르기 때문입니다. 일반·은행·회사코드·세금은 BP 펑션 하나로 묶어 넣을 수 있지만, 영업 데이터는 고객 API 를, 구매 데이터는 공급업체 API 를 따로 호출해야 합니다. 한 번에 다 넣으려 하면 어느 단계에서 실패했는지 알기 어려워집니다.

BP 를 만들기 전에 sales 를 올리면 어떻게 되나요?

영업 데이터는 이미 존재하는 고객에 붙는 정보이므로 BP 가 먼저 있어야 합니다. 순서를 지키지 않으면 해당 줄이 에러로 남습니다. 실무에서는 business partner → sales → purchase 순으로 세 번 실행하는 흐름을 씁니다.

create 와 update 라디오는 왜 BP 에서만 보이나요?

사양서에 그렇게 지정돼 있고, 실제로도 그 편이 안전합니다. BP 펑션은 IV_MODE 를 명시적으로 받기 때문에 담당자가 의도를 밝혀야 합니다. 반면 영업·구매 데이터는 기존 KNVV·LFM1 존재 여부로 판정하는 편이 정확해 자동으로 갈립니다.

대상이 아닌 탭의 줄은 어떻게 되나요?

'작업전' 상태로 그대로 남습니다. 건드리지 않기 때문에 같은 파일로 대상을 바꿔 가며 여러 번 실행해도 앞서 처리한 결과가 지워지지 않습니다.

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

마스터 생성·변경은 표준 펑션과 BAPI 가 수행하고 데이터도 KNA1·LFA1 등 표준 구조에 그대로 남습니다. 이 화면은 양식을 탭별로 읽어 검증하고 맞는 인터페이스로 넘기며, 돌아온 메시지를 라인별로 모아 보여 주는 역할을 합니다.

BP 업로드Business PartnerKNA1LFA1KNVVLFM1OpenUI5