2014. 12. 27. 00:03

DevExpress 활용하여 단순 조회 화면 XML파일로 끝내기

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

안녕하세요.

오늘 보여드릴 내용은 2008년 한국에 귀국한 후 쭈욱 공부하던걸 적용 한 내용이라고 보시면 됩니다.

2008년 Dynamic Property 관련되서 많은걸 공부 하였고, 2009년도에 엔씨정보OO 회사에 다니면서,

내부적으로 Exceed 컴보넌트에 적용했던 내용입니다.

그간 사이트를 돌아 다니면서 보게 된 것을 적용한 정도다 라고 보시면 됩니다.

최근 신세계 사이트에서 단순 조회 화면은 XML 형태로 적용시 30분 정도 작업이면 끝난다고 이야기 했는데요.

불가능한것도 아니기에 적용해서 보여드립니다.

  • DummyData.xml 파일을 열어서 DataTable을 얻는다(DBMS 존재시 직접 데이터를 얻어도 무방)
  • 콤보성 데이터는 DisplayMember, ValueMember 정의 후 Page에 DataTable을 갖고 있는다.
  • DummyData를 바인딩 처리 할 때 GridDesign XML 파일을 읽어서 적용 한다.
  • Property GetValue 를 활용 합니다.
  • Generic primitive type converting 을 활용 합니다.
  • 확장 메소드를 활용하여 코딩을 간결하게 적용 합니다.
  • XML Deserial/Serial 을 활용 하여 Grid 동적 디자인 & 바인딩 처리가 가능합니다.(CDATA는 예외 입니다)
  • MSDN FormatType, FormatString 을 활용 합니다.

그렇게 어려운 내용은 아니지만, DevExpress 란 컴포넌트에 맞게 적용해야 되기에 시간이 좀 걸렸을뿐,

Common 으로 제공이 된다면 XML 작업으로 단순 조회성 페이지는 끝날 듯 싶습니다.

화면 캡쳐로 설명 드리겠습니다.

 

DevExpresss Demo 에 있는 화면입니다. (Trial 은 소스 제공이 안되네요)

이 화면에서 핵심 기능은

2번째 Product를 XML 디자인 소스에서 콤보로 적용 가능 유무 입니다.

 

가능 합니다.

순서는 아래와 같습니다.

  1. Combo성 데이터 DataTable의 DisplayMember, ValueMember를 사전 정의 합니다.
  2. 사전 정의된 Member를 Grid Design 소스에서 해당 컬럼에 동일하게 정의를 내립니다.
  3. 1,2를 토대로 맞은 정보라면 바인딩 처리 합니다.

 

해당 XML 소스는 아래와 같습니다.

우선 DummyData에서 정의된 항목입니다.

 

해당 컬럼이 정의된 Grid Design 소스 입니다.

 

보시면 아시겠지만, 콤보 DataTable ID는 dt_lookup1 로 정의 했습니다.

해당 dt_lookup1은 아래와 같이 소스상에서 찾습니다.

핵심은 다 설명 드렸습니다.

결과 내용입니다.

초기 화면입니다.

 

데이터 초기화 후 적용 결과 화면입니다.

 

보시면 아시겠지만,

첫번째 행의 UNIT_PRICE 는 51,

두번째 행의 UNIT_PRICE 는 28.01 로 소수점이 표현되는데요.

해당 DummyData Excel 내용은 아래와 같습니다.

아마 DevExpress에서 소수점 2자리가 00일 경우 기본 처리 기능이 있나 봅니다.

 

 

디자인 XML 적용 후의 모습입니다.

일단 Currency 와 Percent가 달라진 모습이 보입니다.

해당 컬럼 Grid Design 소스 입니다.

 

 

콤보 바인딩 처리된 모습입니다.

 

변경 후 결과 입니다.

 

감사 합니다.

 

 

 

 

 

'습작 및 R&D' 카테고리의 다른 글

DummyData From XML  (0) 2015.01.03
[DevExpress XML] Validation 처리 기능 추가  (0) 2015.01.02
LEX 과제.  (0) 2014.09.24
C# PARSING – 1 (String, Comment, MultiComment)  (0) 2014.08.14
SQL PARSING – 4 (ORACLE COMMENT PARSING)  (0) 2014.08.12