- ๋ด๊ตญ์ ์ฉ์ฅ ๊ด๋ จ ํธ์๊ธฐ๋ฅ ๊ตฌํ
- SAPGUI : SAP Scripting ํ์ฉ
- SAP๊ถํ : ZLLEI09020, ZRSDM62110
- mainํ์ผ(LocalLC_GUI.py)๊ณผ ์ต์
์ ์ฅํ์ผ(default_opt.json), dbํ์ผ(LocalLC.db)๋ฅผ ํจ๊ป ๋๋ค
- ๊ธฐ๋ณธ๋์ ํ์ธ์ ์ํด ์ํ๋ด์ฉ์ด ๋ค์ด๊ฐ db๊ฐ ํฌํจ๋์ด์์ผ๋, ์ฐ๊ฒฐํ ERP๊ฐ ์์ผ๋ฉด ์ถ๊ฐ๊ธฐ๋ฅ์ ์ฌ์ฉ ๋ถ๊ฐ
- cmd ๋ช ๋ น์ด ์คํ : streamlit run .\๊ฒฝ๋ก\LocalLC_GUI.py
- ์ต์ ์ค์ ํญ์์ ๋ก๊ทธ์ธ์ ๋ณด ์ง์ ๋ฐ ์ ์ฅ(์์คํ ๋ช , ID, PW, NERP N๋ฒ์งธ์ฐฝ ์ฌ์ฉ)
- (ํ์์) ๊ฑฐ๋์ ์ ๋ณด ์ถ๊ฐ(๊ธฐ์กด ์ ๋ ฅ๋ถ ์ฐธ๊ณ )
(1) L/C๋ฑ๋ก(NERP) ํญ
- Local L/C ์์ ๋ด์ญ์์ ์ฐ/์ ์ง์ ํ '์ ๋ ฅํ ์ฐ/์๋ก ์ ๋ฐ์ดํธ' ๋ฒํผ์ ๋๋ฌ NERP๋ด์ญ ๊ฐ์ ธ์ค๊ธฐ
- ์ถ๊ฐ๋์์ด ์ฐ์ธก ํ์ ์ฌ๋ผ์ค๋ฉด '์ ์๋ฌธ์๋ฒํธ'๋ฅผ ์ข์ธก 'Local L/C ๋ฑ๋ก' ์ฐฝ์ ์ ๋ ฅ ํ ENTER
- ๋ก๋ฉ๋ ๋ฐ์ดํฐ ํ์ธ
- ์ข์ธก ํ ์คํธ๋ฐ์ค : EDI๋ก ์์ ๋ ์ ๋ณด (Partial 9 : ํ์ฉ) (์ ์ถ์๋ฅ๋ ์ ํจ๊ธฐ์ผ ๋ฑ ํน์ด์ฌํญ ํ์ธ, ์ ๊ท์ ํ์ ์ ์ถ์๋ฅ๊ฐ ์์ ๊ฒฝ์ฐ ์๋ฌธ๋ช ์นญ์ผ๋ก ๋์ด)
- ์ฐ์ธก ํ ์คํธ๋ฐ์ค : EDI์ ์๋ ์ ๋ณด, ์์ ๋ฑ๋กํ ๊ฑฐ๋์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ด(์ฌ์ ์๋ฒํธ๋ก ๋งค์นญ)
- ์ถ๊ฐ์ ๋ณด ์ ๋ ฅ (์ถ/๋์ฐฉ ๊ตญ๊ฐ, ํฌํธ) : ์ฌ์ ๋ถ์์ ์ ๊ณตํ ์ ๋ณด ์ฌ์ฉ, POL, POD ์ต์ 1๊ฐ์ด์ ์ ๋ ฅ
- ๊ฐ ํ ์คํธ๋ฐ์ค๋ฅผ ํ์ํ ์ ๋ณด๋ก ์์ ํ ๋ฑ๋ก๋ฒํผ ํด๋ฆญํ๋ฉด, NERP์ ๋ฑ๋ก๋จ
(2) L/C ํํฉ ํญ
- ํ์ฌ NERP์ ๋ฑ๋ก๋ ํํฉ, ์ ์ฉ์ฅ๋ณ ๋ค๊ณ ํด์ผํ๋ ์์ก์ ๋ณผ ์ ์์
- ์ฐ์ธก '์๋Update'
- 'Local L/C EDI์์ ๋ด์ญ์ผ๋ก ๋ถ๋ฌ์ค๊ธฐ'๋ฅผ ๋๋ฅด๋ฉด EDI์์ ๋ด์ญ์ ์๋ ๊ฑด๋ค์ ์๋์ผ๋ก ๋ถ๋ฌ์ด
- L/C๋ฒํธ ์ ๋ ฅ ํ '์ ๋ ฅํ Local L/C ์ถ๊ฐ/์ ๋ฐ์ดํธ'๋ฅผ ๋๋ฅด๋ฉด ํด๋น ๋ฒํธ๋ด์ญ์ ๋ถ๋ฌ์ด
- ์ข์ธก 'NERP Local L/C ๋ฑ๋ก๋ด์ญ'
- ์ ์ฒด/์์กo๋ณด๊ธฐ : ์ ์ฒด๋ณด๊ธฐ๋ก ์ ์ฒด๋ด์ญ์, ์์กO๋ณด๊ธฐ๋ก ์์ก์๋ ๊ฑด๋ง ์กฐํ
(3) ์ธ๊ธ๊ณ์ฐ์/๋ฌผํ์๋ น์ฆ ํญ
- ์ ๋ ฅํ ์ฐ/์๋ก ์ธ๊ธ๊ณ์ฐ์ ๋ฒํผ : NERP์์ SEC๊ฐ ๋ฐํํ ์ธ๊ธ๊ณ์ฐ์ ์กฐํ ํ ๋ถ๋ฌ์ด
- ์ ๋ ฅํ ์ฐ/์๋ก ๋ฌผํ์๋ น์ฆ ๋ฒํผ : EDI์์ ๋ด์ญ์์ ๋ฌผํ์๋ น์ฆ ์กฐํ ํ ๋ถ๋ฌ์ด
- ๊ฐ์ด๋ฐ ํ๋ฅผ ํ์ธํ์ฌ ํ์ํ ์ ๋ณด, ์กฐ์นํด์ผํ ์ฌํญ์ ์ ์ ์๋ค
- [๊ธฐ๋ณธ์ฌํญ] ์ธ์/๋ฐ๊ธ์ผChk, ๊ธ์กChk ๋ฑ ์ก์๋์กฐํ์ง ์๋๋ก ์๋ น์ฆ๊ณผ ์ธ๊ธ๊ณ์ฐ์๋ฅผ ๋์กฐํด์ค
- [๊ธฐ๋ณธ์ฌํญ2] ์ฐธ๊ณ ์ฌํญ์์ ํ์ฌ ์ํ, ํ์ํ ์ฌํญ์ ๊ฐ์ด๋ํ๋ฉฐ NegoDueDate์ด๋ด์ ๋ค๊ณ ํ์ (NegoDueDate๊ธฐ์ค : ๊ธฐ๋ณธ์ ์ ์ฉ์ฅ ์ ํจ๊ธฐ๊ฐ, ์๋ น์ฆ์ด ๋์ค๋ฉด ์๋ น์ฆ ๋ฐ๊ธ ํ 5์ผ ์ด๋ด)
- [์ํ1] ์ธ๊ธ๊ณ์ฐ์ ์ ๋ณด๋ ์์ง๋ง, ์๋ น์ฆ ์๋ ์ํ(์๋ น์ฆ๋ฐ๊ธ ๋ ์ฒดํฌํด์ ๋์ด์์) : ๊ฑฐ๋์ ์ ์๋ น์ฆ ๋ฐ๊ธ์ด ํ์ํจ
- ์ฐธ๊ณ ์ฌํญ โ ์ ์ฉ์ฅ ์ ํจ๊ธฐ๊ฐ ๋ง๋ฃ : ์ฌ์ ๋ถ ์์ฒญํ์ฌ ์ ์ฉ์ฅ ์ ํจ๊ธฐ๊ฐ ์ฐ์ฅ
- ์ฐธ๊ณ ์ฌํญ โ ์ธ๊ธ๊ณ์ฐ์๊ฐ ๋ฐํ๋์์ผ๋ 10์ผ ์ด๋ด ๋ฌผํ์๋ น์ฆ ๋ฐํ ํ์(์ค์๊ธฐ์ ์ด ๊ตฌ๋งคํ๋ ๊ฒฝ์ฐ๋ ์์ธ) : ์ฌ์ ๋ถ ์์ฒญํ์ฌ ๊ฑฐ๋์ ์ ๋ฌผํ์๋ น์ฆ ๋ฐํ์์ฒญ
- [์ํ2] ์ธ๊ธ๊ณ์ฐ์, ์๋ น์ฆ ๋ชจ๋ ์๋ ์ํ : ๋ ์๋ฅ๊ฐ ๋์ผํ ๋ด์ฉ์ ๊ฐ๊ณ ์๋์ง ํ์ธ ํ์
- ์ฐธ๊ณ ์ฌํญ โ ๋ฌผํ์๋ น์ฆ ๋ ์ง๊ฐ ์ค๋ ์ดํ์ด๋ฏ๋ก ์ฌ๋ฐํ ํ์ : ์ฌ์ ๋ถ ์์ฒญํ์ฌ ๋ฌผํ์๋ น์ฆ ์ฌ๋ฐํ(์ค๋ ๋ฐํํ๋๋ฐ ๋ด์ผ์ด ๋ฐํ์ผ์ผ ์ ์์)
- ์ฐธ๊ณ ์ฌํญ โ ๋ฌผํ์๋ น์ฆ ๋ฐ๊ธ์ผ์๋ก๋ถํฐ 5์ผ ๊ฒฝ๊ณผ, ์ฌ๋ฐ๊ธํ์ : ๋ฌผํ์๋ น์ฆ ๋ฐ๊ธ ํ 5์ผ์ด๋ด์ ๋ค๊ณ ํด์ผํจ, ์ง๋ฌ๋ค๋ฉด ์ฌ๋ฐ๊ธ๋ฐ์์ ๋ค๊ณ ํด์ผํจ(NERP์์๋ถํฐ ๋งํ)
- ์ฐธ๊ณ ์ฌํญ โ DueDate์ด๋ด์ ๋ค๊ณ ํ์ : ํ๊ธฐ๋ ๋ ์ง ์ด๋ด์ ๋ค๊ณ ์งํ
- ๋ค๊ณ ์ผ ๋ฑ๋ก๋
- ๋ค๊ณ ์๋ฃํ ๊ฑด์ ๋ํด ํ์ ์๋ ๋น๋ง๋ฒํธ๋ฅผ ์ ๋ ฅ ํ ๋ค๊ณ ์ผ์ ์ง์ (๊ธฐ๋ณธ๊ฐ:์ค๋) ํ ๋ฑ๋กํ๋ฉด '๋ค๊ณ ์๋ฃ'๋ก ๋ฐ๋
- ์๋ น์ฆ ๋ฏธ๋ฐ๊ธ๊ฑด ํด๋ฆฝ๋ณด๋ ๋ณต์ฌ ๋ฒํผ
- ์ธ๊ธ๊ณ์ฐ์๋ง ๋ฐํ๋ ๊ฑด์ ํ๋ฒ์ ๋ณต์ฌํด์ฃผ๋ ๋ฒํผ, ์ฌ์ ๋ถ ์์ฒญ์ ์ฌ์ฉ (4) ์ต์ ์ค์ ํญ
- ๋ก๊ทธ์ธ์ ๋ณด : ์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ ์์คํ ๋ช ์ด๋ ๋ก๊ทธ์ธ์ ํ์ํ ์ ๋ณด๋ฅผ ์์ ํ๋ค
- ๊ฑฐ๋์ ์ ๋ณด : ๋ฑ๋ก๋์ด์๋ ๊ฑฐ๋์ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค๋ค
- ๊ฑฐ๋์ ์ ๋ณด ์์ : ๊ฑฐ๋์ ์ ์ฌ์ ์๋ฒํธ๋ก ์กฐํํ์ฌ ๊ธฐ์กด๊ฐ ์์ ํ๊ฑฐ๋, ์๋ก์ด ์ ๋ณด๋ฅผ ์ ๋ ฅํ์ฌ ์ถ๊ฐํ๋ค
(5) ์ธ๊ธ๊ณ์ฐ์ ๋ด์ญ์ญ์ ํญ
- ์ธ๊ธ๊ณ์ฐ์ ์ญ์ : ์ญ์ ๊ฐ๋ฅํ ์ธ๊ธ๊ณ์ฐ์ ๋ด์ญ์ ๋ณด์ฌ์ค๋ค
- ์ธ๊ธ๊ณ์ฐ์ ์ญ์ ๋ฉ๋ด : ์ญ์ ํ ์ธ๊ธ๊ณ์ฐ์ ๋ฒํธ๋ฅผ ๋ฃ๊ณ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ญ์ ์ฒ๋ฆฌ
(6) ๋ฌผํ์๋ น์ฆ ๋ด์ญ์ญ์ ํญ
- ๋ฌผํ์๋ น์ฆ ์ญ์ : ์ญ์ ๊ฐ๋ฅํ ๋ฌผํ์๋ น์ฆ ๋ด์ญ์ ๋ณด์ฌ์ค๋ค ์ธ๊ธ๊ณ์ฐ์ ๊ธฐ์ค ์ค๋ณต์ธ ๊ฑด์ '์ค๋ณต๊ฑด ๋ณด๊ธฐ'๋ฅผ ์ ํํ์ฌ ํ์ธ ๊ฐ๋ฅ
- ๋ฌผํ์๋ น์ฆ ์ญ์ ๋ฉ๋ด : ์ญ์ ํ ์ ์๋ฌธ์๋ฒํธ(๋ฌผํ์๋ น์ฆ)๋ฅผ ์ ๋ ฅํ๊ณ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ญ์ ์ฒ๋ฆฌ
(7) ์ฐธ๊ณ ์ฌํญ ํญ
- ์ฐธ๊ณ ์ฌ์ดํธ : ๊ด๋ จ ๊ท์ ์ด๋ ์ ์ฐจ ๋ฑ์ ํ์ธํ ์ ์๋ KTNET ๋ด๊ตญ์ ์ฉ์ฅ ์ฌ์ดํธ๋ก ์ด๋
- ํน์ด์ฌํญ1 (์ ์ถ๋์ ์๋ฅ๊ฐ ์์ด๋ก ๋์ค๋ ๊ฒฝ์ฐ) : ์๋ก์ด ์ ํ์ ์๋ฅ๊ฐ ๋์จ ๊ฒ์ผ๋ก, ๋์ ๋๋ฆฌ convert_table์ ๊ฐ์ ์ถ๊ฐํ๋ค
-
open_nerp_session : SAP์ ์ผ์ session ๋ฐํ
-
exist_lc_ZSDP10200_C : L/C ๋ฑ๋ก์ฌ๋ถ๋ฅผ ํ์ธํ์ฌ bool ๋ฐํ
-
crawl_lc_ZSDP10200_C : ๋ฑ๋ก๋ L/C์ ๋ด์ญ์ ๊ฐ์ ธ์ dict ๋ฐํ
-
input_and_search_xml_ZLLEI09020 : ํน์ ์กฐ๊ฑด์ xml๋ฌธ์๋ด์ญ ์กฐํ
-
loop_get_xml_ZLLEI09020 : ์กฐํ๋ xml๋ฌธ์๋ค์ db์ ์ถ๊ฐ
-
input_and_search_taxinv_ZRSDM62110 : ํน์ ์กฐ๊ฑด์ ์ธ๊ธ๊ณ์ฐ์ ๋ด์ญ ์กฐํ
-
loop_get_taxinv_ZRSDM62110 : ์กฐํ๋ ์ธ๊ธ๊ณ์ฐ์๋ค์ db์ ์ถ๊ฐ
-
register_localLC : ์ ๋ ฅํ ์ ๋ณด๋ก NERP์ ๋ฑ๋ก
-
first_and_end_of_month : ์ ๋ ฅํ ์ฐ/์๋ก ์์ ์์/๋์ datetime์ผ๋ก ๋ฐํ
-
check_NegoDueDate, check_progress_localnego : DataFrame ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ฉ(row๊ธฐ์ค)
-
chk_and_change_df, merge_for_locallc_df : Viewer์ฉ DataFrame ์์ฑ(row๊ธฐ์ค ํจ์ ๋ฑ ์ ์ฉ)