본문 바로가기
아래아한글 자동화/python+hwp 중급

[교육운영업무 자동화] 청구서, 영수증 및 수료증 자동발급

by 일코 2020. 12. 27.

개  요

이번에 알려드릴 파이썬-한/글 자동화 주제는, 교육운영부서에서 흔히들 가장 시간을 많이 잡아먹는 막중3종 업무세트인 "교육비 청구서, 납입영수증 및 수료증 발급"이다.

본 포스팅에 사용된 자료는 실제 자동화를 의뢰했던 ㅇㅇ협회 교육운영팀 자료를 모티브로 하였으며, 모자이크 등을 통해 사명이나 주소, 개인정보 등을 가리기도 하였지만, 첨부하는 hwp파일 또한 포스팅에 맞게 경미한 수정 및 단순화작업을 거친 자료임을 먼저 밝힌다.

이메일을 주고받으면서, 위 협회(이하 "협회"라 칭함) 담당자에게 해당 업무를 자동화하지 못한 이유를 물었는데, "비용이 크기 때문"이라고 했다. 필자가 의외라고 생각했던 점은, 의뢰내용 모두 아주 간단한 스크립트 매크로 수준에서 자동화할 수 있는, 정말 단순한 업무들이었다는 것이다. 의뢰내용은 아래와 같다.

 


 

< 의 뢰 내 용 >

 

1. 교육비 청구서 작성 자동화

청구서 서식

위 청구서에 채워질 내용은 수신받은 교육신청서 취합을 통해 엑셀파일에 들어 있으며, 
[소속, 성명, 교육명, 청구일, 청구금액(한글), 청구금액(숫자), 담당자이메일] 칼럼으로 정리되어 있는 상태이다.
현재는, 빨간색, 파란색 글자 자리에 손수 입력한 후 PDF로 개별출력하여 메일로 송부한다.

참고로 교육신청서 배부 메일은 아래와 같다.
(이번 포스팅에서 이메일 관련 자동화 작업은 다루지 않는다.)

협회 송부 이메일 (개강예정 교육목록 및 참가신청서 등)

 


 

2. 교육비 납입영수증 작성 자동화

영수증 서식

1번의 청구서 서식과 거의 동일하며, 입금확인 후 인원별 영수증을 위와 같이 발행하여 PDF변환 후 이메일로 송부한다.
(다시 한 번 밝히지만, 이메일 자동송부는 차후 다른 포스팅에서 다룰 예정이다.)

 


 

3. 수료증 자동화

수료증 서식

수료증 발급도 유사한 방식으로 진행한다.
[일련번호, 교육명, 성명, 소속, 출석율, 수료일] 등 6개의 칼럼을 가진 최종 엑셀파일을
아래아한글 서식으로 "직접" 옮겨적는 작업을 하고 있다. (출석율은 QR로 자동집계된다.)

마지막으로, 수료증의 PDF출력을 마치면 아래와 같이 이메일로 개별송부한다.

수료증을 첨부하여 메일송부

 


 

위 협회의 경우, 업계 관심이 갑자기 커지고 교육생이 급증하면서 업무담당자의 부담이 엄청나게 커진 상태였다.
위의 경우처럼, 업무량이 스케일과 비례하는 상황이라면? 특히 반복업무라면?
코딩의 덕을 아주 톡톡히 볼 수 있다. 피땀눈물 흘리기 전에, 업무가 커지겠다 예상되면 미리 자동화 해두자.
업무자동화 코드를 직접 짜는 것에 크게 부담을 가질 필요 없다.
이해하는 것도 쉽거니와, 더욱 다행인 점은 이해하지 못해도 코드를 가져다 쓸 수 있다는 것이다.
오류가 

이번 시리즈를 진행하면서 심도있게 다룰 기능은 아래와 같다.

1. 한/글파일에 필드(누름틀)를 만들고, 필드에 값을 입력하는 방법

2. 엑셀파일을 판다스 데이터프레임으로 불러오는 방법(DRM이 걸린 경우)

3. 파이썬의 문자열, 특히 날짜서식을 다루는 방법

4. hwp파일을 pdf로 저장하는 방법

 

이것으로 긴 소개를 마치고, 본 포스팅에서 뵙겠다.

 


 

튜토리얼 목록

 

[교육업무자동화1/10] 청구서자동화1(누름틀 다루기)

(전략) 우리 ㅇㅇㅇㅇㅇㅇ협회 교육운영팀은 20XX년부터 고용노동부 국가인적자원개발 컨소시엄 사업으로 전환하여 비회원사까지 대상으로 교육을 개최할 수 있게 되어 매우 큰 자긍심을 가

www.martinii.fun

 

 

[교육업무자동화2/10] 청구서자동화2(필드에 텍스트 자동입력)

지난 포스팅은... [교육업무자동화1/10] 청구서자동화1(누름틀 다루기) (전략) 우리 ㅇㅇㅇㅇㅇㅇ협회 교육운영팀은 20XX년부터 고용노동부 국가인적자원개발 컨소시엄 사업으로 전환하여 비회원

www.martinii.fun

 

 

[교육업무자동화3/10] 청구서자동화3(파이썬으로 엑셀 열어서 값 얻기)

지난 포스팅은... [교육업무자동화2/10] 청구서자동화2(필드에 텍스트 자동입력) 지난 포스팅은... [교육업무자동화1/10] 청구서자동화1(누름틀 다루기) (전략) 우리 ㅇㅇㅇㅇㅇㅇ협회 교육운영팀은

www.martinii.fun

 

 

[교육업무자동화4/10] 청구서자동화4(청구서 마무리하기)

지난 포스팅은... [교육업무자동화3/10] 청구서자동화3(파이썬으로 엑셀 열어서 값 얻기) 지난 포스팅은... [교육업무자동화2/10] 청구서자동화2(필드에 텍스트 자동입력) 지난 포스팅은... [교육업

www.martinii.fun

 

 

[교육업무자동화5/10] 청구서자동화5(개선할 부분 찾아보기) #중급

지난 포스팅은... [교육업무자동화4/10] 청구서자동화4(청구서 마무리하기) 지난 포스팅은... [교육업무자동화3/10] 청구서자동화3(파이썬으로 엑셀 열어서 값 얻기) 지난 포스팅은... [교육업무자동

www.martinii.fun

 

 

[교육업무자동화6/10] 청구서자동화6(pyinstaller로 배포하기)

지난 포스팅은... [교육업무자동화5/10] 청구서자동화5(개선할 부분 찾아보기) #중급 지난 포스팅은... [교육업무자동화4/10] 청구서자동화4(청구서 마무리하기) 지난 포스팅은... [교육업무자동화3/1

www.martinii.fun

 

댓글