Обеспечивает получение списка опций команд REPORT FORM или LABEL.

ReportListener.CommandClauses

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

Объект или пустой класс, в течение или после выполнения команды REPORT FORM или LABEL.

Значением по умолчанию, когда Вы создаете первый экземпляр объекта ReportListener, является .NULL.

Замечания

Применяется к: ReportListener Object.

Движок отчета представляет объект CommandClauses в течение выполнения отчета, и ReportListener может использовать опции команд. Этот объект подобен объекту CommandClauses, который конструктор отчета представляет построителю отчета в сеансе разработки. Для получения дополнительной информации См. Understanding Report Builder Events.

Не каждый элемент объекта CommandClauses для ReportListeners точно соответствует ключевому слову команды REPORT FORM, и не все элеметы доступны в любое время. Например, элемент RecordTotal доступен, когда движок оценивает диапазон REPORT FORM. Эта оценка происходит между событиями LoadReport и BeforeReport, так что Вы не можете использовать RecordTotal в течение LoadReport.

Совет:
Вы можете использовать ReportListener Debug Foundation Class  для сравнения элементов CommandClauses в течение событий LoadReport и BeforeReport.

Следующая таблица перечисляет элементы CommandClauses и поясняет их содержание и доступность. Если иначе не определено, элемент и его значение доступны между LoadReport и UnloadReport. Также, если иначе не определено, ни движок отчета, ни базовый класс ReportListener не используют эти значения; они предназначены для использования в коде классов, полученных на основе ReportListener.

Примечание:
Все упоминания о команде REPORT FORM относятся и к LABEL, если явно не определено другое.

Элемент CommandClauses Замечания

.ASCII

Логическое значение, указывает, есть ли ключевое слово ASCII в команде REPORT FORM.

ASCII игнорируется базовым классом ReportListener. Однако, Ваш дочерний класс может его использовать.

.DE_NAME

Символьное значение, представляет опцию NAME команды REPORT FORM. Хотя значение .DE_NAME определяется начиная с LoadReport, ссылка на DataEnvironment не доступна до BeforeReport.

Это значение указывает имя ссылки на объект DataEnvironment отчета, вне зависимости от того, определи ли Вы NAME в команде. Если Вы не определяете NAME, Visual FoxPro создает публичную переменную с тем же самым именем, как у файла отчета или этикетки.

.ENVIRONMENT

Логическое значение, указывает, есть ли ключевое слово ENVIRONMENT в команде REPORT FORM.

Это ключевое используется для обратной совместимости. Вместо него Вы можете использовать ссылку, указанную в .DE_NAME для проверки свойства AutoOpenTables в DataEnvironment.

.FILE

Символьное значение, представляет полное имя файла отчета или этикетки (frx or lbx).

.HEADING

Символьное значение, представляет содержание текста HEADING, если Вы используете опцию HEADING<cText> в команде REPORT FORM.

.INSCREEN

Логическое значение, указывает, включена ли в команду REPORT FORM опция IN SCREEN.

.INWINDOW

Символьное значение, представляет имя окна, если Вы использовали IN WINDOW в команде REPORT FORM. Это значение - пустая строка, если Вы не используете опцию  IN WINDOW.

.ISDESIGNERLOADED

Логическое значение, указывает, была ли команда REPORT FORM вызвана из конструктора отчета или этикетки.

.ISDESIGNERPROTECTED

Логический тип данных, указывает, была ли команда REPORT FORM вызвана с ключевым словом PROTECTED из конструктора отчета или этикетки.

.ISREPORT

Логическое значение, указывает какая была команда: REPORT FORM(.T). или LABEL (.F).

.NOCONSOLE

Логическое значение, указывает, использовалось ли ключевое слово NOCONSOLE в команде REPORT FORM.

NOCONSOLE непосредственно не поддерживается базовым классом ReportListener, потому что объектно-ассистированный вывод не отражается в текущем окне вывода Visual FoxPro. Однако, Ваш дочерний класс может использовать это ключевом слове. Например, Вы можете отражать вывод в окно вывода, или палучить текстовую версию содержания отчета в течение выполнения отчета, но опускать это действие, когда команда включала NOCONSOLE.

.NODIALOG

Логическое значение, указывает, использовалось ли ключевое слово NODIALOG  в команде REPORT FORM.

Базовый класс ReportListener поддерживает NODIALOG, временно корректируя значение свойства QuietMode при выполненении отчета. См. QuietMode Property для получения дополнительной информации.

.NOEJECT

Логическое значение, указывает, использовалось ли ключевое слово NOEJECT в команде REPORT FORM.

.NOPAGEEJECT

Логическое значение, указывает, использовалось ли ключевое слово NOPAGEEJECT в команде REPORT FORM.

Базовый класс ReportListener обеспечивает больше функциональных возможностей чем не объектно-ассистированные отчёты при использовании NOPAGEEJECT. Это свойство обеспечивает возможность выполнения сцепленных отчетов, когда Вы устанавливаете свойство ReportListener.ListenerType в 1 (предварительный просмотр). Вы можете использовать это для получения сцепленных отчетов и других эффектов в Ваших отчетах. В разделе ReportListener Base Foundation Class приведён пример объединения двух отчетов в одном XML документе при использовании использовании ключевого слова NOPAGEEJECT.

.NORESET

Логическое значение, указывает, использовалось ли ключевое слово NORESET в команде REPORT FORM.

.NOWAIT

Логическое значение, указывает, использовалось ли ключевое слово NOWAIT в команде REPORT FORM.

Базовый класс ReportListener использует это значение, чтобы оценить, как вызвать метод Show Контейнера Preview. См. The Preview Container API для получения дополнительной информации.

.OFF

Логическое значение, указывает, использовалось ли ключевое слово OFF в команде REPORT FORM.

Это ключевое слово не было предварительно зарегистрировано для команды REPORT FORM. Оно обрабатывается так же, как и NOCONSOLE в базовом классе ReportListener. Ваши дочерние классы могут обработать OFF, как NOCONSOLE, или по-другому.

.OUTPUTTO

Целочисленное значение, представляет различные варианты опции TO: TO PRINT или TO [FILE]<Filename>. Если OUTPUTTO = 1, вывод идет на принтер. Если OUTPUTTO = 2, вывод в файл. В последнем случае CommandClauses.TOFILE элемент указывает имя файла.

Если не было TO опции в команде REPORT FORM, этот элемент имеет значение 0.

Вы можете корректировать OUTPUTTO и значение TOFILE динамически в событии LoadReport или когда выполняется печатать из предварительного просмотра, как ниже описано для элемента PROMPT. Ваши изменения этих значениям учтуться, когда ReportListener начнет печать.

.PDSETUP

Логическое значение, указывает, использовалось ли ключевое слово PDSETUP в команде REPORT FORM. Как с любой опцией команды REPORT FORM, включенной для обратной совместимости, Вы можете использовать её в Ваших классах по своему усмотрению.

.PLAIN

Логическое значение, указывает, использовалось ли ключевое слово PLAIN в команде REPORT FORM.

.PREVIEW

Логическое значение, указывает, использовалось ли ключевое слово PREVIEW в команде REPORT FORM.

.PRINTPAGECURRENT

Целочисленное значение, по умолчанию 0. Обеспечивает возможность для PreviewContainer передать в ReportListener информацию о том, какая страница была отображена, когда PreviewContainer вызвал  метод  ReportListener.OnPreviewClose.

Когда PreviewContainer использует значение аргумента OnPreviewClose=.T., чтобы вызвать печать после предварительного просмотра, и если .PRINTPAGECURRENT - не 0, ReportListener разрешает указать текущую Страницу ("Current Page") в любом диалоге перед печатью, типа встроенного диалога PROMPT.

См. OnPreviewClose Method для получения дополнительной информации.

.PRINTRANGEFROM, .PRINTRANGETO

Целочисленные значения, применяются совместно для указания подмножества страниц вывода после предварительного просмотра. Значения по умолчанию .PRINTRANGEFROM = 1, .PRINTRANGETO = 1. Максимальный диапазон печати - 1 для ReportListener.OutputPageCount. См. OutputPageCount Property для получения дополнительной информации.

.PROMPT

Логическое значение, указывает, использовалось ли ключевое слово PROMPT в команде REPORT FORM. ReportDesigner добавляет опцию PROMPT , если Вы хотите предварительно просматривать отчёт в процессе разработки.

Примечание:
Вы можете корректировать .PROMPT динамически при предварительном просмотре, например в событии OnPreviewClose(.T.). Аргумент .T.  указывает OnPreviewClose, что Вы желаете напечатать после предварительного просмотра. Вы можете также изменить это значение в событии LoadReport. Ваши изменения учтуться, когда ReportListener начинает печать.

Вы можете сцеплять множество отчетов вместе, используя NOPAGEEJECT, и различные отчеты, могут иметь различные значения CommandClauses.PROMPT. В этом сценарии, существенно значение PROMPT последнего отчете в цепочке (отчет без NOPAGEEJECT).

.RANGEFROM

Целочисленное значение, указывает первый аргумент для опции RANGE, если Вы используете эту опцию в команде REPORT FORM. Если Вы не используете RANGE, этот элемент имеет значение 1. Значение может измениться между событиями LoadReport и BeforeReport, в диалоге PROMPT.

RANGEFROM и RANGETO вычисляются базовым классом ReportListener, когда Вы вызываете IncludePageInOutput Method.

.RANGETO

Целочисленное значение, указывает второй (необязательный) аргумент для опции RANGE, когда Вы используете эту опцию в команде REPORT FORM. Если Вы не используете RANGE, этот элемент имеет значение -1. Значение может измениться между событиями LoadReport и BeforeReport, в диалоге PROMPT.

RANGEFROM и RANGETO вычисляются базовым классом ReportListener, когда Вы вызываете  IncludePageInOutput Method.

.RECORDTOTAL

Целочисленное значение, указывает полный диапазон записей для выбранного псевдонима (рабочей области), который будет обработан. Диапазон задаётся  опциями команды REPORT FORM  и любыми другими ограничениями, которые Вы, возможно, установили (типа команды SET FILTER ).

Это значение - 0 в LoadReport и содержит правильное значение, начиная с BeforeReport. Сбрасывается в 0 после UnloadReport.

.SAMPLE

Логическое значение, указывает, использовалось ли ключевое слово SAMPLE в команде LABEL.

Это ключевого слово нет в команде REPORT FORM. Поэтому, его значение - всегда .F., если Вы не используете команду LABEL.

.STARTDATASESSION

Числовое значение, указывает сессию данных, в которой Вы выполнили команду REPORT FORM или LABEL. Для получения дополнительной информации, см. Understanding Visual FoxPro Object-Assisted Reporting.

.SUMMARY

Логическое значение, указывает, использовалось ли ключевое слово SUMMARY в команде REPORT FORM. Это значение - всегда .F. для команды LABEL; оно применимо только для команды REPORT FORM.

.TOFILE

Символьное значение, указывает целевое имя файла вывода, когда Вы используете опцию TO [FILE]<Filename> в команде REPORT FORM. Вы можете корректировать этот элемент динамически, как рассказано выше про OUTPUTTO.

.TOFILEADDITIVE

Логическое значение, указывает, использовалось ли ключевое слово ADDITIVE Совместно с TO [FILE] <Filename> ASCII в команде REPORT FORM.

Это ключевое слово применяется только к ASCII и игнорируется базовым классом ReportListener.

.WINDOW

Символьное значение, указывает имя окна, когда Вы используете опцию WINDOW <cText> в команде REPORT FORM. Пустая строка, если Вы не используете опцию WINDOW.

Пример

Следующий пример взят из фундаментального класса ReportListener User Feedback Foundation Class. Класс UpdateListener использует его CommandClauses.FILE, чтобы определить заголовок для его окна обратной связи, в случае, если пользователь не определил значение для свойства PrintJobName.

  Копировать код
IF EMPTY(THIS.PrintJobName)
cName = PROPER(JUSTFNAME(THIS.CommandClauses.FILE))
ELSE
cName = THIS.PrintJobName
ENDIF
THIS.ThermForm.Caption = ;
cName + ": " + OUTPUTCLASS_CANCEL_INSTRUCTIONS_LOC

Смотрите также