2025-06-24 12:17:35 +09:00
|
|
|
# [출하] 포장 일반 및 자동화 프로그램
|
|
|
|
|
|
|
|
### **1. 프로그램 정보**
|
|
|
|
|
2025-06-25 17:47:37 +09:00
|
|
|
#### - DUALSONIC SalesPacking MES Program (Ver. 1.1.2)
|
2025-06-24 12:17:35 +09:00
|
|
|
|
2025-06-25 17:47:37 +09:00
|
|
|
- **설치 위치:** 4층 포장 구역
|
|
|
|
- **실행 파일:** `SalesPacking_MES_API_Project.exe`
|
|
|
|
|
|
|
|
#### - 주요 기능
|
|
|
|
- 출하장 제품의 자동 포장 처리지시에 따라 포장 작업을 지원합니다.
|
|
|
|
- 일반건 및 대량건의 무게 측정을 자동화합니다.
|
2025-06-24 12:17:35 +09:00
|
|
|
---
|
|
|
|
### **2. 프로그램 실행 화면**
|
|
|
|
|
2025-06-24 13:33:25 +09:00
|
|
|

|
|
|
|
|
|
|
|

|
|
|
|
|
2025-06-24 12:17:35 +09:00
|
|
|
---
|
|
|
|
|
|
|
|
### **3. UI 구성요소**
|
|
|
|
|
|
|
|
* **상단 영역**: MES 로그인, 송장 등록, P/N 입력 버튼, 패킹코드, 설정, 종료
|
|
|
|
* **오른쪽 영역**: 요청 수량, 작업 수량, 잔여 수량, 제품 사양(메인/단일 정보, 수량, 시작/종료/소요/평균 시간), 초기화/등록 버튼
|
|
|
|
* **왼쪽 영역**: 대기 중 출고 조건(구성 품목 명, 구매 수량, 확인 수량)
|
|
|
|
* **설정 화면**:
|
|
|
|
|
|
|
|
* 통신 포트, 자동 설정
|
|
|
|
* 무게 오차범위 설정
|
|
|
|
* 출고 이벤트/이벤트명 등록
|
|
|
|
* 포장 개수 설정, 프린터 및 PC 식별 코드 관리
|
|
|
|
* 라벨 변경, 새로고침, 저장
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
### **4. Mode1 vs Mode2 동작 흐름**
|
|
|
|
|
|
|
|
| 구분 | Mode1 (일반 모드) | Mode2 (자동화 모드) |
|
|
|
|
| ------------- | -------------------------- | ------------------------- |
|
|
|
|
| **조건** | `rdbMode1.Checked = True` | `rdbMode2.Checked = True` |
|
|
|
|
| **작동 방식** | 수동 포장 (바코드/무게 수동 처리) | 자동 포장 (API + 무게 자동 처리) |
|
|
|
|
| **무게 검증** | 체크박스 `ckbWeight`에 따라 수동 측정 | 라디오버튼 `rdbAuto2`로 자동 측정 |
|
|
|
|
| **주문 처리** | 바코드 기반 단건 처리 | ERP/MES API 연동, 다건 처리 |
|
|
|
|
| **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["작업 완료"]
|
|
|
|
```
|