|
TQuery를 사용해도 master/detail이 가능합니다.
방법은 query의 sql구문중에..
where절을 이용해서.. " 필드명 = :master의 필드명 " 으로 지정해 주면 됩니다.
(사실 TTable인지 TQuery인지 몰라서.. 지난 답변에 설명을 못드렸습니다..^^)
두번째 방법은 이미 설명드렸지만..
그리드에서 클릭이 일어나면...
당연히 dataset의 위치도 변경이 되므로..
그냥 dataset->FieldByName("") 으로 읽어오면됩니다.
그리고 용어를 정확히 사용하셔야 할것 같습니다.
정확한 용어를 사용하지 않으면....
정확한 답변을 얻을 수 없습니다.
김성국 님이 쓰신 글 :
: 답변감사드립니다. 그래도 아직..^^;
:
: dbgrid->datasource->table셋
: 이렇게 되어있으면
:
: dbgrid1-->datasource1-->table1
:
: |
: | ===>요렇게 MASTER 지정하면 되는데....
: |
:
:
: dbgrid2-->datasource2-->table2
:
:
:
: table이 아니라 sql 이거든요...이거는 master라고 지정하는 것이 없네요.....ㅡㅜ;
:
:
: 이게 아니면...
:
: 두번째 질문인...
:
: dbgrid에서 어떤 한 레코드를 선택했을때
: 특정 컬럼의 데이터를 리턴할수 있는 거라도 아시면 부탁드립니다.
:
: 그럼...복많이 받으세요..감사합니다.
:
:
:
: 조준회 님이 쓰신 글 :
: :
: : dbgrid에서 어떤 내용을 선택하면..
: :
: : Dataset의 위치가 변경이 일어납니다.
: : 그러므로 dataset의 afterscroll등의 이벤트를 이용하면 원하시는 형태의 내용을
: : 얻을 수 있습니다.
: :
: : 그러나 빌더는 님과 같은 형태를 사용할때..
: : master/detail 구조라는 것을 지원합니다.
: :
: : dbgid1에 해당하는 dataset과 dbgrid2에 해당하는 dataset를 직접 연결해서..
: : 간단히 dbgrid1에 내용을 선택하거나 하면.. 자동으로 dbgrid2의 내용이 변경됩니다.
: : (물론 DB구조등이 이것이 가능하도록 설계되어 있어야 합니다.)
: :
: : 간단히 dataset끼리 연결만 시켜 주면 되는데..
: : 말로 설명하기는 무척힘들군요..
: :
: : datamodule에서 GUI로 연결이 가능합니다.(빌더 5에서 부터..)
: :
: : 한번 해보시고.. 안되면.. 다시 질문하시기 바랍니다.
: :
: :
: : 김성국 님이 쓰신 글 :
: : : DBGrid1 하고 DBGrid2가 있는데....
: : :
: : : 각각 sql1, sql2하고 연결이 되어있구요...
: : :
: : : DBGrid1은 부모테이블에서 나온 쿼리셋, DBGrid2는 자식테이블에서 나온 쿼리셋
: : : 인데....DBGRid1에서 한 레코드를 선택하면
: : : 밑에 DBGrid2에서 자식에 해당하는 레코드셋이 나타나도록 하려고합니다.
: : :
: : : 이거 되나요?
: : :
: : : 전 솔직히 레코드를 하나선택하고 다른 하나로 선택했을때
: : : 생기는 이벤트도 못찾겠더군요...
: : :
: : : ㅡㅡ;;;;
: : :
: : : 그리고 DBGrid에서 한 레코드를 선택했을때(이 이벤트도 모르겠습니다. ㅡㅜ)
: : : 특정한 컬럼을 지정해서 그 해당 데이터값을 리턴하는 것도 알고 계시면 답변부탁드립니다.
: : :
: : : 볼랜드씨뿔의 갈길은 멀고 멀군요...^^;;
: : :
: : : 그럼 즐프....
|