• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 1447
2011.01.07 (11:23:05)
게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.

* 고객시스템명 :
* 문의할 Component명 및 버전 :
* DataSet 버전 :
* Tr 버전 :
* 문의 유형(질문/요청/참조) :
* 내용 :


안녕하세요. detailId 관련 문의 드립니다.
콤보A(Master), 콤보B(Detail) 을 그리드에서 detailId 사용하려고 하는데요.
데이터셋은 DB에서 set하였습니다.

Master-Detail 모두 type, size 같게 하였으며(code:string(50), name:string(150), filter:string(3))
콤보A DataSet -> select Code, NAME, CAST(decode(Code,'A','001','002) AS varchar2(3)) AS Filter From A
콤보B DataSet -> select Code, NAME, GR_CD AS Filter From B
                          UNION ALL
                         select Code, NAME, GR_CD AS Filter From C

이런식으로 DataSet이 설정되어있습니다. 물론 두개 콤보의 Code는 유니크한 값입니다.

그런데, 처음 콤보B에 DataSet을 설정하고 그리드의 Lookup콤보를 확인하면 잘 나옵니다.
콤보A의 첫번째 값을 선택하면 첫번째 값에 해당하는 콤보B가 잘 나옵니다.
콤보A의 두번째 값을 선택하면 두번째 값에 해당하는 콤보B의 갯수는 맞게 나오나 콤보에 표시되는 내용은 첫번째 값이 표시됩니다.
즉,
콤보A의 Data => A(001),B(002)
콤보B의 Data => A01(001), A02(001), A03(001), A04(001), A05(001), B01(002), B02(002), B03(002)
1. 콤보A의 1번째 값선택 --> A01, A02, A03, A04, A05
2. 콤보A의 2번째 값선택 --> A01, A02, A03 (실제로는 B01, B02, B03 이 표시되어야 합니다.)
또 특이한건 콤보A의 2번째 값선택 후 A02를 선택완료하면 그리드에 표시되는건 B02가 됩니다.료

문제는 B01,B02,B03이 표시되야하는데 filter 가 001인 name이 표시된다는 것입니다.
그러나 value는 filter가 002인 값이 들어가구요.

좀 길었지만, 자세한 상황설명을 위해 길어졌습니다. 답변 부탁드립니다.
 
Tag List
XE Login