Класс UtilityReportListener добавляет во время выполнения конфигурационные опции и управление файлами (сравнение имен файлов, запись файлов) к основным сервисам, предусмотренным родительским классом, _ReportListener. Этот класс также предоставляет доступ к экземпляру класса FrxCursor, класс используется в качестве вспомогательного средства к Report Builder Application, с обработкой ошибки, если он не может быть найден.
![]() |
---|
UtilityReportListener не требует FrxCursor для функционирования; он просто обеспечивает прозрачное управление экземпляром этого класса как подклассом. Это применяется вплоть до подклассов, когда и если необходим этот экземпляр, он может продолжить свое существование, если он недоступен в run-time. |
Категория | Reporting |
---|---|
Каталог по умолчанию |
Visual FoxPro Catalog\Foundation Classes\Output\Report Listeners |
Класс |
UtilityReportListener |
Базовый класс |
ReportListener |
Библиотека класса |
_REPORTLISTENER.vcx |
Родительский класс |
_ReportListener (ReportListener Base Foundation Class) |
UtilityReportListener и его таблица конфигурации
UtilityReportListener читает записи из конфигурационной таблицы, чтобы инициализировать различные значения и характеристики ReportListener. Вы можете выбирать при использовании UtilityReportListener, выполнять ли эти задачи при инициализации класса, при старте каждого выполнения отчета, или вместе. Вы можете также вызвать метод setConfiguration в другое время.
Функции конфигурирования UtilityReportListener's в режиме run-time используют тот же формат таблицы конфигурирования Report Output Application, что и для регистрации ReportListeners для других значений ListenerType. Для информации о том, как Report Output Application использует эту таблицу, смотрите Report Output Application.
![]() |
---|
Классы используют тот же формат таблицы конфигурации, что и Report Output Application, но это не обязательно одна и та же таблица. Чтобы определить режим, который вы хотите установить для экземпляра класса UtilityReportListener, используйте свойства и методы класса, чтобы определить, какой режим в таблице использует объект, не используя таблицу Report Output Application. |
Если вы приписываете значение данного класа вне Report Output Application, и если конфигурационная таблица не стала доступной, создается подходящая табличная структура. Если классы созданы в модуле (APP, DLL, EXE), таблица создается в директории модуля; в противном случае, таблица создается в директории библиотеки классов (VCX).
UtilityReportListener и его подклассы используют конфигурационную таблицу, чтобы определить какие записи принадлежат им и куда записи поместить. Эти классы резервируют дипазон значений поля OBJTYPE от 1000 до 1999.
Каждый подкласс использует единственную величину в этм дапазоне,определенную свойством поля ObjType в UtilityReportListener, чтобы определять записи в таблице, который он хочет использоваться для целей конфигурации. UtilityReportListener использует постоянную величину в REPORTLISTENER.H , чтобы устанавливать свою собственную величину.
Задачи конфигурации могут устанавливать любое свойство или вводить любой метод в подкласс UtilityReportListener. Записи в таблице конфигурации с правильным значением ObjTypeзадают свойство класса или вводятся классовым методом кода согласно конфигурации используемой таблицы.
Поле | Использование | Замечание |
---|---|---|
OBJTYPE |
THIS.ConfigurationObjType |
Определяет какие записи в таблице UtilityReportListener читает, чтобы устанавливать значения конфигурации или инициировать код метода конфигурации. |
OBJCODE |
Precedence |
Определяет порядок в котором UtilityReportListener выполняет записи конфигурации' инструкции. |
OBJNAME |
Property or Method |
UtilityReportListener проверяет OBJNAME на PEMSTATUS (существование и тип). |
OBJVALUE |
Value or Arguments |
Если значение OBJNAME является правильным именем свойства, UtilityReportListener использует этот код, чтобы установить значение свойства, используя OBJVALUE:
Если значение OBJNAME является правильным классовым методом, UtilityReportListener выполняет следующий код:
|
OBJINFO |
Не используется |
Зарезервировано для документов, комментариев. Смотрите примеры в заметках . |
UtilityReportlistener игнорирует записи с пустыми полями OBJNAME или OBJVALUE, и записывает DELETED(), в любом случае имеют они правильное значение OBJTYPE или нет.
![]() |
---|
Когда UtilityReportListener генерирует регистрационную таблицу обеспечиваются две удаленные записи, показывая соответсвующий синтаксис для регистрационных записей, используется следующий код: |
![]() | |
---|---|
INSERT INTO (ALIAS()) VALUES ; (OUTPUTCLASS_OBJTYPE_CONFIG,0, 'DoMessage','"Welcome to the demo run!",64', 'Sample initialization/config method call') DELETE NEXT 1 INSERT INTO (ALIAS()) VALUES ; (OUTPUTCLASS_OBJTYPE_CONFIG,0, 'TargetFileName','"xxx"', 'Sample initialization/config property') DELETE NEXT 1 |
Заметки
You will probably not instantiate this class directly; you will instantiate one of the classes that derive from it, such as HtmlListener. These derived classes take advantage of UtilityReportListener's base features, which are file-handling and access to an FrxCursor object instance. They also expose UtilityReportListener's configuration table feature so you can customize their behavior at run time, in many cases, without needing to specify these changes in your code or deriving subclasses from them.
Следующая таблица показывает свойства и методы, добавленные к своему родительскому классу _ReportListener.
Свойства и методы | Описание |
---|---|
configurationObjtype Property |
Хранит резервную величину использованную, чтобы указывать, что табличная колонка конфигурации обеспечивает динамическую информацию конфигурации во времени выполнения.
По умолчанию
|
createConfigTable Method |
Создает регистрационную таблицу по требованию.
Синтаксис:
Возвращаемое значение: cDBF Параметры: cDBF полностью пригодное имя файла регистрационной таблицы. lOverWrite указывает хотите ли вы перезаписать регистрационную таблицу, или это уже сделано. |
frxCursor Property |
Содержится ссылка на объект помощи FRXCursor помогая во время прогона связывать метаданные FRX и структуру.
По умолчанию
|
getConfigTable Method |
Оценивает и обеспечивает имя текущей конфигурационной таблицы, дополнительно создавая её на диске, если она не доступна.
Синтаксис:
Возвращаемое значение: cDBF Параметры: Если Вы установили бы lForceExternal на .T., это указывает, что Вы хотите записать внешнюю таблицу на диск, даже если бы класс может найти встроенную версию таблицы в своем кодовом модуле (APP, EXE, or DLL). |
getPathForExternals Method |
Определяет позицию в которой текущий конфигурационная таблица и любые другие необходимые внешние файлы будут ожидать.
Синтаксис:
Возвращаемое значение: cPath Параметры: Нет |
loadFrxCursor Property |
Определяет, что независимо класс должен динамически загружать пример класса помощника.
По умолчанию
|
readConfiguration Property |
Указывает условия под которыми код SetConfiguration будет работать. 0=никогда 1 = когда пример класса Init работает 2 = когда пример класса выполняет BeforeReport 3 = работает как при Init, так и при BeforeReport
По умолчанию
|
setConfiguration Method |
Проверяет текущую конфигурационную таблицу на наличие динамической информации в записях подходящего типа и выполняет эти инструкции если они обнаружены.
Снтаксис:
Возвращаемое значение: None Параметры: Нет |
targetFileExt Property |
Обеспечивает файловое расширение по умолчанию для файлового выхода.
По умолчанию
|
targetFileName Property |
Обеспечивает имя файла на который быдет переписан выход.Уникальное имя будет сгенерировано для примера класса, which will be overwritten for successive report runs if not adjusted by the user.
Default
|
targetHandle Property |
Обеспечивает низкоуровненевую файловую ручку, to which output is written directly when the class provides raw data to the file, otherwise reserves the file during the report run so other applications do not write to it.
По умолчанию
|
verifyConfigTable Method |
Устанавливает, что формат и содержание конфигурации удовлетворяют требованиям, регулирует их если это необходимо..
Синтаксис:
Возвращаемое значение: logical Параметры: cAlias - псевдоним таблицы, которую Вы хотите подтвердить. Таблица должена быть уже открыта под этим псевдонимом когда Вы вызываете метод. cFailureMsgTable обеспечивает дополнительное альтернативное сообщение, которое отображается, если назначенная таблица не может быть проверена на наличие правильного формата конфигурационной таблицы. Если Вы не добавляете это сообщение, UtilityReportListener использует строковую константу #DEFINEd в REPORTLISTENERS_LOCS.H. cFailureMsgIndexes обеспечивает альтернативное сообщение, которое отображается, если таблица не имеет подходящие индексы. Если Вы не добавляете это сообщение, UtilityReportListener использует строковую константу #DEFINEd в REPORTLISTENERS_LOCS.H. |
verifyTargetFile Method |
Убедитесь, что назначенные имя файла и сетевая позиция доступны в начале работы базирующегося файлового сообщения.
Синтаксис:
Возвращаемое значение: Нет Параметры: Нет |