Q&A

  • sql결과를 폼2가 뜨면서 바로보여줄수 있게하는법좀?
안녕하세요.

델파이 초보입니다. 지금 델파이 5를 공부하고 있습니다.

sql서버 7.0에서 만든 데이타베이스의 테이블들을 이용하여 결과를 quickreport로 출력하는 프로그램을 만들려고 합니다.

폼1의 edit1.text에서 테이블명을 받아(테이블이 많기 때문에 테이블명을 받아서 처리해야합니다) vedit라는 변수에 저장했습니다.

폼1에서 버튼을 누르면 폼2가 뜨면서 dbgrid를 이용하여 결과값을 보여주고 폼2에서 출력버튼을 누르면 폼3으로 그 결과를 quickreport로 넘겨주려 합니다.

폼 2에서 adotable을 이용하면 하나의 테이블명만을 연결해주어야 하므로 동적으로 테이블을 불러와 결과를 보여줄수 없습니다.

하여 adoquery를 이용하여 보여주려하니 sql에서 폼1의 edit1.text에서 받은 변수

(sql문 안에 'select * from '+vedit+''로 처리했음)를 처리를 해주지 못합니다. 이를 해결하면 quickreport를 보여주는 것 까지 해결될것 같은데



델파이를 먼저 공부하신 선배님들께 부탁드립니다... 제발.....

1  COMMENTS
  • Profile
    허춘 2000.08.11 07:38
    델파이입문5일 wrote:

    > 안녕하세요.

    > 델파이 초보입니다. 지금 델파이 5를 공부하고 있습니다.

    > sql서버 7.0에서 만든 데이타베이스의 테이블들을 이용하여 결과를 quickreport로 출력하는 프로그램을 만들려고 합니다.

    > 폼1의 edit1.text에서 테이블명을 받아(테이블이 많기 때문에 테이블명을 받아서 처리해야합니다) vedit라는 변수에 저장했습니다.

    > 폼1에서 버튼을 누르면 폼2가 뜨면서 dbgrid를 이용하여 결과값을 보여주고 폼2에서 출력버튼을 누르면 폼3으로 그 결과를 quickreport로 넘겨주려 합니다.

    > 폼 2에서 adotable을 이용하면 하나의 테이블명만을 연결해주어야 하므로 동적으로 테이블을 불러와 결과를 보여줄수 없습니다.

    > 하여 adoquery를 이용하여 보여주려하니 sql에서 폼1의 edit1.text에서 받은 변수

    > (sql문 안에 'select * from '+vedit+''로 처리했음)를 처리를 해주지 못합니다. 이를 해결하면 quickreport를 보여주는 것 까지 해결될것 같은데

    >

    > 델파이를 먼저 공부하신 선배님들께 부탁드립니다... 제발.....



    Datamodule is stands to centralize your db works.

    Alternate way,

    when Form1 call Form2 just point your current datasource to dbgrid.



    form2.MyGrid.DataSource := Form1.MyQuery.DataSource;

    Form2.ShowModal;