Обеспечивает возможностью Пользователя или программе для аварийного завершения Отчета, при его ненормальном выполнении, аналогично нажатию клавиши Esc.

oReportListener.CancelReport()

Параметры

Отсутствуют.

Expand imageВозвращаемое значение

Отсутствует (???) (.T.).

Expand imageКомментарии

Применяется в: ReportListener, объект.

Используя метод CancelReport, вы можете преждевременно завершить выполнение Отчета. Когда вы вызываете данный метод, базовый класс данного объекта ReportListener обеспечивает выполнения кода очистки и восстановления (Cleanup Code), например: закрытие Очереди Печати происходит после проверки наличия печатаемых страниц, только после этого выполняется программный код очистки данных Отчета.

NoteРекомендации

Если вы осуществляете Отладку разработанных Отчетов, или контролируете возможные Ошибки неправильного выполнения Отчета, вы должны обеспечить выполнение данного, рассматриваемого метода, перед тем как будут выполнены системные команды CANCEL или QUIT. Вы также должны проверить наличие активных, незавершенных Отчетов в соответствующей процедуре обработчика ON SHUTDOWN. Для этих целей рекомендуется использовать системную функцию SYS(2040), проверяющую наличие активных Отчетов. Дополнительно смотрите раздел: SYS(2040) - Определение Статуса Отчета .

В данный метод вы можете добавить дополнительный программный код очистки и восстановления Visual FoxPro. Однако, в этом случае вы должны обеспечить корректное завершение активных Отчетов и других программных модулей, внешних ресурсов, обработчиков ошибок, которые тесно взаимосвязаны с внутренним механизмом Отчета; обеспечить базовые функции данного метода, как механизма объекта ReportListener, его стандартного поведения в ошибочных ситуациях.

Для Примера: Если вы в теле программного кода данного метода устанавливаете некоторую глобальную переменную, значение свойства, сигнализирующие об аварийном завершении Отчета, сначала требуется убедиться в том, что данный отчет действительно Активен и выполняется, а после этого устанавливать значение глобального свойства.

Когда вы выполняете метод CancelReport, активный в текущий момент Отчет продолжает выполняться до завершения печати текущей Страницы. После этого выполняется код восстановления (cleanup code), отрабатываются события AfterReport и UnloadReport. Дополнительную информацию о последовательности выполнения (поднятия) всех существующих событий данного базового объекта в условиях завершения Отчета, смотрите в разделе: Понимание Объектно-сопровождаемых Отчетов в Visual FoxPro (Object-Assisted Reporting).

Вы можете проверить, вызывался ли рассматриваемый метод CancelReport, при аварийном завершении выполнения Отчетов; для этого рекомендуется использовать системную функцию SYS(2024) - Определение статуса завершения Отчетов.

NoteСовет

Вы можете спроектировать отображения в данном методе дополнительного Сообщения для пользователя, завершить или продолжать выполнение данного Отчета. При использовании команды NODEFAULT в программном коде данного метода CancelReport можно обеспечит продолженние выполнения Отчета. Данный способ используется в соответствующем ReportListener -User -Feedback -Foundation -Class. смотрите дополнительно раздел: DoMessage, метод. И еще информация есть в ReportListener User Feedback Foundation Class.

Expand imageСм. также