[C#] 가계부 만들기 - Input 메시지

프로젝트/가계부(1)  2013.02.16 13:26

안녕하세요.. 명월입니다.


이번 포스팅에서는 저번 포스팅에서 작성된 메시지 전문을 가지고 본격적인 메인 뷰 클래스와 입력 클래스의 통신을 시작하겠습니다.


먼저 등록 버튼을 누르면 일어나야 할 이벤트로는 먼저 데이터 베이스에 입력을 하는 이벤트가 발생하겠습니다.


그리고 메인뷰가 재 검색이 일어나면 되겠습니다. 그러나 재 검색을 입력할 때마다 일으키면 아무래도 디비에 부담이 가는 로직이니 우리는 재 검색이 아닌 그리드 뷰에 값을 Insert 하고 총 입금액, 출금액, 잔액을 계산하는 로직을 만들어 보겠습니다.


우리는 먼저 입력 하는 전문을 살펴 보겠습니다.



전문은 String 객체에 | 문자로 구분지어서 작성하였습니다.
첫번째는 행 구분의 Index, 그 다음은 타입,카테고리,날짜, 내용, 금액, 타입 인덱스 로 구분지어 전문을 보내겠습니다.


여기서 행 구분의 Index는 MSSQL에 등록하면 나오는 Scope를 구하던 구문이 있었습니다.
이 값을 리턴 받아서 전문을 보내면 되겠습니다.



메인 뷰 클래스에서 WinProc 를 상속 받아서 메시지를 처리 하겠습니다.



소스를 보면 아시겠지만 전문의 길이를 계산한 후 byte로 받아서 Encoding으로 풀었습니다.



Insert 를 처리하는 구문입니다.
잘 살펴보면 메시지 전문을 Split('|') 로 구분하여 배열로 풀어 버렸습니다.


그리고 그리드의 데이터소스를 테이블로 변환 시킨다음 NewRow를 입력해 넣었습니다.
값이 Row값을 넣은 후에는 다시 Rows.add를 잊지 않고 넣었습니다.



그리고 전체 값을 계산하는 함수를 만들어서 값을 입력을하면 계산을 해서 다시 출력하는 함수를 만들었습니다.


실행 화면입니다.



입력을 하면 그리드 뷰에 데이터가 추가 되고 밑에 입금, 출금, 잔금이 계산 되어 나오겠습니다.


MW_DataInputPanel.cs

MW_DataView.cs

MW_SqlDB.cs


댓글 0개가 달렸습니다.
댓글쓰기