문제

기본 데이터 입력 화면에는 onbeforepost 이벤트에 OK/취소 대화 상자가 있습니다.

  • 확인 일이 코스를 수강하게합니다
  • 취소 지금은 a Dataset.Cancel;

의미하는 바를 수행하고 변경 사항을 롤백하고 데이터 세트를 검색 모드로 넣습니다.

이것은 대부분의 고객에게는 괜찮지 만 변경할 수 있는지 묻습니다.

  • 취소, 게시물을 중단하고 현재 변경 사항을 유지하면서 편집 모드를 유지하십시오.

취소하려면 취소 버튼을 사용할 수 있습니다.

소스를보고 있습니다 procedure TDataSet.Post; 이런 식으로 이벤트를 사용할 수는 없습니다.

복용량은이 작업을 수행 할 수있는 방법에 대해 생각이 있습니까?

후속 조치 : 이것은 내가 지금 처리하기로 선택한 방법입니다.

case MessageDlg('Save Changes?', mtWarning, [mbYes, mbNo, mbAbort], 0) of
  mrYes: ;
  mrNo: Dataset.Cancel;
  mrAbort: Abort;
  mrNone: Abort;
end;
도움이 되었습니까?

해결책

방법을 호출합니다 Abort (유닛에서 System, 내가 올바르게 기억한다면) 침묵을 높인다 EAbort 예외, 현재 작동 만 취소합니다. 작동해야합니다.

(BTW : 데이터 세트 작업을 취소하는이 방법은 도움말 시스템의 깊은 곳 에서이 기술을 달성하는 '정상적인'방법으로 설명합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top