2025-07-14 11:21:53 +09:00

77 lines
3.2 KiB
Markdown

# [출하] 포장 일반 및 자동화 프로그램
### **1. 프로그램 정보**
#### - DUALSONIC SalesPacking MES Program (Ver. 1.1.2)
- **설치 위치:** 4층 포장 구역
- **실행 파일:** `SalesPacking_MES_API_Project.exe`
#### - 주요 기능
- 출하장 제품의 자동 포장 처리지시에 따라 포장 작업을 지원합니다.
- 일반건 및 대량건의 무게 측정을 자동화합니다.
---
### **2. 프로그램 실행 화면**
| 메인 화면 | 설정 화면 |
| ----------------------------- | ------------------------------ |
| ![메인화면](ui_images/main.png) | ![설정화면](ui_images/setting.png) |
---
### **3. UI 구성요소**
* **상단 영역**: MES 로그인, 송장 등록, P/N 입력 버튼, 패킹코드, 설정, 종료
* **오른쪽 영역**: 요청 수량, 작업 수량, 잔여 수량, 제품 사양(메인/단일 정보, 수량, 시작/종료/소요/평균 시간), 초기화/등록 버튼
* **왼쪽 영역**: 대기 중 출고 조건(구성 품목 명, 구매 수량, 확인 수량)
* **설정 화면**:
* 통신 포트, 자동 설정
* 무게 오차범위 설정
* 출고 이벤트/이벤트명 등록
* 포장 개수 설정, 프린터 및 PC 식별 코드 관리
* 라벨 변경, 새로고침, 저장
---
### **4. Mode1 vs Mode2 동작 흐름**
| 구분 | Mode1 (일반 모드) | Mode2 (자동화 모드) |
| ------------- | -------------------------- | ------------------------- |
| **조건** | `rdbMode1.Checked = True` | `rdbMode2.Checked = True` |
| **작동 방식** | 수동 포장 (바코드/무게 수동 처리) | 자동 포장 (API + 무게 자동 처리) |
| **무게 검증** | 체크박스 `ckbWeight`에 따라 수동 측정 | 라디오버튼 `rdbAuto2`로 자동 측정 |
| **주문 처리** | 바코드 기반 단건 처리 | rdbMesDbPg + rdbNew + rdbAuto1 (제품 등록) rdbMesDbPg + rdbAuto2(무게 측정) |
| **Save Flow** | `saveStart()` → 수동 데이터 저장 | `saveStart()` → 자동 데이터 저장 |
| **세트 코드 처리** | 수동 분해 또는 처리 없음 | 세트코드 자동 분해 및 구성품 계산 |
| **로그 저장** | 필요 시 `saveLogOrder()` | 자동 로그 저장 (무게 포함) |
| **적용 예시** | 일반 포장 | 대량 출하용 자동 포장 시스템 |
---
### **5. 전체 동작 FlowChart**
```mermaid
flowchart TD
A["프로그램 시작 (mainForm_Load)"] --> B["설정 로드 (loadConfig)"]
B --> C["UI 초기화"]
C --> D["바코드 입력"]
D --> E["입력값 분기 (codeParsing())"]
E -->|ERPORDER| F["ERP 처리"]
E -->|MESORDER| G["MES API 처리"]
E -->|PRODSCAN| H["제품 스캔 처리"]
E -->|COMSCAN| I["복수 코드 처리"]
E -->|PACKING| J["포장 처리"]
E -->|기타| K["오류 처리"]
F & G & H & I & J --> L["packingRun() → 조건 검사"]
L --> M{"조건 만족?"}
M -->|Yes| N["saveStart() 호출 (DB 저장, 무게검증 등)"]
M -->|No| O["오류 출력 및 Exit"]
N --> P["DB 저장"]
P --> Q["로컬 저장"]
Q --> R["작업 완료"]
```