안녕하세요~
paradox를 네트워크 공유로 사용하는 프로그램을 하고 있습니다.
한 명이 그 레코드에 대해 수정 중일 때 다른 한 명이 그 데이터를 삭제를 못하게 하려고 DbiIsRecordLocked
함수를 이용하려고 합니다.
근데 결과값이 제가 원하는 데로 나오지가 않네요..
간단하게 다음과 같이만 했습니다.
DbiIsRecordLocked 함수에 대해 검색을 해도 별로 나오지가 않아서 컴파일은 됐는데 제대로 한 게 맞는지
잘 모르겠습니다.
procedure TForm1.sbt_delClick(Sender: TObject); //삭제버튼 클릭
// 수정중인 레코드에 대하여는 삭제 불가
var
Locked, Result : BOOL;
begin
DbiIsRecordLocked(Query1.Handle, Locked);
Result := Locked;
if (not Result) then
begin
showmessage('사용중아님');
end
else
showmessage('사용중');
end;
-> 만약에 2번 레코드에 대해 a가 수정 edit모드라면, b가 2번 레코드를 삭제하려고 하면 '사용중'이라고
나와야합니다.
그러나 실제 실행하면 '사용중아님'이 나옵니다.
그리고 또 이상한 점은. 2번이 아닌 5번 레코드를 삭제하려고 해도 '사용중아님'이 나옵니다.
어떻게 수정을 해야할까요?
도움 부탁드릴께요 ^^
이걸 찾으시는 건지요?
>안녕하세요~
>paradox를 네트워크 공유로 사용하는 프로그램을 하고 있습니다.
>한 명이 그 레코드에 대해 수정 중일 때 다른 한 명이 그 데이터를 삭제를 못하게 하려고 DbiIsRecordLocked
>함수를 이용하려고 합니다.
>근데 결과값이 제가 원하는 데로 나오지가 않네요..
>간단하게 다음과 같이만 했습니다.
>DbiIsRecordLocked 함수에 대해 검색을 해도 별로 나오지가 않아서 컴파일은 됐는데 제대로 한 게 맞는지
>잘 모르겠습니다.
>
>
>procedure TForm1.sbt_delClick(Sender: TObject); //삭제버튼 클릭
>// 수정중인 레코드에 대하여는 삭제 불가
>var
> Locked, Result : BOOL;
>begin
>
> DbiIsRecordLocked(Query1.Handle, Locked);
> Result := Locked;
>
> if (not Result) then
> begin
> showmessage('사용중아님');
> end
> else
> showmessage('사용중');
> end;
>
>-> 만약에 2번 레코드에 대해 a가 수정 edit모드라면, b가 2번 레코드를 삭제하려고 하면 '사용중'이라고
> 나와야합니다.
> 그러나 실제 실행하면 '사용중아님'이 나옵니다.
> 그리고 또 이상한 점은. 2번이 아닌 5번 레코드를 삭제하려고 해도 '사용중아님'이 나옵니다.
> 어떻게 수정을 해야할까요?
> 도움 부탁드릴께요 ^^