추가 몇개 질문... 죄송합니다.
1. Query컴포넌트에서 DataSource를 DataSource1 이 안 보입니다.
폼에는 DataSource, Query 컴포넌트와 DBGrid 컴포넌트가 있습니다.
각 컴포넌트를 세팅을 해줘야 하는데, DataSource 컴포넌트에 DataSet에 Query1이라고 지정해 주었구요.
Query 컴포넌트에 디비 네임을 DBD에서 앨리어스로 만들어줬던 것을 지정해 주었고, DataSource 지정을 해줘야 하는데, DataSource 1이 보이지 않구요. 강제적으로 입력하면, "Query1: circular datalinks are not allowed"라는 메세지를 보여줍니다. 왜 이런지 모르겠습니다. Query1에서 속성에 SQL에도 "select * from 테이블명"이라는 것을 입력해줬습니다.
폼에서 데이터소스 컴포넌트와 쿼리 컴포넌트 설치했을때, 오브젝트 트리뷰에 쿼리 컴포넌트가 "물음표"로 나타납니다.
Query1 컴포넌트에서 DataSource을 지정해 주기 위해 몇 번이나 새로운 프로젝트 파일을 생성해 봤습니다만... 번번히 실패하고 말았습니다. 도대체 왜 이런 경우가 생기는지 도저히 모르겠습니다.
DataSource가 폼에 하나 밖에 없기 때문에, 당연히 초기값으로 Query1의 DataSource 속성값이 DataSource1 값이 있어야 되는거 아닌지요? 휴우~ 앞으로 갈 산이 더욱 많은데, 초반부터 이렇게 막혀서 미쳐버리겠습니다.
2. 한 프로젝트에 여러 가지 폼이 들어가게 되었을 때, .dpr 클릭하면 포함된 여러 폼들이 보여야 하는데, 폼1 이외에는 나머지 작업된 폼들을 읽어오지 못합니다. 어떻게 작업된 여러 개의 폼을 .dpr 파일을 클릭했을때, 불러올수 있는지요?
3. 가장 중요한건데요. Query 컴포넌트에서 말고 Table 컴포넌트에서 데이터(삽입, 수정, 삭제) 등등을 하고
그 데이터를 QReport에서 프린터 하려고 합니다. 가능한지요?
가능하다면, 코딩을 With Table1 do begin
close;
sql.clear;
sql.add(' ');
open;
등등으로 가능할런지요?
그냥 지나치시지 마시고, 조언 부탁드립니다. ㅡㅜ
데이타소스1은 쿼리1의 데이터셋에 대한 포인터를 가집니다.
그리드등은 데이타소스1의 데이터셋을 참조합니다...
즉, 쿼리1에서 데이타소스1을 참조하면 빙글빙글 돌게 됩니다.
쿼리 콤포에서 데이터셋을 지정하는 경우는 다음과 같은 경우입니다.
쿼리1이 마스터 이고,
쿼리2가 디테일 일경우,
쿼리2의 쿼리가 select * from tab where field1 = :query1.field1
이렇게 하면 쿼리1의 커서에 해당하는 필드값으로
쿼리2가 조회되어 마스터 디테일 관계가 성립하게 됩니다.
데이터소스1은 쿼리1을 참조하고
쿼리2는 데이터소스1을 참조해야만 하겠죠.
쿼리2의 내용을 보여주기 위해서 데이터소스2가 있어야 할테고..
그리드등의 비쥬얼 콤포넌트가 데이터소스2를 참조해야겠죠.
콤포넌트류의 룩업콤포넌트가 이러한 과정을 자동화 해놓은것들입니다...
간간히 유용하게 쓰이죠~ 즐코하세요