매일 아침 반복하던 SAP 매출 보고,
이제는 코드로 완벽 자동화
제약사 A사 영업 담당자가 Python으로 전사 일일 청구실적 보고를 자동화한 교육결과사례.
비개발자도 AI 자동화를 만들 수 있을까? 이 사례가 그 답이 될 수 있습니다!
매일 아침,
같은 클릭을 반복하고 있었습니다

출근하면 가장 먼저 해야 하는 일이 있었습니다. 전날 청구실적을 SAP에서 직접 뽑아 보고하는 것. 이 작업을 위해 매일 같은 화면을 열고, 같은 버튼을 누르고, 같은 파일명으로 저장했습니다.
단순한 일이었지만, 빠질 수 없었습니다. 날짜 입력을 잘못하거나 다운로드 전에 자리를 비우면 보고 일정이 틀어졌습니다. 중요한 업무이기 때문에 오히려 더 신경 써야 했습니다.
"매일 아침 출근하면 첫 번째로 하는 일이 SAP 켜고 실적 뽑는 거였어요. 손에 익어서 빠르긴 한데, 솔직히 이게 내 일이 맞나 싶었죠."
수작업으로 하던 방식
| 단계 | 작업 내용 | 소요 시간 |
|---|---|---|
| STEP 1 | 그룹웨어 접속 및 로그인 | 약 1분 |
| STEP 2 | 시크릿키 2차 인증 처리 | 약 1분 |
| STEP 3 | SAP Fiori 아이콘 클릭 후 새 창 이동 | 약 2분 |
| STEP 4 | 청구실적 메뉴 진입 (iFrame 내부) | 약 1분 |
| STEP 5 | 조회 날짜 직접 입력 (오늘 ~ 전월 1일) | 약 1분 |
| STEP 6 | 조회 실행 버튼 클릭 후 로딩 대기 | 약 3분 |
| STEP 7 | 스프레드시트 내보내기 → 다운로드 대기 | 약 3분 |
| STEP 8 | 파일 찾아 날짜 포함 파일명으로 수동 변경 | 약 2분 |
📆 매일 약 15분 소모 — 업무 시작 전 필수 루틴이지만 부가가치는 전혀 없는 반복 작업
⚠️ 날짜 수동 입력 오류 위험 — 잘못 입력 한 번이 보고 지연으로 이어졌습니다
🔁 담당자 의존 구조 — 절차가 머릿속에만 있어 부재 시 보고가 멈췄습니다
Python이 그룹웨어부터 SAP까지
직접 조작하게 만들었습니다
Selenium으로 실제 브라우저를 자동 제어합니다. 사람이 클릭하던 모든 단계를 코드가 그대로 재현합니다. SAP Fiori가 웹 기반이라는 점을 활용했습니다.
|
1
|
STEP 1 · Selenium
그룹웨어 자동 로그인
ID / PW / 시크릿키를 코드가 직접 입력합니다. 시크릿키 입력란이 활성화된 경우만 감지해 자동 처리합니다.
결과값: 그룹웨어 메인화면 진입
|
|
2
|
STEP 2 · Selenium 윈도우 핸들
SAP Fiori 이동 + 다중 윈도우 처리
SAP 아이콘 클릭 시 새 탭이 열립니다. 코드가 팝업 창들을 자동 정리하고 SAP 창으로 이동합니다.
결과값: SAP Fiori 화면 활성화
|
|
3
|
STEP 3 · iFrame + dateutil
청구실적 조회 자동 실행
iFrame 안에서 청구실적 메뉴로 진입합니다. 오늘 날짜와 전월 1일을 자동 계산해 날짜 필드에 입력하고 조회를 실행합니다.
결과값: 청구실적 데이터 로딩 완료
|
|
4
|
STEP 4 · os + 파일 감지
엑셀 내보내기 + 파일명 자동 변경
스프레드시트 내보내기를 클릭해 파일을 다운로드합니다. 다운로드 완료를 감지한 뒤 "금일청구실적YYYYMMDD기준.xlsx" 형식으로 자동 저장합니다.
로그: 모든 과정이 끝났습니다. 출력
|
어떤 기술과 도구를
사용했나요?
|
언어 & 환경
Python (Jupyter Notebook)
셀 단위로 실행하며 확인할 수 있어 비개발자도 단계별로 테스트하며 만들기 좋은 환경입니다.
|
브라우저 자동화
Selenium WebDriver
실제 Chrome 브라우저를 코드로 제어합니다. 클릭, 입력, 팝업 처리까지 사람이 하던 모든 동작을 재현합니다.
|
|
날짜 자동 계산
dateutil.relativedelta
오늘 날짜와 전월 1일을 자동으로 계산합니다. 사람이 날짜를 입력할 필요가 없어 오기입 오류가 완전히 사라집니다.
|
파일 관리
os + 다운로드 감지 루프
Downloads 폴더의 파일 개수를 실시간으로 모니터링합니다. 다운로드가 완료되는 순간을 감지해 파일명을 자동으로 변경합니다.
|
코드 실행 한 번,
이런 결과물이 자동으로 만들어집니다
Jupyter Notebook에서 셀을 실행하면 브라우저가 자동으로 열리고, SAP 로그인부터 파일 저장까지 순서대로 처리됩니다.
▲ Jupyter Notebook 실행 로그 — 로그인부터 파일 저장까지 전 과정 자동 처리
▲ 코드 실행 한 번으로 자동 생성된 청구실적 파일 — 날짜·파일명까지 모두 자동 처리
자동화 전과 후,
무엇이 달라졌나요?

|
Before · 수작업
• 매일 8단계 수동 클릭 • 날짜 직접 입력 (오류 위험) • 담당자가 자리를 비우면 중단 • 파일명 규칙이 담당자마다 달라짐 • 로딩 대기 중 다른 작업 불가 일 소요 시간
약 15분
= 연 약 65시간
|
→ |
After · 자동화
• 코드 실행 1회로 전체 처리 • 날짜 자동 계산 (오류 0건) • 누구나 실행 가능한 구조 • 파일명 항상 동일한 규칙 적용 • 실행 후 다른 업무 즉시 가능 일 소요 시간
약 2분
= 연 약 8시간
|
|
영
|
코드 실행하고 커피 한 잔 타고 오면 파일이 이미 만들어져 있어요. 처음에는 진짜인지 믿기지 않았어요. — 수강생 / 제약사 A사
|
이 자동화가 가능했던 이유

이 사례에서 특별한 점은 기술이 아닙니다. 매일 하던 일을 그대로 코드로 옮겼을 뿐입니다. 어디서 로그인하고, 어느 버튼을 누르고, 어떤 파일을 저장하는지. 이미 알고 있는 절차가 곧 코드의 흐름이 됐습니다.
코딩 경험 없이 Selenium 웹 자동화를 완성한 현장 사례. 비개발자도 AI 자동화를 만들 수 있다는 것, 이 사례가 그 증거입니다.
|
배움 01
업무를 아는 사람이 자동화도 잘 만든다
매일 8단계를 반복했기 때문에 어떤 버튼을 어떤 순서로 눌러야 하는지 이미 알고 있었습니다. 이 지식이 그대로 코드가 됐습니다.
|
배움 02
SAP도 웹이면 자동화 가능하다
기업 전용 ERP라도 웹 브라우저 기반이라면 Selenium으로 제어할 수 있습니다. API가 없어도, 권한이 없어도, 화면에 보이면 됩니다.
|
|
배움 03
작동하면 된다 — 완벽할 필요 없다
처음 코드는 단순했지만 실무에서 작동했습니다. 완벽한 코드보다 지금 당장 돌아가는 코드가 더 중요합니다.
|
배움 04
자동화는 역할을 없애지 않는다
자동화가 없앤 것은 반복 노동이지 담당자의 역할이 아닙니다. 절약된 시간은 더 가치 있는 업무에 쓰입니다.
|
같은 방식으로
해결할 수 있는 다른 업무들
이 코드의 구조(로그인 → 조회 → 다운로드 → 저장)는 수많은 반복 업무에 그대로 적용됩니다.
ERP 운영팀 — 매일 특정 시각에 재고·실적 데이터를 자동 다운로드해 담당팀에 공유
물류 / 배송팀 — 택배사 사이트에서 운송장 번호를 자동 조회해 배송 상태를 엑셀로 정리
경영관리팀 — 그룹웨어 전자결재 대기 문서를 자동으로 불러와 목록으로 정리
공공기관 / 기획팀 — 정기 발표되는 포털 공시 자료를 자동 다운로드해 날짜별 저장
실적 관리팀 — 매일 같은 조건으로 실적 리포트를 뽑아 지정된 폴더에 자동 저장
반복되는 업무가 있다면,
그것이 자동화의 시작점입니다.
코딩 경험 없는 비개발자가 SAP 웹 자동화를 완성한 실전 사례 · AI 바이브코딩 교육결과