2026-10-19(월) 세션 — 한샘 소요 한남 2차(2184) GY01DMT 자재발주서 = 2차 발주(PFS #8) — 기록: [코디]
지시
[페페] 「소요한남 2차 GY01DMT 자재발주서 별도로 만들어줘. 2차 발주로 등록해줘. 원장 자재 길이는 2700으로 통일한다. 운영배포」(채팅 직접 = 운영 반영 승인).
작업 폴더 = C:\dev\_work\hannam2-gy01dmt-1019\(step1_round · step2_apply8 · recalc · recalc2 · build_xlsx · verify8 · nas_put). 선례 = session-2026-10-13-hannam2-inek10-order.md(#4).
결정
- 「2차 발주」 = PFS 기존 «추가 차수» 기능(
POST /api/mat-orderpaper/4/round→ #8, round_no 1 · parent_no 4). 코드 변경 0. 제목 「(도어재 GY01DMT) 소요 한남2차 99A — 2차 발주」. #4(INEK10 확정 r5) 무변경. - 🔴 #28 은 stale(신동승 26.10.16 17:59 KST 웹에서 54행 수정 · API stale=1). 저장본 bom 은 수정 전 수치 → 장수를 bom 에서 안 가져오고 «현재 행» 기준 1220x2700 재산정(총괄 지시). 엔진 재실행·#28 저장 안 함. 현재 #28 행에 GY01DMT/70-113 없음 → 넣지 않음.
- 재산정(로컬 휴리스틱 길로틴 팩킹 · kerf 7 · 회전 없음 ·
recalc2.py): 유사PP 단면 21부재 11.451㎡ → 4장(면적 하한 4 · 활용 86.9%) · 양면 4부재 0.833㎡ → 1장 = 5장. 저장본 bom = 8장(2440 4 + 2700 4). 펫시트 = 면 소요 (1×2+4)×3.0m=18.0+셋업 0.5 → 19 → 20 → +여유 10 = 30M(저장본 40M). 엣지 22mm 둘레 98.12m(저장본 98.27) → 99 → 100 → +10 = 110M(동일). 칼라샘플 1EA(동일). - 업체·입고처(PFS 데이터 기준 · 페페 확인 전 추정): 보드 오엠씨(PFS 제안 past-majority 188건 · #1·#7 PET 보드 선례) → 월드산업(#4 와 같은 도어 가공처) · 펫시트 조운IMT(GY123MT·IV075EMT·PQFA2T 선례, 근거 약함) → 입고 오엠씨 · 칼라샘플 조운IMT → 진영LDM · 엣지 선재기업(PFS 기본·#7 선례) → 월드산업. #4 의 다각형과는 다르다(다각형=INEK10 무늬목 전용 실적).
산출물
- 운영 PFS 자재 발주서 #8 확정 r6(2026-10-19 11:23:34 KST · 발주일 10.19 · 입고처 월드산업) · 살아 있는 5줄 · 자재관리 5행(field 2184 · 대기 · PFS-MAT#8).
- NAS 새 파일
\\192.168.0.101\공유폴더\2026현장\진행중\10월\한샘 소요 한남 2차\(GY01DMT)한샘 소요 한남 2차 원부자재발주서.xlsx(11:26:06 KST · md5 2b9c1707137f9ee885a72e8c6b199915 왕복 일치 · 기존 17항목 무변경 · keywords PFS-MAT#8). 오엠씨 탭 수종 칸 「MDF 9자」(양식에 길이 칸 없음). - 검증
verify8.pyFAIL 0(운영 재GET 대조 · #4·#28 무변경 · 자재관리 5행 · 엑셀 셀 데이터).
남은 것
- [페페] 업체·입고처 확인(특히 펫시트·샘플 조운IMT, 보드·엣지 입고처 월드산업). 틀리면 amend(업체/입고처, 자재관리 «대기»일 때) 가능.
- 보드 여유 0(활용률 86.9% — 재단 실수 여유 없음). 여유 필요하면 #8 은 확정이라 amend 불가 → 추가 차수.
-
28 stale 해소(웹에서 다시 저장) 후 엔진이 내는 장수가 5장과 다르면 차이 확인.
- 발송·출력은 안 함(orderpaper-dispatch 몫).
- [코디] 빠진 칼라 검토(같은 날 · 읽기 전용 GET) = 누락 확정 0 · 확인 필요 3: ①세탁실 도어 「효산 무늬목유사 LPM(코드 미정)」 18T 5부재(공틀 3·후면휠라 2) — 네스팅 #30 엔 있었으나 몸통 #31(자재 발주서 #7 출처)·도어 #28 모두 없음 → 의도 제외인지 [페페] ②INEK10 펫시트 230M·칼라샘플 1 — #4 소프트삭제 후 어디에도 없음 ③#28 stale(26.10.16 17:59 웹 수정) → 재저장 후 #4 INEK10 보드·엣지 수량 대조. 참고: 몸통 N445·N251·N239·SE-021L = #7 확정 · 70-115·70-113 = 현재 부재 없음 · #7 9T/23T 엣지 3줄 소프트삭제(신동승 15:18~19, 사유 메모 없음).
통합 엑셀 (같은 날 후속 · [페페] 「몸통+본 원부자재발주서 통합 + 추가내용 주황 탭 · 빈 값도 탭 만들어 표기」)
- NAS 새 파일
\\192.168.0.101\공유폴더\2026현장\원부자재발주서\10월\통합발주(동기화제외)\한샘 소요 한남 2차 원부자재발주서(통합).xlsx(11:57:43 KST · md5 829a9f69… 왕복 일치 · 원본 2개·하위폴더 기존 4항목 무변경). 하위폴더 = 동기화 이중적재 회피(rules.md 26.10.6). - 베이스 = 몸통(#7) 파일 + 메인(#4) 다각형 탭 · keywords PFS-MAT#7 유지. 추가(주황 FFC000) = 오엠씨(GY01DMT 11~12행) · 상원보드(아일랜드 누락분 네스팅 #34 N239 18T 3·15T 3·4.5T 1, 20~22행 · 보드만) · 선재기업(GY01DMT 엣지) · 조운IMT(신설 · GY01DMT 펫시트·샘플 + INEK10 펫시트 230M·샘플 미정) · 라고데코(#11) · 청솔산업(#12 초안 · 입고일 검토중 · 서랍 크기 실측필요) · 이지웨이(#8 No.83 벤치쿠션 취소선 「제외 — 청솔산업 #12로 이관」, [페페] 이지웨이 쿠션 불참 확정) · 세탁실도어(미정).
- [페페] #31 누락 EXEDRA2 측판·천판·신발장D 코너기둥·보강밴드목 = 마감재 쪽 정리완료 → 폐기(엑셀 미포함).
- 작업 폴더
C:\dev\_work\sohan2-merge-1019\(build_base.py → build_stage2.py · nas_put.py). PFS 반영 = 페페가 엑셀 수정 후 요청 예정. - 확인 대기: 오엠씨 D11 원본 「GY910DMT」 → GY01DMT 로 덮음(오타 추정) · 엑셀↔PFS #7 차이(4.5T↔6T 표기 · 선재 N239 엣지 400 vs 200M · 피스마개) · 상원보드·선재기업 원래 초록 탭 → 주황.
통합 엑셀 ↔ 운영 PFS 재정리 (같은 날 후속 · 12:10~12:12 KST · [페페] 「pfs 등록 항목과의 연동도 통합 엑셀파일 기준으로 재정리 · 추후 엑셀 수정 → 재반영 요청」)
- 정본 = 통합본(NAS md5 829a9f69 → 12:08:54 KST 415bf2f9 = 다른 작업자의 상원보드 인쇄범위 밖 「여유자재」 주석 열 · A~J 데이터 칸 동일 확인). 대조·반영 도구 =
C:\dev\_work\sohan2-merge-1019\sync\(sync.py diffdry-run →sync.py apply·verify.py·fetch_nas.py --siblings·snap.py). apply 는 직전 diff 와 계획이 같을 때만 돈다(엑셀·PFS 가 그 사이 바뀌면 거부). - 운영 쓰기(코드 변경 0): 자재 #4 r5→r7 = 엣지 34/27/22/16mm(60/50/380/20M) 4줄 소프트삭제 + 수동 행
1T*36mm 엣지 150M(cc901f74)·1T*24mm 엣지 500M(0a578537) · 18T 10자 비고 「,밝은톤 위주」 — 근거: 10.13 13:03 코디 생성본은 34/27/22/16 이었고 13:18 사람이 36/24 로 고친 메인 파일이 실제 발주본. 자재 #7 r23→r25 = 아일랜드 누락분 수동 행 3(N239(SC) 18T PB 3 · 15T PB 3 · 4.5T MDF 1, 비고 「아일랜드 누락분(네스팅 #34)」) · N239 22mm 엣지 200→400M(b896eb3c 삭제 + 4fa1d7c9 추가) · 효산엘피엘 칼라샘플 N239/N251/N445 각 1EA(입고일 10.19, 엑셀에만 있던 행) · 상원보드 12줄 비고 「E0,효산, 가죽경면」. 부자재 #8 No.83 이지웨이 벤치 쿠션(43c36777) = 「[삭제] 」 품명 + 수량 「0(삭제)」 + 비고 원문 보존(부자재 항목엔 소프트삭제 칸이 없어 #8 기존 관례 따름 · 118행·line_id·순서 유지). 부자재 #12 draft 유지 · 비고 2칸만 엑셀대로(입고일 10.29 그대로). #8(GY01DMT)·#11 무변경. - 자재관리 2184: 41→45행(+9 −5) 전부 «대기». 재GET 대조 실행 항목 0 ·
verify.pyFAIL 0. - 반영 안 함(보고): 상원보드 엑셀 「6T MDF 경면양면」 ↔ PFS 4.5T 3줄(근거: 계산 출처 네스팅 #31 = 4.5T · 상원보드 경면 얇은판 실적 4.5T 10건/효산엘피엘 4.5T 4건 · 6T 경면 실적 0건 → 엑셀 표기 오기 추정) · 피스마개 엑셀 6·6·10장 / 1세트 ↔ PFS 320·320·2720·160EA(단위 다름) · 입고처(통합 탭 입고처 1줄 = 다른 문서 행과 충돌: 오엠씨·선재기업 탭 「월드산업」 vs #7 행 포인, 조운IMT 「진영LDM」 vs #8 펫시트 오엠씨) · 입고일(선재 탭 10.21 vs #7 10.20, 다각형 10.20 vs #4 자재관리 10.21·새 엣지 2행 없음) · #11 비고 요약본 · 미정 행(세탁실도어 2 · 조운IMT INEK10 펫시트 230M·샘플).
- 연동 표식: 월 폴더 메인(PFS-MAT#4)·몸통(PFS-MAT#7)은 파서가 «파일째» 건너뜀 = 이중 적재 없음 · 통합본(#7)은 동기화 제외 하위폴더 · GY01DMT 본(#8)은 현장 폴더(동기화 대상 밖). 단 몸통 파일은 아일랜드 3행이 없어 matcheck 「표식 파일 ↔ 자재관리 차이」 경고가 날 수 있다(적재 0).
- ⏳[페페] 6T↔4.5T 표기 · 피스마개 단위 · 탭 입고처 · 입고일 기준(엑셀 vs 자재관리) · 새 #4 엣지 자재관리 입고일.
NAS 정리 (12:3x KST · [페페] 「통합 최신 파일 상위로 · 구버전 하위 보관」)
- 이동(rename만 · 삭제 0 · md5 전후 일치): 통합본 →
\\192.168.0.101\공유폴더\2026현장\원부자재발주서\10월\한샘 소요 한남 2차 원부자재발주서(통합).xlsx(415bf2f9) · 옛 개별본 2개(몸통 a66a8a44 · 메인 bdc88810) →…\10월\구버전\. 도구C:\dev\_work\sohan2-merge-1019\nas_reorg.py· sync 도구 정본 경로 월 폴더로 수정(diff 재실행 실행 0). - 동기화 영향 모의(
orderpaper_parse.parse_file): 적재 0(PFS-MAT#7 표식) · mat_check 대조 52품목(통합본 = #4·#8·부자재 섞임 → #7 자재관리와 «차이» 경고 소음 가능) · 현장명 파싱 「소요 한남 2차 원부자재발주서(통합)」.
발주 완료 반영 — 2차 발주서 #9 · 6T · 자재관리 «진행» (14:34~14:40 KST · [페페] 「자재 발주 완료했다. 엑셀파일 기준으로 PFS까지 연동 맞춰줘. 운영배포」 · 「청솔산업만 미발주」 · 「N445 선재 엣지 신규제작 → 비고」)
- 정본 = 월 폴더 통합본. 페페 14:12 KST 본(c7f68fdd)이 기준 25f6d8e8 과 달라 바뀐 칸 294개(
sync\cell_diff.py)를 먼저 뽑음 — 조운IMT→리빙아트 탭 · 피앤알 탭 신설(미성형보드 18T MDF 9자 10매 → 오엠씨) · 이지웨이·세탁실도어 탭 삭제 · 오엠씨 유사PP 4→6·SE-021L PB→MDF 9자·입고처 포인·입고일 10.21 · 선재 GY01DMT 엣지 2차 블록 110→200M · 상원보드 2차 블록 4/4/2 · 다각형 9T·22T 입고처 포인 · 라고데코 「원단 4야드」 10.21. - NAS 쓰기 1회: 선재기업 H10·H11 = 「신규제작 · 발주수량보다 추가 입고 예정」(zip XML 치환 · 다른 칸 diff 0 · 백업
C:\dev\_work\sohan2-merge-1019\nas_backup\…261019-143431.bak· 14:34:31 KST · md5 e84f0a4f 왕복 일치). - 운영 쓰기(코드 변경 0): #9 신규(#7 의 추가 차수 · done r5 · 발주 10.19 · 입고 10.26 · 포인 · 제목 「소요 한남2차 — 2차 발주 · 아일랜드 누락분(네스팅 #34)」) = N239(SC) 18T PB 경면양면 4 · 15T PB 경면양면 4 · 6T MDF 경면1면 2(복사 행 24 소프트삭제). #7 r25→r28 = 아일랜드 3줄 소프트삭제(#9 로 이관) · 4.5T 3줄 amend 규격 → 「6T MDF 경면1면」(수량 그대로 · 자재관리 같은 행) · SE-021L 18T PB→MDF 양면 + 비고 「9자(2700mm)」 + 입고일 10.21 · N445 엣지 2줄 비고 · 칼라샘플 3줄 입고처 포인→진영LDM(앞 apply 때 내 잘못 정정). #8 r6→r9 = 유사PP 4→6(교체 b09e519e) · 엣지 110→200M(교체 09815040) · 미성형보드 피앤알 10매 추가(5791bc55) · 펫시트·샘플 업체 조운IMT→리빙아트 · 입고처·입고일. #4 r7→r8 = 9T·22T 입고처 포인. 부자재 #11 = 「원단 · 4야드」 2줄 · 입고일 10.22→10.21. #12 draft 그대로.
- 자재관리 2184 = 46행 전부 «진행»(상태 = 대기/진행/완료 · 「발주 완료」 = 진행으로 해석) · 문서별 block_key 재계산으로 매핑 · 중복 0. 재GET 대조 실행 0 ·
verify.py before2 after2 --expect-status=진행 --allow-hdr=sub11:receive_dateFAIL 0 ·sync.py diff실행 0. - 도구 갱신
C:\dev\_work\sohan2-merge-1019\sync\sync.py(29행 블록 인식 · BLOCK_DOC 상원보드 2차 → #9 · 품명짝 → amend 규격 · 입고처·입고일은 기준본sync\baseline.xlsx대비 바뀐 칸만 ·--mark-ordered). - ⚠ 이제 행이 «진행»이라 엑셀 수정 재반영 때 수량 교체·삭제는 서버가 거절한다(입고·진행 행 보호) → 해당 행 자재관리 상태를 «대기»로 되돌린 뒤 apply.
피스마개 = 장 단위 · #7 피스마개·선재 입고일 정정 (14:45~15:00 KST · [코디] · [페페] 결정 4건)
- [페페] ①피앤알 미성형보드 18T MDF 9자 10매 = #8 그대로 ②「1장당 수량이 160EA면 낱개수량 말고 앞으로 장수로 표기해라」(피스마개 시트 1장 = 160EA) ③선재기업 1차 입고일 = 10.21 ④라고데코 「※선입금 필요, 견적서 대기중」 줄 = PFS 에 안 넣음.
- 코드(운영배포):
C:\dev\pfs\common\material_order\calc.pyCAP_EA_PER_SHEET = 160(노브 1곳) ·cap_sheets(ea)= ceil(EA÷160) ·_body_items피스마개 줄 단위 EA→장(통합 = ceil(원장×160÷160) · 현장 = 원장 비율 최대잔여 배분) · CALC_RULE_VERSION 2026-10-19.1 · BODY_OPEN_ISSUES ⑦ 뺌 · item_id·params 불변(input_hash 유지) · 확정 문서 데이터 마이그레이션 없음.orderpaper-sync\nesting_draft.pyqty_text 「장」 단위 표기. 서버 NAS 엑셀(mat_orderpaper_excel.py)은 원래ad.qty_text·_qty_cell로 「N장」 이라 무변경. 미추적 옛 도구orderpaper-sync\momtong_order.py도 「N장」(로컬만 · git 밖). - 검증: test_calc 84/84(새 t_cap_sheets 160→1·161→2·320→2·2720→17·0→0 · 2현장 배분 합) · test_mat_orderpaper 271/271(골든 body_j13 장 꼴 변환 비교 · ⑰ 4000EA→25장 · ㉑ 1600EA→10장) · nesting_draft --selftest OK. deploy 워크트리는 263/271 = 변경 전 deploy-live 도 263(NAS 파서 orderpaper-sync 가 deploy-live 에 없어 ⑳⑤⑮⑯⑰ 8개 · 기존 환경 차이).
- 커밋: master
a4b6b2f2(calc+테스트) ·c0722cf9(nesting_draft) → push(테스트 8001 Actions 성공 14:55 KST) · deploy-live7678b404(a4b6b2f2 체리픽만 · Actions 성공 14:57 KST). 사이트맵 재빌드 = 페이지 65 · 미반영 7(자재 발주서·calc 파일 master=deploy-live 차이 0 · 7건은 다른 세션 몫). - 데이터(운영 #7 r28→r31 · NAS 정본 md5 e84f0a4f 그대로 · 엑셀 무변경): 짝 근거 = 품명(칼라)·규격 정확 + 업체 탭. 효산엘피엘 r13 N239(SC) 6장 ←
71a1c56e320EA → 새0b4cc0a2· r14 N251(SC) 6장 ←8c37f40e320EA →5506e783· r15 N445(SC) 10장 ←a6d2ac082720EA →0a2ed998· 선재기업 r12 SE-021L 1세트(비고 「최소 생산 분량」 · 입고일 10.21) ←7cc2ca8f160EA →2b6c43de. 선재기업 엣지 4줄(4fa1d7c9·847d13e8·1da47c81·a7688fcd) 품목 입고일 → 10.21(머리 입고일 10.20 은 전 업체 공통이라 안 바꿈). - 자재관리 2184: 진행 4행(#9856~9859)만 «대기» 되돌림(
sync\set_status.py) → apply(교체 = 소프트삭제 + amend 수동 행) →--mark-ordered새 4행(#10473~10476) «진행» · 엣지 4행(#9853·9854·9855·10302) item_receive_date 10.21(화면 = item 값 우선). 46→46행 전부 «진행» · 중복 0. - 검증:
verify.py before3 after3 --expect-status=진행FAIL 0 ·sync.py diff재실행 실행 0 · 스냅샷C:\dev\_work\sohan2-merge-1019\sync\before3\(쓰기 전 · 진행 상태) ·before3_apply\(대기 되돌림 직후) ·after3\. - 도구 갱신
sync.py--fix-unit <line_id 앞자리>(품명·규격 정확 짝일 때만 단위 달라도 엑셀 수량·단위·비고로 교체) ·--fix-date(기준본 무관 엑셀 입고일) ·--before-dir/--after-dir. 백업sync\runs\sync_before_unitfix_1019.py.bak. - 남은 판단: 효산엘피엘 피스마개 3줄 입고일 = PFS 10.20(머리) ↔ 엑셀 행 10.21(블록 10.19) — 지시 범위(선재) 밖이라 유지 · #8 선재 GY01DMT 엣지 입고일 엑셀 10.21 ↔ PFS 비어 있음(머리 따름) — 보고만. 청솔산업 #12 draft·미발주 그대로.
- [코디] 15:15 KST [페페] 「다각형 10.21 / 청솔 28일」 — 엑셀(NAS 통합, md5 e84f0a4f→1a07b0cf): 다각형!I3 10.20→10.21 · 청솔산업!I3 「입고일 검토중」→10.28(날짜 시리얼) · H8·H9(+M8·M9) 「· 입고처 추천값」 삭제 · 발주서!L23 메모 「«입고일 검토중»(페페 재검토)」→「입고일 10.28」(zip XML 치환
sync\edit_dates_1019c.py). PFS: 자재 #4 11줄 입고일 null→10.21 · 부자재 #12 머리·2행 10.29→10.28(draft 유지) · 비고 2줄 + 제목 끝 「· 입고처·입고일 추천값」 삭제(sync\fix_sub12_title.py). 「임시」는 어디에도 없었음. - 검증:
verify.py before5 after5b --expect-status=진행 --allow-hdr=sub12:receive_date,sub12:titleFAIL 0 ·sync.py diff실행 0 · 자재관리 46행 전부 «진행». 스냅샷sync\before5\·after5\·after5b\· 백업nas_backup\…261019-151535.bak.
관계
domain:발주 svc:자재발주서 · 선행 = session-2026-10-13-hannam2-inek10-order.md(#4) · session-2026-10-12-hannam2-takeoff-r3.md(네스팅 #28).