안녕하세요. 까마귀입니다.
한동안 이래저래 못들어오다가 모르는게 있어서 들어오네요.
여러 테이블에 데이터를 삽입/수정/삭제 등을 해야 합니다.
DBGrid상에서 구현해서 어짜피 코드는 똑같습니다.
DataModule1.Query1.ApplyUpdates;
DataModule1.Query2.ApplyUpdates;
DataModule1.Query1.CancelUpdates;
.
. 등등...
여러 테이블에 대해서 하기 때문에 단지 Query 콤포넌트의 이름만 틀릴뿐이지 같은 코드이거든요.
그래서 생각한것이 아래처럼 구현을 하면 어떨가 하는 것입니다.
(ActiveControl as TDBGrid).DataSource.DataSet.Name 을 하면 각 DBGrid에 연결된 Query 의 이름을 알수가 있습니다.
이 이름을 가지고 ApplyUpdates 나 CancelUpdates등을 실행하게 할수 있는 방법이 없나요?
(ActiveControl as TDBGrid).DataSource.DataSet 여기에서는 ApplyUpdates등의 속성이 아예 없더군요.
이거 처리하는 방법이 없는지요? 있었으면 좋겠는데....
질문에 대한 설명이 좀 난해한것 같은데 읽어주셔서 감사합니다.
많은 도움 바랍니다. 꾸벅~~.
위대한 단군혼이 살아있는 나라.... 대한민국.
> 안녕하세요. 까마귀입니다.
> 한동안 이래저래 못들어오다가 모르는게 있어서 들어오네요.
>
> 여러 테이블에 데이터를 삽입/수정/삭제 등을 해야 합니다.
> DBGrid상에서 구현해서 어짜피 코드는 똑같습니다.
>
> DataModule1.Query1.ApplyUpdates;
> DataModule1.Query2.ApplyUpdates;
> DataModule1.Query1.CancelUpdates;
> .
> . 등등...
>
> 여러 테이블에 대해서 하기 때문에 단지 Query 콤포넌트의 이름만 틀릴뿐이지 같은 코드이거든요.
> 그래서 생각한것이 아래처럼 구현을 하면 어떨가 하는 것입니다.
>
> (ActiveControl as TDBGrid).DataSource.DataSet.Name 을 하면 각 DBGrid에 연결된 Query 의 이름을 알수가 있습니다.
> 이 이름을 가지고 ApplyUpdates 나 CancelUpdates등을 실행하게 할수 있는 방법이 없나요?
> (ActiveControl as TDBGrid).DataSource.DataSet 여기에서는 ApplyUpdates등의 속성이 아예 없더군요.
> 이거 처리하는 방법이 없는지요? 있었으면 좋겠는데....
> 질문에 대한 설명이 좀 난해한것 같은데 읽어주셔서 감사합니다.
> 많은 도움 바랍니다. 꾸벅~~.
>
>
>
> 위대한 단군혼이 살아있는 나라.... 대한민국.
(ActiveControl as TDBGrid).DataSource.DataSet 상태이면 타입 자체가 TCustomDataset이 되는걸로 알고 있는데..
ApplyUpdate는 TQuery 형의 메쏘드니까 (ActiveControl as TDBGrid).DataSource.DataSet를 TQuery로 타입 캐스트 해서 사용하면 되지 않을까요??