이번엔 새롭게 코드를 추가한다거나 하기보다는 새롭게 '퀀텀그리드'를 사용하는 방법을 배웠다.
그 내용을 복습/실습 해보고자 작성한 포스팅이다.
이전 포스팅 내용에서 사용한 그리드를 삭제하고 새롭게 퀀텀 그리드를 넣었다.
grid를 검색한 후 DevExpress 탭에서 두번째 컴포넌트이다.
일반 그리드와 다르게, 사용자가 자세한 부분을 직접 컨트롤 할 수 있다는 장점이 있지만,
단점은 자세한 부분까지 하나하나 컨트롤 해줘야 사용할 수 있다는 단점이 있다.
우선 퀀텀 그리드를 적절히 배치한다.
이런 식으로 나왔다.
우측하단을 보면 뭔가 있다.
그리드에서 레벨을 추가할 수 있고,
레벨에서 뷰를 추가할 수 있다.
아직 레벨, 뷰가 정확히 뭔지 와닿지는 않는다..
이 퀀텀 그리드는 지난 포스팅에서 사용했던 그리드와 다른 점이 있다.
(앞으로는 그리드와 퀀텀그리드로 구분해서 쓰겠다)
그리드는 DB에 등록된 모든 컬럼이 알아서 자동으로 떴지만,
퀀텀그리드는 보여줄 컬럼을 직접 하나하나 넣어야한다.
레벨에 마우스우클릭 - Create View - DB Banded Table 클릭
밴디드 테이블은 일반 테이블과 달리 컬럼 몇개가 묶여서 그룹으로 존재하기도 하는 테이블이다.
테이블 뷰에 마우스대고 우클릭 - Link to DataSource1 클릭
실행해보면
좌측에 No data to display 문구가 보인다.
여기에서 '조회'버튼을 눌러보자.
이것이 퀀텀그리드와 그리드의 차이점이다.
이상한 빈 표가 하나 나타나고 아무것도 나타나지 않는다.
직접 보여줄 컬럼(필드)을 하나하나 손수 추가해주어야 한다.
폼으로 돌아와보자.
UniQuery1 컴포넌트에 마우스 대고 더블 클릭
원하는 필드들을 추출하는 SQL을 작성해준다.
UniQuery1 의 Active 항목을 한번 True로 했다가 False로 바꿔준다.
SQL문을 적용시키는 과정이다.
마우스 우클릭 - Fields Editor 클릭
뭐 이런게 나왔다.
빈 공간에 마우스 우클릭 - Add Feilds 클릭
우리가 연결했던 DB서버 정보가 뜬다.
패스워드 입력하고 Connect 클릭
SQL에서 작성한 결과로 나타나는 필드들이 보인다.
OK눌러주면
이렇게 필드들이 등록된다.
그 다음
v표 한곳에 마우스 대고 우클릭 - Create All Columns
그러면 아까 등록한 모든 필드들이 싹다 그리드에 등록이 된다.
이제 실행을 시켜보자
아까와 다르게 컬럼들이 보인다.
이제 조회를 눌러보자.
컬럼들이 잘 조회가 된다.
그런데 TextEdit 창에는 값들이 안뜬다..
기존 사용하던 그리드의 Cell 선택시 이벤트에 작성했던 코드들이니
새롭게 바뀐 컨텀그리드 셀선택 코드가 없는 한은 실행이 안되는게 당연하다.
뷰를 선택한채로 이벤트 탭에 들어가 OnCellClick 이벤트 항목을 더블클릭.
코드를 넣어주면 된다.
그리고
Properties 탭에서 OptionSelection - CellSelect 항목을 False로 바꿔
셀을 기본적으로 고를 수 없게 해준다.
실행을 해보면
아주 잘된다.
수정을 눌러보니 수정도 잘 된다.
다음으로 밴디드 테이블의 기능인 필드 묶기를 해보자.
Customize 클릭
요런 창이 뜬다.
Add 를 눌러 밴드를 하나 추가해주자.
그리고 0번째 밴드와 1번째 밴드의 캡션을 마음대로 지어주자.
(좌측의 Properties를 확인하자)
컬럼 탭으로 이동해보자
그 다음 나는 BRAND_CD 컬럼을 선택해보겠다
좌측의 Properties 를 보면
Position 의 BandIndex 항목을 첫번째 밴드로 수정해주자
그리고 실행시켜보자
Zero 밴드 맨 끝에 One 밴드에 항목이 하나 추가되었음을 알 수 있다.
일종의 엑셀에서 '병합하고 가운데 맞춤' 기능을 사용한 것과 같은 효과라고 보면 된다.
마지막으로 퀀텀테이블은 위 이미지처럼 쓸데없이 넓은 컬럼의 사이즈를 자동으로 맞춰주는 기능이 있다.
컬럼 데이터를 조회할 때, 그 사이즈를 자동으로 맞춰주는 기능도 넣어보자.
필드를 넣었던 테이블 뷰의 이름을 복사해두자
테이블 내용을 조회하는 코드에
테이블 뷰 이름.ApplyBestFit() 메소드를 사용하여 코드를 작성한다.
그리고 실행시켜보자.
컬럼 사이즈가 줄어들면서 데이터가 더 보기 쉬워졌다.
--------------------------------------------------------------------------------
이것으로 이번 여름방학 한달동안의 인턴도 마무리가 되었다.
인턴기간동안 DB, Network, Delphi, Oralce 관련 지식도 배울 수 있어서 좋았지만,
윈도우 설치, 컴퓨터 설치 같은 새로운 경험을 해볼 수 있어서 좋았다.
바이오스 환경에서 무언가 조작을 해본다는 경험도 신선했다.
회사 내 여러 직원분들 각각의 이야기와 조언들을 들으며 인생과 관련된 지식과 경험들도 얻을 수 있었다.
한달 동안 방학임에도 아침 6시부터 일어나서 버스와 지하철을 타고 이동하는 것이 쉬운 일은 아니었지만,
나는 개인적으로 매우 알찬 방학을 보냈다고 생각한다.
또한 월급을 받으며 실무 일을 배울 수 있는 기회를 갖게 된 것에 매우 감사한다.
마지막으로 대학교 학년이 올라가면서 배우는 내용이 많아질수록 이 경험이 더욱 값진 것이 되리라 기대한다.
'인턴 > 델파이' 카테고리의 다른 글
[델파이] 2. 델파이 소스파일의 구성 (0) | 2021.02.18 |
---|---|
[프로젝트] 자동 메일 송신 프로세스 만들기(1) (0) | 2021.02.08 |
[델파이] 1. 델파이 프로젝트의 구성 (0) | 2021.01.08 |
[델파이 DB조작 예제] 2. DB 데이터 조작하기 (0) | 2020.08.28 |
[델파이 DB조작 예제] 1. DB서버에 연결해서 데이터 출력하기 (0) | 2020.08.28 |