Q&A

  • 테이블의 state 문제요..
안냐세요? 일을 해도 즐거운 주말이구만요.

헌데,저... 참으로 창피하지만, 이유를 모르겠으니, 여쭤볼 수 밖에요, 호호

dbedit와 dbgrid로 작업을 하고 있는데요.

table은 모두 cachedupdates를 쓰고 있습니다.

db서버는 sql7.0서버를 쓰고 있고, remote에서 작업중입니다. delphi3.0을 쓰고 있구요.



테이블이 입력이나 수정시에 우편번호를 검색하기위한 창을 띄우려 합니다.

해서, 검색창 띄우는 버튼에(테이블의 위치는 데이타모듈(name: dm)에 있습니다.



if (dm.table1.state = dsinsert) or (dm.table1.state = dsedit) then

panel.visible := true;//우편번호 검색창을 panel위에 만들었을 경우



하고, 컴파일을 시키면 글쎄 dsinsert나 dsedit가 정의되지 않았다고 에러가 납니다.



제가 뭘 잘 못한건 가요. 좀 가르쳐주세요...^^*





2  COMMENTS
  • Profile
    허춘 2000.07.31 09:46
    푸하하 wrote:

    > 안냐세요? 일을 해도 즐거운 주말이구만요.

    > 헌데,저... 참으로 창피하지만, 이유를 모르겠으니, 여쭤볼 수 밖에요, 호호

    > dbedit와 dbgrid로 작업을 하고 있는데요.

    > table은 모두 cachedupdates를 쓰고 있습니다.

    > db서버는 sql7.0서버를 쓰고 있고, remote에서 작업중입니다. delphi3.0을 쓰고 있구요.

    >

    > 테이블이 입력이나 수정시에 우편번호를 검색하기위한 창을 띄우려 합니다.

    > 해서, 검색창 띄우는 버튼에(테이블의 위치는 데이타모듈(name: dm)에 있습니다.

    >

    > if (dm.table1.state = dsinsert) or (dm.table1.state = dsedit) then

    > panel.visible := true;//우편번호 검색창을 panel위에 만들었을 경우

    >

    > 하고, 컴파일을 시키면 글쎄 dsinsert나 dsedit가 정의되지 않았다고 에러가 납니다.

    >

    > 제가 뭘 잘 못한건 가요. 좀 가르쳐주세요...^^*

    use datasource OnStateChange event.

    Just put dummy datasource on your form and set dataset to dm.table1

    add following code.



    panel.visible := DummyDataSource.DataSet.State in [dsEdit,dsInsert];







  • Profile
    강인규 2000.07.30 02:41
    정말 황당하져?

    근데 답은 간단해요.

    폼에서 table을 사용하지 않으니 정의되지 않을 밖에요.



    1.간단한 방법

    table을 폼에 가져다 놓는다.

    컴파일해서 에러가나지않음을 황당해한다.

    테이블을 지운다.

    다시컴파일해도 에러가 나지않음을 황당해한다.



    2.복잡한 방법

    uses절에 db,dbtables를 추가한다.

    컴파일한다.

    에러가 나지않음을 황당해한다.



    ^^ 즐프하세여

    푸하하 wrote:

    > 안냐세요? 일을 해도 즐거운 주말이구만요.

    > 헌데,저... 참으로 창피하지만, 이유를 모르겠으니, 여쭤볼 수 밖에요, 호호

    > dbedit와 dbgrid로 작업을 하고 있는데요.

    > table은 모두 cachedupdates를 쓰고 있습니다.

    > db서버는 sql7.0서버를 쓰고 있고, remote에서 작업중입니다. delphi3.0을 쓰고 있구요.

    >

    > 테이블이 입력이나 수정시에 우편번호를 검색하기위한 창을 띄우려 합니다.

    > 해서, 검색창 띄우는 버튼에(테이블의 위치는 데이타모듈(name: dm)에 있습니다.

    >

    > if (dm.table1.state = dsinsert) or (dm.table1.state = dsedit) then

    > panel.visible := true;//우편번호 검색창을 panel위에 만들었을 경우

    >

    > 하고, 컴파일을 시키면 글쎄 dsinsert나 dsedit가 정의되지 않았다고 에러가 납니다.

    >

    > 제가 뭘 잘 못한건 가요. 좀 가르쳐주세요...^^*

    >

    >