업무 시스템 · 2024

바코드 스캔 출고 처리 프로그램

엑셀 발주서를 불러와 바코드 스캔으로 출고 수량을 차감하고 기록하는 데스크톱 앱

종이 발주서에 손으로 체크하던 출고 작업을, 바코드를 찍으면 잔여 수량이 줄고 출고 일시가 함께 남도록 바꿨습니다. 입고예정일이 급한 발주 건부터 자동으로 처리됩니다.

고객
비공개 고객
분야
업무 시스템
조회 조건과 발주 목록, 선택한 건의 상세 정보와 출고 기록이 함께 보이는 메인 화면

개요

  • 이커머스 입점 판매사의 창고 출고 담당자가 쓰는 Windows 데스크톱 프로그램
  • 물류센터로 보낼 발주 건을 바코드 스캔으로 처리하고, 처리 내역을 발주 단위로 추적
  • 발주서 업로드 → 조건 조회 → 스캔 출고 → 잔여 수량 확인 → 결과 내려받기가 한 화면에서 이어짐
  • 올린 발주서는 이름을 붙여 한 파일에 누적 → 지난 발주 건도 같은 조건으로 다시 조회
조회 조건과 발주 목록, 선택한 건의 상세 정보와 출고 기록이 함께 보이는 메인 화면
메인 화면

과제

  • 발주서를 출력해 손으로 체크 → 어디까지 담았는지 작업자 기억에 의존
  • 같은 상품이 여러 발주 건에 걸쳐 있어, 어느 건부터 담을지 매번 판단 필요
  • 출고 수량을 작업이 끝난 뒤 한꺼번에 옮겨 적으면서 누락과 중복 발생
  • 보내고 난 뒤에는 언제 몇 개를 출고했는지 확인할 근거가 남지 않음

해결 방법

  • 발주서 파일을 그대로 업로드하면 필요한 열을 찾아 읽고, 빠진 열은 이름을 집어 안내
  • 거래처명·물류센터·상품명·바코드·발주번호·입고예정일 범위로 조회, 열 제목을 누르면 그 기준으로 정렬
  • 출고 처리 모드에서 상품 바코드를 찍으면 잔여 수량이 1 차감되고 해당 행으로 화면이 따라 이동
  • 스캔 직후 화면 가운데에 큰 알림으로 남은 수량 표시 → 모니터를 들여다보지 않아도 결과 확인
  • 알림 색으로 상태 구분 → 초록은 출고 처리, 빨강은 잔여 수량 0 또는 이미 출고 완료
  • 잔여 수량이 0이 된 행은 배경색이 바뀌어 아직 담을 것이 남은 건만 눈에 들어옴
  • 스캔이 어려운 건은 수량을 직접 입력해 출고, 잔여 수량을 넘는 입력은 처리 거부
바코드 스캔 직후 남은 출고 수량을 알리는 초록색 알림 창
스캔 결과 알림

시스템 구조

작업 흐름

  • 발주서 업로드 → 조건 조회 → 출고 처리 모드 전환 → 바코드 스캔 → 잔여 수량 차감·기록 → 엑셀 내려받기
  • 바코드 스캐너는 시리얼 포트로 직접 연결, 포트와 통신 속도를 지정하고 연결 테스트로 값 확인
  • 작업 내용은 파일 한 개에 담김 → 다른 PC로 옮기거나 기간별로 나눠 보관 가능
  • 작업 중에는 원본을 건드리지 않고 사본에서 처리 → 저장 전까지 원본 유지, 자동 저장은 선택 사항
바코드 스캐너의 포트와 통신 속도를 지정하고 연결을 확인하는 설정 창
스캐너 설정

구현

  • 같은 바코드가 여러 발주 건에 있으면 입고예정일이 이른 건부터 차감 → 센터 입고 기한이 급한 건부터 소진
  • 보류할 발주번호를 잠가 두면 그 건의 상품은 스캔해도 처리되지 않고 잠김 표시
  • 출고 기록은 건별 일시와 수량으로 남고, 잘못 찍은 건은 기록을 골라 삭제
  • 행마다 메모를 달아 분할 포장·교체 발송 같은 현장 사항을 발주 내역과 함께 보관
  • '박스 준비'는 조회된 건을 발주번호 단위로 합산해 표시 → 스캔 전에 필요한 박스 수량 가늠
  • 파일을 열 때 필요한 항목이 모두 있는지 먼저 확인하고, 없으면 어느 항목이 빠졌는지 안내
조회된 건을 발주번호 단위로 합산해 보여 주는 박스 준비 창
박스 준비
출고를 막아 둔 발주번호 목록을 관리하는 창
발주번호 잠금

결과

  • 종이 발주서와 수기 체크 없이, 스캔만으로 수량이 차감되고 기록이 남음
  • 작업자가 발주 건 순서를 판단하지 않아도 입고예정일이 급한 건부터 처리
  • 언제 몇 개를 출고했는지 건별로 남아, 수량이 맞지 않을 때 되짚어 확인 가능
  • 보류 발주 건을 잠가 두어 아직 내보내면 안 되는 물량이 섞여 나가지 않음
  • 처리 결과를 발주서 형태로 다시 내려받아 거래처와 그대로 공유

사용 기술

  • Python
  • wxPython
  • SQLite
  • openpyxl
  • pyserial

화면

해결이 필요한 문제가 있으신가요?

소프트웨어 개발부터 장비 연동과 엔지니어링까지, 프로젝트의 요구사항에 적합한 해결 방안을 함께 검토합니다.

프로젝트 문의하기