Содержит общее количество страниц в отчете.
Вы можете использовать _PAGETOTAL для установки нумерации страниц в отчетах вида "Страница X из Y". _PAGETOTAL поддерживается как в девелопере так и в run-time Visual FoxPro во всех операциях отчета, включая REPORT FORM...TO FILE...ASCII и с дополнительными параметрами типа RANGE .
_PAGETOTAL [ = nValue ] |
Параметры
- nValue
- Определяет положительное число, представляющее общее количество страниц в отчете.
Замечания
Вы можете установить _PAGETOTAL в любое время. Visual FoxPro оценивает и обновляет _PAGETOTAL только когда происходит выполнение отчета REPORT FORM . В начале выполнения отчета, Visual FoxPro инициализирует _PAGETOTAL значением 0, независимо от того использует ли отчет переменную _PAGETOTAL .
Если Вы включаете _PAGETOTAL где-нибудь в отчете Visual FoxPro, Visual FoxPro исполняет двойной проход отчета. Первый проход не видим или используется для вывода и вычисления переменной _PAGETOTAL . В течение первого прохода, _PAGETOTAL принимает значение -1.
По соображениям быстродействия, Вы можете подавить отчет с двумя проходами, запрещая вызов _PAGETOTAL в режиме предварительного просмотра печати, используя выражение типа:
Скопировать код | |
---|---|
TRANS(_PAGENO) + IIF(SYS(2040)="1", "", " OF " + TRANS(_PAGETOTAL)) |
Если Вы не включаете ссылку на _PAGETOTAL в отчете, Visual FoxPro устанавливает значение _PAGETOTAL в значение общего количества страниц в конце печати и выполняет только один проход отчета.
Вы можете вызвать второй проход отчета, используя выражение типа:
Скопировать код | |
---|---|
IIF( _PAGETOTAL = 0, "","" ) |
Инициализизация второго прохода позволяет выполнить дополнительные операции, используя переменные отчета типа вывода % от общего количества страниц.
Совет: |
---|
Для инициализации второго прохода, в предыдущих версиях Visual FoxPro, Вы нуждались в ссылке на _PAGETOTAL в раскладке отчета. В Visual FoxPro 9.0, Вы можете также использовать ссылку на ReportListener вашей команды REPORT FORM. Устанавливая свойство ReportListener's свойство TwoPassProcess в .T . прежде, чем отчет выполнится, Вы можете вызвать двойной проход отчета, даже если Вы не использовали _PAGETOTAL в любых выражениях отчета. Для подробной информации, см. свойство TwoPassProcess .
|
Значение _PAGETOTAL должно равняться значению _PAGENO в конце печати отчета, независимо включает ли отчет _PAGETOTAL .
Пример
Следующий пример иллюстрирует, как включить нумерацию типа "Страница X из Y" в вашем отчете, используя системную переменную _PAGETOTAL и добавляя следующее выражение в поле отчета:
Скопировать код | |
---|---|
"Page " + TRANS(_PAGENO) + " of " + TRANS( _PAGETOTAL) |
См. Также
Ссылки
ReportListener Свойства Объекта, Методы, и СобытияREPORT FORM Команда
Другие Ресурсы
Обзор системных переменных_PAGENO Системная Переменная