/*
	ITC81DB_0H
	INTECH AutoWeighingChecker Control Program
	Standard Model(Digicell)
	
	H/W : IEC1000-104
	O/S : WinCE 6.0
	Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	
	Modify ITC81DB
	
	기본형 컨베어 고정밀센서 계량기
*/

@ Ver 1.0.8 by CJY
	- 2021.03.19
	- Ver 1.0.7 Modify
	- 이더넷 통신 Server - Local Port 변경 후 재부팅하면 저장 안되는 버그 수정
	  SystemConfig2 - EthernetLocalPort 추가

@ Ver 1.0.7 by CJY
	- 2020.12.09
	- Ver 1.0.6 Modify
	- 외부입력 항목 통일 - NG, START, STOP

@ Ver 1.0.6 by CJY
	- 2020.12.02
	- Ver 1.0.5 Modify
	- 중량조정 시작->"잠시만 기다리세요"->"분동~
	  단계 하나 추가

@ Ver 1.0.5 by CJY
	- 2020.11.27
	- Ver 1.0.4 Modify
	- 판정설정
		1. 필터, 이동평균 -> 엔지니어 메뉴로
		2. 동보정 추가
	- 초기화 시 판정설정 값 이상 버그 수정
	- 엔지니어 모드 진입 시 비밀번호 추가(MMdd0810)

@ Ver 1.0.4 by CJY
	- 2020.11.19
	- Ver 1.0.3 Modify
	- 중량조정 - 분동버튼 추가

@ Ver 1.0.3 by CJY
	- 2020.11.17
	- Ver 1.0.2 Modify
	- 기능설정 - 부저/램프 On/Off 기능 VIsible = false 처리(임시)
	- 메인화면 Bypass Run 버튼 초기상태 Normal로 변경

@ Ver 1.0.2 by CJY
	- 2020.11.12
	- Ver 1.0.1 Modify
	- 판정설정 - 결과값 갱신되도록 수정

@ Ver 1.0.1 by CJY
	- 2020.09.24
	- Ver 1.0.0 Modify
	- 메인보드 업데이트 부분 수정
	- 외부출력 모드 정리
	- 프로그램 에러 메시지 로그 저장 기능 추가(SD Card\\DataBackup\\)

@ Ver 1.0.0 by CJY
	- 2020.09.22
	- ITC81DB Ver 6.9.0 Modify
	- 프로젝트 생성

=============================================================

@ Ver 6.9.0 by CJY
	- 2020.08.14
	- Ver 6.8.0 Modify	
	- 전자식 시건장치 Open 기능 추가
	  1. 외부출력 - 시건장치 제어 항목 추가
	  2. 메인화면 - 서브메뉴 Output 제어 부분 추가
	- 자동판정 후 이중지연시간이 판정지연시간보다 긴 경우, (판정지연시간-50) 시간이 이중지연시간으로 입력되도록 수정
	- 엔지니어 설정 - 컨베어 길이 입력할 수 있도록 수정(버그) 
	
@ Ver 6.8.0 by CJY
	- 2020.07.20
	- Ver 6.7.0 Modify
	- 판정설정 자동모드 추가 완료
	- 공장초기화 - 러시아어 문구 나오지 않는 부분 수정

@ Ver 6.7.1 by CJY
	- 2020.07.21
	- Ver 6.7.0 Modify
	- 이중지연 값이 판정지연보다 크면 판정값에 영향을 주는 증상
	  변경된 알고리즘으로 인하여 이중지연 값이 판정값에도 영향을 줌
	  이중지연 값은 판정지연 값 이상이 입력되지 않도록 수정함
	
@ Ver 6.7.0 by CJY
	- 2020.07.16
	- Ver 6.6.0 Modify
	- 메인보드 V6.2.1 호환(진입센서 에러 알람 추가, Bypass/ByNG 기능 추가)
	- 진입센서 에러 알람 추가
	  1. 정지 시, 진입센서 센싱되면 발생
	  2. 진입센서 에러 알람 발생 시, 운전버튼 미작동
	- 판정설정 자동모드(영업부 피드백 완료) 추가 중
	- 메인화면 - 메뉴 Bypass 기능 추가
	- 운전상태로 전환되었을 때, 메뉴모드/중량조정모드면 정지상태로 강제변환

@ Ver 6.6.0 by CJY
	- 2020.06.10
	- Ver 6.5.0 Modify
	- 판정설정 마법사 추가 중
	- 중량조정, 품번변경 관련하여 모든 자리수를 5자리로 고정
	  (기존 : 소수점 없을 경우, 최대 4자리까지 입력 가능했었음)
	- 기능설정 -> 엔지니어 설정으로 이동
	  옵션보드/데이터백업 확장자/데이터백업 포맷/데이터집계 출력 포맷/바코드

@ Ver 6.5.0 by CJY
	- 2020.05.27
	- Ver 6.4.0 Modify
	- 통신 프로토콜 CommMode 19(SmartJet) 추가(액트라 MSC 건)
	  1. STX[1], A01, WeightData[6], EOT[1]
	  2. Pass 시에만 전송
	- Ethernet 통신 EthernetCommMode 17~19 추가
	- 판정설정 마법사 추가 중

@ Ver 6.4.0 by CJY
	- 2020.05.19
	- Ver 6.3.0 Modify
	- ControlMainDisplayMenu : && this.CurrentDisplay == DataStore.MainDisplayStore.DisplayStartMenu 추가
	  현 화면에서 품번변경 시 갱신 안하는 증상때문에 코드 추가하면서 부팅 시 LCD->보드 통신 전송 두번 하게 됨
	- 데이터집계 시작/종료 시간이 현재 시간과 동일하게 표시되는 버그
	  -> 모종의 이유로 시작/종료 시간이 제대로 저장이 안되어 Year가 '1111'(초기값)으로 저장되고, 이 때 현재 시간을 표시하게 되어있음.
	      정확한 시작시간은 측정 가능하나 종료시간에 문제 생기는 경우가 많은 것으로 추정되어 조건식을 StartTime/StopTime 분리함.
	      + 부팅시컨스 종료 후 9031 Count 값을 전송받을 때, StartTime/StopTime 값 확정하여 저장까지 하도록 변경함.
	- 판정설정 마법사 추가 중

@ Ver 6.3.0 by CJY
	- 2020.04.28
	- Ver 6.2.0 Modify
	- 9021 LCD 수신 시,  && this.IsBootingComplete == false 조건 삭제

@ Ver 6.2.0 by CJY
	- 2020.04.28
	- Ver 6.1.0 Modify
	- 자동판정 기능은 장비타입이 '컨베어'일 때만 활성화됨
	- 소수점 2자리일 때 자리수 5자리까지 표시하도록 변경
	  중량값은 5자리로 통신하여 실제 표시되는 값은 5자리까지기 때문
	- Overload 표시
	  1. 운전/정지 상태에서 최대중량 * 1.1 시점부터 O.L 표시(ex. 최대중량 6000g -> 6600g부터 O.L 표시)
	  2. 중량창, 리스트화면, 데이터백업 엑셀파일에만 중량에 O.L 표시
	     통신에는 최대중량 * 1.1 값 전송
	  3. Grade는 'O'(Over)
	  4. 부팅 완료 시(P2001) MaxWeight 값을 보드에서 읽어 OverloadWeight 값 확정

@ Ver 6.1.0 by CJY
	- 2020.04.08
	- Ver 6.0.0 Modify
	- 데이터집계 출력 : OPT1(삼천당제약 옵션) 포맷 Lot No 추가
	- 자동판정 기능 - 엔지니어 설정에서 자동판정 ON 하면 판정설정 화면이 자동판정설정 화면으로 변경됨
	- 운전 중 전원 OFF 시 수량 카운트 값들 저장 안되는 문제점 수정(P9031 참고)
	  V6으로 첫 업데이트 시, 수량 초기화 됨
	- 외부 입력 시, [부저울림]/[램프점등] Enable을 해도 초기 1번만 발생하는 버그 수정
	  '외부 입력 시, [부저울림]/[램프점등]' 기능 추가시부터의 버그(V5.6.2 버전과 동일 코드)
	- 공장초기화 - [Back up], [System Init] 버튼 위치 수정(생산부 강기원 사원 요청)
    - 메인화면-메뉴화면
	  1. 메인화면 품번 변경 시, 선별기설정 부분 업데이트 안되는 버그 수정
	  2. Bypass 부분 Visible = false(보드에 추가가 안되어 있음)

@ Ver 6.0.0 by CJY
	- 2020.04.06
	- Ver 5.6.1 Modify
	- 보드 V6 대로 업그레이드하여 버전 맞춤
	  1. 보드 변경사항
	     - 판정 알고리즘 변경
	     - 타임스탬프 알고리즘 추가
	     - ExNG(외부입력 port) 추가
	  2. LCD 변경사항
	     - 타임스탬프 알고리즘 추가
	     - ExNG(외부입력 port) 추가
	- 판정설정
	  1. 업다운 화면에 '판정지연', '이중지연' 추가
	     관련하여 화면 구성 변경 -> 언어별 이미지 전체 수정
	- 선별기설정 테스트모드 추가
	  1. 선별기설정 화면에서 운전, 정지 작동 가능
	  2. 선별기 모드의 button을 통해 선별기 선택
	- V5.4.1 부터 판정설정에서 품목 변경 안되는 버그 -> 수정
	  (V5.4.1~V5.5.0 배포된 곳 없음)
	- ExNG1, 2(외부입력 port) 추가
	  1. PIN5 : ExNG1 추가, Photo B : ExNG2 추가
	  2. sf : ExNG1, sg : ExNG2
	  3. 운전 시 설정된 포트로 입력이 들어오면 메인화면 아이콘 표시됨
	  4. ExNG1, 2는 금속검출과 동일하게 동작됨(부저울림, 램프적색점등, 선별부 - 외부입력, 외부출력 - ExNG)
	- 타임스탬프 추가
	  1. IO Test 화면에 그래프 추가
	  2. 운전 시부터 5초마다 그래프 갱신, 정지 시 그래프 갱신 멈춤
	
@ Ver 5.6.1 by CJY
	- 2020.04.06
	- Ver 5.6.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 기능설정 - PIN7 스토퍼 설정 시, 적체센서 입력되어도 컨베어 정지 안하도록 설정
	  
@ Ver 5.6.0 by CJY
	- 2020.03.26
	- Ver 5.5.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 엔지니어 설정 화면에서 시리얼/이더넷 통신모드 옵션 기능 사용 추가
	  1. 옵션기능 사용 시, 시리얼/이더넷 화면 통신모드는 None/STD1/Remote/Printer 만 선택 가능
	  
@ Ver 5.5.1 by CJY
	- 2020.03.19
	- Ver 5.5.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- V5.4.1 부터 판정설정에서 품목 변경 안되는 버그 -> 수정
	  (V5.4.1~V5.5.0 배포된 곳 없음)

@ Ver 5.5.0 by CJY
	- 2020.03.11
	- Ver 5.4.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 러시아어 추가

@ Ver 5.4.1 by CJY
	- 2020.03.04
	- Ver 5.4.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- InforSystem2 용기 입력창 띄웠다가 그대로 확인 눌렀을 때 시스템정보2 화면에서 용기 라벨 적색이 되는 부분 수정
	  <- Enter 버튼 눌렀을 때 "00"으로 저장됨
	- SystemParameter4 Class 변경(Main 읽기/LCD 저장용 필드 나눔)
	- Parameter1~4 인자 없는 Load 함수 삭제
	- 자동판정 코드 추가(테스트 및 수정 필요)

@ Ver 5.4.0 by CJY
	- 2020.02.17
	- Ver 5.3.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 중문 추가
	- 메인화면 - 메뉴 Bypass 추가
	- 판정설정 상단 운전/정지 아이콘 클릭 시 운전/정지

@ Ver 5.3.0 by CJY
	- 2020.01.29
	- Ver 5.2.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- Hitachi 방 번호 무조건 COM1값으로 설정되는 버그 수정
	  Hitachi 설정 시 - 세부 설정란에 빈 칸 처리 버튼 추가(ON : 빈칸 없음, OFF : 빈 칸은 Space 처리)

@ Ver 5.2.1 by CJY
	- 2020.01.13
	- Ver 5.2.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- (버그)엔지니어 설정 진입 시, 통신 로그 Open/Close 검사하여 On/Off 버튼 상태 변경

@ Ver 5.2.0 by CJY
	- 2019.12.27
	- Ver 5.1.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 적체센서 알람 추가
	  1. 판정지연 시간만큼 적체센서가 감지되면 컨베어 정지(ConverterAlarm() 참고)
	  2. 적체센서 알람 시 부저/램프 ON 기능 추가
         SWH에서는 NG 시 부저/램프 분리동작 안됨

@ Ver 5.1.0 by CJY
	- 2019.11.15
	- Ver 5.0.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 바코드 품번 50개 제한 풀기 -> 1000번

@ Ver 5.0.1 by CJY
	- 2019.10.02
	- Ver 5.0.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 엔지니어 설정 화면 추가(Hidden Menu)
	  기능설정의 장비타입, Log ON/OFF 항목 엔지니어 설정 화면으로 이동
	- 선별기설정 화면 품목변경 가능하도록 수정
	- 랜덤모드
	  1. 단위 : g일 때, 그룹별 중량 차이 50g / 단위 : kg일 때, 그룹별 중량 차이 1kg
	  2. 랜덤모드 사용 시, 소수점 변경하면 랜덤모드 설정 초기화
	     -> YesNo 'case 24 : 랜덤모드 설정값 초기화' 추가
	- 중량조정
	  1. 최대중량/분동중량 변경 후 소수점 변경 시, 이전 값으로 돌아오는 버그
	     -> 소수점 변경 시, ParameterRead3901 통신 보드로 전송(수신 시, 보드에 저장된 값이 CollectionCalibrationItem에 저장됨)
	- 데이터집계 출력 포맷 추가
	  1. 삼천당제약 요청
	     STD1 : 기존 출력 포맷
	     OPT1 : 삼천당제약 요청 출력 포맷
	     - YJ-310T 프린터는 한글 완성형/조합형을 지원하므로 EUC-KR 인코딩 필요
	       관련 코드 : byte[] strByte = Encoding.GetEncoding("ks_c_5601-1987").GetBytes(strTemp);
                          this.smartSerialPort4.WriteNoneFrame(strByte);

@ Ver 5.0.0 by CJY
	- 2019.09.24
	- Ver 4.2.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- Version 4 -> Version 5 업데이트 시, 기존값이 ""라서 Load 오류 발생 -> 강제로 값 삽입
	  모든 파일 Create 시, string값을 "" -> "0"으로 변경
	- BarcodeLotNo 부팅 시에만 변경된 LotNo이 반영되는 버그
	  -> LotNo 입력 시, Barcode의 LotNo 목록 재저장
    - 부팅 시, 인쇄버튼 Up/Down 상태 반영(7인치에서는 반영 안했었음)
	- 메인화면 HiddenMenu 버튼 추가
	  버튼 클릭 시, 바코드 값 출력하는 Label 하단 확인 가능
	- 바코드 프로그램 버그
	  1. FrameSeparationType이 STXANDETX -> NONEFRAME_READTIMEOUT으로 변경하면서(이더넷 추가할때 변경한 것으로 추정)
	     STX ETX 모두 수신받아 NoMatch로 판정하는 버그 수정
	  2. 품목설정 listbox 3번 이상 선택 시 Edit버튼이 활성화 안되는 버그(랜덤모드 추가 시 코드 삭제한 것으로 추정)
	     -> 코드 추가하여 버그 수정
	  3. 바코드 Addon 설정 시 문제되는 부분 전반적으로 수정
	- STD1 프로토콜 변경(Sign[1] 추가)
	- 업다운 체커 옵션추가
	  1. 기능설정 - 정지계량 -> 장비타입
	  2. 판정설정 화면 변경, 판정지연->하강지연, 이중지연->상승지연
	  3. 메인화면, 판정설정화면 업다운 버튼 추가
	- 부팅시퀀스 P9014->P9025 변경, Dummy 추가
	- 시스템정보 P9513, P9515 항목 변경 및 Dummy 추가
	- 중량설정값 쓰기 프로토콜 P9003 -> P9024 변경
	※ 파라미터맵 20190917 버전 참고
	※ 레드마인 '	ITC81DB 1열 업다운 체커 옵션화 + Version 5 업데이트' 게시글 참고

@ Ver 4.2.3 by CJY
	- 2019.11.12
	- Ver 4.2.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 기능설정 OPT2 선택 시, PIN5 : 적체확인, PIN6 : 디스펜서 진입2, PIN7 : 디스펜서 진입1 자동설정
	  + PIN5, 6, 7 Disable 처리

@ Ver 4.2.2 by CJY
	- 2019.10.02
	- Ver 4.2.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 품목설정 3번 이상 품목 클릭 후, 1번 혹은 2번 클릭하면 품명/LOT Edit 버튼 비활성화 되는 버그
	
@ Ver 4.2.1 by CJY
	- 2019.09.19
	- Ver 4.2.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 바코드 사용 시, 품번 3~ 선택해도 Edit 버튼이 Enable 안되는 버그 수정

@ Ver 4.2.0 by CJY
	- 2019.09.17
	- Ver 4.1.3 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 기능설정 : Emergency Stop 시, 부저울림/램프켜짐 동작 추가

@ Ver 4.1.3 by CJY
	- 2019.08.29
	- Ver 4.1.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- I/O Test - Label name 변경, INPUT/OUTPUT 그룹박스 위치 변경

@ Ver 4.1.2 by CJY
	- 2019.08.29
	- Ver 4.1.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 메인화면 로그온 버튼 Log on -> Log in, Log off -> Log out 문구 수정
	- 데이터집계 프린트 출력 내용과 엑셀 출력 내용 동일하게 수정
	- 시리얼 통신 모드가 None일 때 TestSend 버튼 누르면 에러뜨는 부분 수정

@ Ver 4.1.1 by CJY
	- 2019.08.22
	- Ver 4.1.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 시스템정보 Hidden 메뉴 자동영점 모드 비교 버그 수정
	- 보드 버전 4.1.0 이하일 때, 시스템정보 Hidden 버튼 눌러도 ->버튼 뜨지 않음

@ Ver 4.1.0 by CJY
	- 2019.08.16
	- Ver 4.0.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	※ 보드버전 4.1.0과 호환(시스템정보 히든 메뉴 부분)
	- 로그인 사용 시, 메뉴화면 Hidden버튼 비활성화
	- 품목설정에서 SmartKeyboard 한글로 변환 후, 메인화면 LogOn에서 영문 변환 안되는 버그 수정(V2.2.0에서 수정 안됨)
	- 시스템정보 보드에 설정된 값 로딩하는 화면 2개 추가(ControlCenterInforSystem2.cs, ControlCenterInforSystem3.cs)
	  1. 보드에 저장된 값(중량조정, 판정설정, 외부출력, 선별기설정, 자동영점, 중량설정값, 옵션보드(OPT1, OPT2), 기능설정, 랜덤모드)
	  2. LCD에 저장된 값(카운터출력, 시리얼통신, 이더넷통신, 기능설정 일부 설정값)
	  3. 각 화면에서 'Load'버튼을 눌러야 값이 로딩됨
	  4. 로딩되면서 LCD에 저장된 값과 비교하여 두 값이 다르면 적색으로 표시
	- 종근당 OPT1 관련 수정
	  1. 판정 후 '지연시간 + (동작시간 X 2)' 시간 후 보드에서 'SD0~' 리젝데이터 송신됨
	  2. 리젝데이터는 이전 리젝데이터와 동시에 한번만 전송되므로 Timeout 시간은 '(지연시간 X 2) + (동작시간 X 5) + 1000'으로 설정함
	  3. 190821 현재 종근당 지연시간 : 100, 동작시간 : 400 이고, 통신상 분당 60ea까지 소화 가능
	  4. 리젝데이터는 NG, OK, STOP, Timeout 4종류로 표시됨
	     ① NG : 판정이 불량이나 배출센서 확인 안됨, 판정이 정상이나 배출센서 확인됨
    	 ② OK : 판정이 불량이고 배출센서 확인됨, 판정이 정상이고 배출센서 확인안됨
    	 ③ STOP : 판정 후 장비가 정지하여 리젝데이터를 수신받지 못했을 때
    	 ④ Timeout : 정해진 시간 안에 리젝데이터를 수신받지 못했을 때

@ Ver 4.0.2 by CJY
	- 2019.07.26
	- Ver 4.0.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- OPT1 피드백 메뉴화면 지연개수 설정이 안되는 버그 수정

@ Ver 4.0.1 by CJY
	- 2019.07.19
	- Ver 4.0.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 시스템정보 시리얼번호 라벨 길이 늘림

@ Ver 4.0.0 by CJY
	- 2019.07.19
	- Ver 3.2.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	※ 보드 호환버전 : 4.0.0
	- Serial - 전송지연시간 버그 수정
	  1. 테스트 전송 시 전송지연시간 적용 -> 비적용으로 수정완료
	  2. 실제 사용 시에 전송지연시간 사용 시 문제 -> 수정완료
	- CheckLog 사용안함
	- 영점아이콘 표시 버그 수정
	- 시스템정보 프로그램명 표시
	- 랜덤모드 'SM0' 수신 시, 시리얼통신 출력(index = 17,18) 누락된 부분 수정
	- 기능설정화면 히든메뉴에 캡쳐기능 추가

@ Ver 3.2.0 by CJY
	- 2019.07.19
	- Ver 3.1.4 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 통신설정 - HP-200 추가
	- CheckLog 수정
	  1. 장비 ON 상태에서의 모든 Log 출력(SC, SF, SD일 경우만)

@ Ver 3.1.4 by CJY
	- 2019.07.19
	- Ver 3.1.3 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- CheckLog 수정
	  1. 운전 시/정지 시 -9999 중량 올라오면 바로 출력
	  2. 보드에 통신 전송하여 현재 중량값 받아오는 부분 삭제
	  -> Document-통신테스트 : CheckLog 출력 예시 - 190719_1_Checklog.txt 파일 참고

@ Ver 3.1.3 by CJY
	- 2019.07.14
	- Ver 3.1.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- IsErrorLogOpen, smartFileCheckLog 추가(CheckLog)
	  1. 표시된 중량값의 판정값 이상 시 로그 출력
	  2. 9999, 99999 혹은 -9999 중량값 수신 시 로그 출력
	  3. LCD에 저장된 상한/하한값, 보드에 저장된 상한/하한값 모두 함께 출력
	  4. 데이터 백업 화면에는 CheckLog 항목이 목록에 보이진 않고, 백업버튼 누르면 백업은 됨
	     (유저 확인 못하도록)
	- 운전 시 Log Open, 정지 시 Log Close
	- 데이터 백업 시 Log파일 Close()

@ Ver 3.1.2 by CJY
	- 2019.07.14
	- Ver 3.1.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 자동영점 High/Middle/Low는 보드에서 Cal.c값에 따라 계산되는 값이라고 하여 고정값 삭제
	  부팅시 쓰는 시간/범위/변량값은 모두 User setting의 값
	  High/Middle/Low로 설정 시 설정값은 보드에서 읽기

@ Ver 3.1.1 by CJY
	- 2019.07.13
	- Ver 3.1.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 자동영점 쓰기로만 설정하도록 변경
	- 자동영점 모드2 4902 수신받아 화면 표시하는 부분 버그 수정

@ Ver 3.1.0 by CJY
	- 2019.07.12
	- Ver 3.0.3 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 셀로닉스 프로토콜 추가(Gmail '셀로닉스' 검색하여 2019년 4/19일자 메일 확인) : OPT3
	  7인치 10.11.0에 추가된 프로토콜

@ Ver 3.0.3 by CJY
	- 2019.07.11
	- Ver 3.0.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 자동영점/외부출력/선별기설정/OPT2(디스펜서) 항목 수정 시 저장하는 코드 추가
	- 카운터알람 하단 message 정렬, 기능설정 부저/램프 적용 항목 작성
	- Serial - OPT3 -> OPT0으로 변경

@ Ver 3.0.2 by CJY
	- 2019.07.08
	- Ver 3.0.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 랜덤모드 버그
		1. 소수점에 따라 50g 차이 -> 500g 차이로 바뀌는 부분 수정
		2. 중량조정에서 소수점 변경 시 랜덤모드화면에서 바로 업데이트 안되는 부분 수정

@ Ver 3.0.1 by CJY
	- 2019.07.03
	- Ver 3.0.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 메인화면 - 리스트화면 전체수량 열 추가
	- 외부출력 모드 알람1, 알람2 -> 카운터출력1, 카운터출력2 변경

@ Ver 3.0.0 by CJY
	- 2019.07.03
	- Ver 2.2.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	※ 이전 보드버전과 호환 안됨(보드 V3.0.0 이상 호환가능)
	- 보드버전 
	- 랜덤모드 기능 추가
	- 기능설정
	  1. 데이터백업 확장자 추가
	  2. 입력포트 설정 부분 추가 + 입력 시 동작 추가
	  3. 피드백 메인화면 추가
	  4. 알람설정 -> 카운터출력 이름 변경
	- 버그수정
	  1. 바코드 Count 숫자 변경 안되는 버그 <- SR000 Dequeue 부분 버그
	  2. 운전 시 품번변경 안되는 버그 -> 보드 프로그램 수정

@ Ver 2.2.0 by LSJ
	- 2019.04.25
	- Ver 2.1.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 이더넷 서버 기능 추가
	by CJY
	- 랜덤모드 기능 추가 중
	- 알람 2 기능 활성화
	- 자동영점 User setting - None 선택 시 항목들 Enable true/false 처리 버그 수정
	- 품목설정에서 SmartKeyboard 한글로 변환 후, 메인화면 LogOn에서 영문 변환 안되는 버그 수정
	
@ Ver 2.1.0 by CJY
	- 2019.04.29
	- Ver 2.0.4 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 공장초기화
	  1. SystemFile1, 2로 분리(SystemFile1, 2 폴더가 없으면 폴더 생성 후 SystemFile 폴더에서 파일 이동시키고 SystemFile 폴더는 삭제)
	  2. Level에 따라 공장초기화 버튼 visible 처리
	  3. 초기화 방법 변경(기존 : 덮어쓰기, 변경 : 파일 삭제)
	     공장초기화는 다음 세 파일만 작업
	     Counter : 삭제 후 파일 재생성(모든 값이 0으로 초기화)
	     Product, Judgment : 삭제 후 Flash Disk에서 SD Card로 이동
	     
@ Ver 2.0.4 by CJY
	- 2019.04.29
	- Ver 2.0.3 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 정지 시 커맨드(SN0~) : 금속검출 아이콘 표시 삭제

@ Ver 2.0.3 by CJY
	- 2019.04.24
	- Ver 2.0.2 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 기능설정 - 데이터백업 포맷
	   옵션보드 index값을 저장하는 버그 수정
	
@ Ver 2.0.2 by CJY
	- 2019.04.19
	- Ver 2.0.1 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- 옵션보드 버튼 보이지 않는 버그 수정
	- 메뉴 하단버튼 옵션보드 버튼 위치 수정
	
@ Ver 2.0.1 by CJY
	- 2019.04.17
	- Ver 2.0.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- User Login 화면 이미지 깨지는 버그 수정
	- OverRangeDeviation, UnderRangeDeviation Property get 수정
	  편차모드 입력부분 수정

@ Ver 2.0.0 by LSJ
	- 2019.04.11
	- Ver 1.17.0 Modify
	- Framework : SmartX Framework V3.1.1(update: 2019.03.21)
	- Framework Update!!!
	- 이더넷 서버 기능 추가
	- 통신모드 추가
	  통신지연시간, Hitachi/Markoprint 추가 설정창 추가
	- 알람설정
	  1. 알람2 기능 Enable = false 처리
	  2. 알람기능으로 인한 장비 정지 시, 팝업창 문구 수정
	  3. 연속측정 후 외부출력 기능 -> 연속측정 기능으로만 사용

@ Ver 1.17.0 by CJY
	- 2019.04.10
	- Ver 1.16.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 통신설정 화면 분리
	- imaje 9028 OPT1 버그 수정
	- 통신설정 이름 변경
	  OPT1 -> imaje 9410 OPT1 : 방변경 O
	  OPT2 -> imaje 9028 OPT1 : 방변경 O
	  OPT4 -> imaje 9410 OPT2 : 방변경 X
	  OPT5 -> imaje 9028 OPT2 : 방변경 X
	
@ Ver 1.16.0 by CJY
	- 2019.04.09
	- Ver 1.15.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- On/Off 이미지 변경
	- 독일어 버그 수정
	- 통신설정 - OPT4, OPT5 추가

@ Ver 1.15.0 by CJY
	- 2019.04.07
	- Ver 1.14.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 환경설정 - 알람설정 추가
	- 장비설정 - 기능설정 - 연속불량 삭제(알람설정에서 동기능 설정 가능)
	- SystemConfigurationItem2 추가
	- 중량이 -값일 경우, Under 합계에 포함하지 않게 수정
	- 메인화면 우측 상단 버튼 눌러서 운전/정지하는 기능 추가

@ Ver 1.14.0 by CJY
	- 2019.04.05
	- Ver 1.13.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- Stopper -> Dispenser 문구 변경
	- 독일어 추가

@ Ver 1.13.0 by CJY
	- 2019.04.03
	- Ver 1.12.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 노바렉스 대주건 시리얼통신 OPT3 추가

@ Ver 1.12.0 by CJY
	- 2019.03.29
	- Ver 1.11.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 내추럴 F&P 시리얼통신 OPT2 추가
	  한맥프린터 9020 제품 프로토콜

@ Ver 1.11.0 by CJY
	- 2019.03.26
	- Ver 1.10.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 기능설정 - 데이터백업포맷 영문화 안된부분 수정
	- 내추럴 F&P 시리얼통신 OPT1 추가
	  한맥프린터 9232, 9410/9450 제품 프로토콜

@ Ver 1.10.0 by LSJ
	- 2019.03.18
	- Ver 1.9.1 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 업데이트 시, 기존 RemoveFile 폴더의 파일 삭제 -> 삭제 안하도록 변경
	  기존에 삭제 안하는걸로 회의 함
	- 종근당 기능 추가
	  데이터 백업 관련 수정
	  중량 데이터 받으면 버퍼링 하도록 수정
	  (데이터 백업 시 리젝 데이터 받아서 처리하도록)

@ Ver 1.9.1 by LSJ
	- 2019.03.18
	- Ver 1.9.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 버그 수정
	  1. 장비설정 - 로그인 설정 시 메시지 출력 버그 수정
	- 언어 변경 시 이더넷 화면 InitializeDesign() 처리 하도록 변경
	- 도움말 - 이더넷 버튼 오타 수정
	- 바코드 사용 시 this.ProductCount  셋팅하는 위치 변경
	  추후에 코드 수정 필요함
	  문제점 : 프로그램 로딩 시 에러 메시지 출력 됨(떴다가, 바로 사라짐)
	           this.ProductCount 셋팅 위치 변경 하고 에러메시지 사라짐
	  -> 바코드 사용 시 아이콘 표시하는 과정에서 중복으로 port open하는 문제였음
   
@ Ver 1.9.0 by LSJ
	- 2019.03.14
	- Ver 1.8.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- Ethernet Client 모드 추가
	- 메인화면 - 프린터 버튼 Visible 버그 수정(미사용인데 표시됨)

@ Ver 1.8.0 by CJY
	- 2019.03.13
	- Ver 1.7.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 업데이트 시, 기존 RemoveFile 폴더의 파일 모두 삭제
	- 품목설정 품명/LOT - \ / : * ? " < > | 입력 무시하도록 수정
	- 개별 프린트 기능 추가
	  메인화면 [인쇄]버튼 누르는동안 제품 판정 시마다 프린트됨
	- 메인화면 바코드 Count Label 클릭 시, 바코드 Queue 클리어
	- 버그 수정
	  1. 장비설정 - 바코드 설정 시 메시지 출력 버그 수정
	  2. 통신설정 CH2 Mode 로드 시 CH1 Mode로 설정되는 부분

@ Ver 1.7.0 by LSJ
	- 2019.03.04
	- Ver 1.6.1 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 데이터백업 포맷 추가
	- 바코드 기능 추가
	
@ Ver 1.6.1 by LSJ
	- 2019.03.04
	- Ver 1.6.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 진입 스토퍼 아이콘 추가
	
@ Ver 1.6.0 by LSJ
	- 2019.03.04
	- Ver 1.5.1 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 진입 스토퍼 기능 추가
	  P1408 설정 추가

@ Ver 1.5.1 by LSJ
	- 2019.02.25
	- Ver 1.5.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 연속불량 기능 버그 수정
	  시스템 파일 로드 시 초기값 셋팅 안되어, 장비 설정에서 셋팅 시 에러 발생함
	  dummy(string) --> dummy(int) 형식으로 변경함
	- 리젝터 동작감지 알람 추가 (알람이 감지되면 화면에 표시 후 LCD에서 알람 클리어 하도록 함)
	  알람 7-리젝터 동작 감지

@ Ver 1.5.0 by CJY
	- 2019.2.22
	- Ver 1.4.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 호환 보드 버전 : Ver 1.1.4
	- 연속불량 기능 추가
	
@ Ver 1.4.0 by CJY
	- 2019.2.22
	- Ver 1.3.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 정지계량 기능 활성화 + 메인화면 아이콘 추가

@ Ver 1.3.0 by CJY
	- 2019.2.15
	- Ver 1.2.2 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 호환 보드 버전 : Ver 1.1.0
	- LCD 항목 Save/Load 시, smartFile Open할 때 버퍼값 지정
	  this.smartFileIO.Open()  ->  this.smartFileIO.Open(this.BufferSmartUart);
	- 품목별 파일 Load 시 전체 불러오기 -> 개별 불러오기
	- 메인화면 알람 - Low pressure 추가(공압체크)
	  Photo B + 메인보드 F1 딥스위치 <- 기능설정 '공기압센서'와 연동 안됨. 딥스위치로 조절
	- 메인화면 우측 상단 버튼 눌러서 운전/정지하는 기능 삭제
	- 데이터백업 ListBox에 통신로그 파일(Communicationlog.txt) 표시되도록 수정
	- 메인화면 알람표시 부분 버그 수정
	- 선별기설정 저장부분 버그 수정(변경 이전값 보드에 전송)

@ Ver 1.2.2 by CJY
	- 2018.12.27
	- Ver 1.2.1 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 버그 수정
	  1. 증상 : 판정설정 설정 후, Bottom 버튼으로 선별기설정 이동 -> 선별기설정 후 '저장'버튼 누름 -> Bottom 버튼으로 판정설정 이동
	             판정설정값 저장 안되는 증상 있었음
	     원인 : 선별기설정 저장 시, 판정설정값과 함께 저장되는데, 판정설정에서는 저장할 때
	             this.ParentForm.ParentForm.CurrentJudgmentSetItem값을 변경안함.
	     해결 : 판정설정 각 값을 저장할 때 this.ParentForm.ParentForm.CurrentJudgmentSetItem값 변경함
	  2. 증상 : 중량조정 Cal.c 값 변경 안되는 버그
	     원인 : 중량조정 화면 진입 시, Cal.c값 Read 안함
		 해결 : DisplayRefresh()에서 Read 진행
	     
@ Ver 1.2.1 by CJY
	- 2018.07.03
	- Ver 1.2.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 버그 수정
	  1. 공장초기화 라벨 표시 안되는 부분 수정
	  2. DialogFormNumKeyPad 입력창 글씨 40pt -> 33pt 수정
	     (판정설정 - 동보정 수정 시 숫자가 잘림)

@ Ver 1.2.0 by CJY
	- 2018.06.28
	- Ver 1.1.2 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 키패드 이미지 삭제(SmartForm 삭제)
	- 메인 상한/기준/하한/용기 버튼 Disable 이미지 수정
	- 버그수정
	  1. 유저설정 Save 시 파일 Close를 하지 않아 저장이 안되는 버그 수정
	  2. 스토퍼 - 외부출력 None일 때, 메인화면 아이콘 표시되는 부분 수정
	     (외부출력이 None이 아니고 opt2를 선택했을 때 아이콘 표시)
	  3. 언어를 변경 후 메인화면에 나오면 편차모드지만 버튼은 중량표시가 되어있는 부분 수정

@ Ver 1.1.2 by LSJ
	- 2018.06.27
	- Ver 1.1.1 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 버그 수정
	  로그인 : 비밀번호 수정안되는 버그, 유저 저장 안되는 버그
      편차 입력 : -0.0 표시 안되는 버그, 품목설정 설정값 편차에 따라 입력 되도록 수정 
    - 선별기 설정 운전 안되도록 수정

@ Ver 1.1.1 by LSJ
	- 2018.06.25
	- Ver 1.1.0 Modify
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 편차 입력 버그 수정
	- 데이터 백업 포멧 변경
	  중량 설정값 추가 : UnderRange, PassRange, OverRange, TareRange
	  
@ Ver 1.1.0 by LSJ
	- 2018.06.20
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 알람 추가
	  도어 인터록 추가

@ Ver 1.0.0 by LSJ
	- 2018.06.19
	- Framework : SmartX Framework V3.0.3(update: 2018.05.10)
	- 개발 완료
	  
