폼이 활성화 되면서 디비그리드에 테이블 자료가 뜨게 되어있습니다.
그런데 삭제버튼(navigate 버는이 아님)을 누르면 조건을 만족한 자료는 삭제되도록 하였습니다.
그런데도 디비그리드상의 자료는 그대로 있더군요. 물론 데이블을 열어보면 정상적으로 삭제되어있습니다.
DBGrid1.refresh 명령을 주었는데도 그래로더군요. 폼을 닫았다 열면 비로소 삭제된 자료가 않보입니다.
삭제와 동시에 디비그리드도 변경된 자료를 실시간으로 보이게 하려면 어떻게 해야하나요?
> 폼이 활성화 되면서 디비그리드에 테이블 자료가 뜨게 되어있습니다.
>
> 그런데 삭제버튼(navigate 버는이 아님)을 누르면 조건을 만족한 자료는 삭제되도록 하였습니다.
>
> 그런데도 디비그리드상의 자료는 그대로 있더군요. 물론 데이블을 열어보면 정상적으로 삭제되어있습니다.
>
> DBGrid1.refresh 명령을 주었는데도 그래로더군요. 폼을 닫았다 열면 비로소 삭제된 자료가 않보입니다.
>
> 삭제와 동시에 디비그리드도 변경된 자료를 실시간으로 보이게 하려면 어떻게 해야하나요?
??? => 안녕하세요!
혹시 CachedUpDates를 사용하셨나요?
제 생각엔 사용한 것 같은데 CachedUpDates를 사용하면 테이블에 넘기기전에
임의의 방에다 Data를 저장시키는데 이걱도 같이 삭제하여 주어야 합니다.
그래서 보통 CachedUpDates를 사용시 입력,삭제시 다음과 명령을 간단히 추가하여
주면 됩니다.
### Table호출한 컴포넌트의 AfterPost Event에다 다음과 같이...(저장시)
if Query1.UpdatesPending then
Query1.ApplyUpdates;
begin
Query1.ApplyUpdates;
Query1.CommitUpdates;
end;
### Table호출한 컴포넌트의 AfterDelete Event에다 다음과 같이...(삭제시)
With Query1 do
begin
ApplyUpdates;
CommitUpdates;
end;
=> 제가 통신에서 답변을 하기는 처음이라 의도하는데로 잘 전달되었는지는
모르겠네요!
=> 그럼 이만!!!!!