Анимация
JavaScript


Главная  Библионтека 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 [ 124 ] 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146

"injujiJ *ii

. , I , ill

I . .I , I , I I [*!

f . I H . il, I , I /[

Характеристика иод«л1 автомобили

№7 Uudll

р¥т.ЦЗяГ

-r-W-

hl»Ji1<

!J 1

ОвиЬЬчр

BHmitJJ.iS;!. C:!J .

SjiAcJbu lift liddhi AHibbjbku

Окно среды 01:рум;ения Qala tnvironment

Окно Proper!: es для установки сво;лста Яреды Офужемия

Рис. 11.5.

Заметьте, что при проектировании отчета мы можем широко применять технологию перетаскивания. Для быстрого размещения полей в отчете их можно перетаскивать как из окна Data Environment, так и из Project Manager. Также можно перетаскивать таблицы из Project Manager в окно Data Environment.

Как вы, наверное, уже поняли из сказанного выше, отчеты в FoxPro составляются из объектов, которыми можно манипулировать множеством способов. В число этих объектов входят графические объекты (линии и рамки), объекты полей (поля, переменные, выражения и т. п.) и текстовые объекты. Только не запутайтесь в различных нюансах слова "объект" в различных инструментальных средствах Visual FoxPro. В Конструкторе отчета объекты, размещаемые на его поверхности, в отличие от Конструктора формы никакого отношения к объектно-ориентированному программированию не имеют.

Все действия в Конструкторе отчета производятся только с выделенными объектами. Для выделения объекта установите на нем указатель и нажмите кнопку мыши. Можно выделить более одного объекта, для этого, выделив первый объект, нажмите клавишу Shift, после чего выделяйте другие объекты. Несколько объектов можно выделить также с помощью маркера выбора (selection marquee). Установите курсор вне тех объектов, которые должны быть выбраны. Нажмите клавишу пробела или кнопку мыши, чтобы закрепить маркер выбора. Вместо курсора появится точка, начиная с которой при перемещении курсора строится прямоугольник вокруг тех объектов, которые дoлжны быть выделены. Если вы pаботаете мышью, не отпускайте ее кнопку. Когда все oбъекты будут выделены, нажмите клавишу Enter или отпустите кнопку мыши.

Если выделено несколькo oбъектoв, любая oпеpация пеpемещения, выpезания, кoпиpoвания, вставки pанее вырезаннoгo объекта или удаления действует на них, как на oдин объект.

Изменения параметров объектов выполняются с помощью следующих команд меню Format:

заголовки и, прибавив к отчету полосу Title, оформить его название. Кстати, для подготовки отчетов можно гораздо шире, чем это было в случае создания формы, использовать Мастер создания отчета, так как объекты отчета не привязаны к классам.

На рис. 11.5 приведен отчет, построенный с помощью команды Quick Report для таблицы Propmod, в которой хранятся данные о моделях автомобилей. Перед снятием этого изображения экрана компьютера мы вызвали команду Data Environment меню View. Как видите, мы точно так же, как это было в Конструкторе формы, можем задавать свойства и реагировать на события, связанные с данными, используемыми в отчете. Наличие среды окружения позволяет легко использовать при построении отчета специально подготовленные с помощью команды SELECT-SQL данные. Достаточно создать просмотр требуемой структуры и затем просто поместить его в среду окружения - Data Environment.



Report EKpression

Expression:

Format:

□ К

... I Cancel

Calculations...

Print When...

rObject Position

С FJoat

Fix Relative tojop of Band f. Fix Relative to Bottom of Band

П Stretch with overflow Comrrient ,

Рис. 11.6.

С помощью этого диалогового окна в отчет можно пoместить изменяемые данные (поля) с определенным форматом вывода, котоpые могут быть полями таблицы, просмотра или курсора, выpажениями, функциями, в том числе опpеделенные пoльзoвателем.

Задать поле, котоpое необходимо поместить в отчет, можно пpямо, указав его в поле

• Align - выравнивание объекта или группы объектов относительно страницы отчета или друг друга. Используйте панель инструментов Layout для быстрого выполнения этой функции.

• Size - позволяет изменить размеры объекта или группы объектов относительно друг друга. Команды подменю соответствуют возможностям панели инструментов Layout. Команда To Grid изменяет размеры объекта в соответствии с установленной координатной сеткой, если включено Snap to Grid.

• Horisontal Spacing - позволяет увеличить (Increase), уменьшить (Decrease) или выровнять (Make Equal) промежутки между объектами по ширине страницы отчета.

• Vertical Spacing - позволяет увеличить (Increase), уменьшить (Decrease) или выровнять (Make Equal) промежутки между объектами по длине страницы отчета.

• Bring to Front - позволяет выдвинуть объект на передний план, если он закрыт другими объектами.

• Send to Back - позволяет отодвинуть объект на задний план, если он закрывает другой объект.

• Group - группирует выделенные объекты так, что в дальнейшем мы можем изменять их свойства и местоположение, рассматривая их как единый объект.

• Ungroup - разъединяет группу объектов для индивидуального задания свойств.

• Snap to Grid - включает или выключает режим привязки объекта к координатной сетке при его перемещении.

• Set Grid Scale - включает или выключает режим отображения координатной сетки.

• Font - выводит на экран стандартное диалоговое окно Windows для изменения типа и характеристик шрифта для меток и текстовых полей.

• Text Alignment - позволяет установить выравнивание текста в метках и текстовых полях. Для изображений и встроенных OLE-объектов доступно выравнивание только по центру. Для многострочных меток здесь же мы можем задать межстрочный интервал.

• Fill - позволяет выбрать заполнение для областей внутри рамок.

• Pen - позволяет установить ширину или тип линии или рамки.

• Mode - позволяет выбрать прозрачный или сплошной фон для всех объектов отчета кроме линии.

Новые объекты в отчете можно создать с помощью панели инструментов Report Controls (см. рис. 11.3). Если вы создаете текстовое поле, то после того, как вы обведете контур, в котором это поле будет располагаться, на экране появится диалоговое окно Report Expression, приведенное на рис. 11.6.



Expression диалогового окна, или вызвав Пoстpоитель выpажений, нажав кнопку справа от этого поля. Пользуясь Пoстpoителем выражений, вы можете пoстрoить выpажение, выбиpая поля из откpытых таблиц и pазмещенные в памяти пеpеменные и стандаpтные функции Visual FoxPro в диалоговом pежиме. Также возможно проверить пpавильнoсть составленного выражения.

В поле Format диалогового окна Report Expression можно задать шаблон, котоpый будет определять формат выводимого значения. Для определения формата можно использовать следующие символы:

• A - допускает вывод только символов алфавита.

• L - допускает вывод только логических данных.

• N - допускает вывод только букв и цифр.

• X - допускает вывод любых символов.

• 9 - допускает вывод только цифр для символьных данных и цифр и знаков для численных данных.

• # - допускает вывод цифр, пробелов и знаков числа.

• $ - выводит знак доллара в фиксированной позиции перед числом.

• $$ - выводит знак доллара непосредственно перед числом.

• * - выводит знак "звездочка" перед числом для затруднения приписки дополнительных цифр в отпечатанном документе.

• . - определяет положение десятичной точки.

• , - может использоваться для отделения разрядов в числе.

Например, если для числового поля мы установим шаблон "9,999,999.99", то в выводимом значении в указанных местах будут использованы символы, принятые в качестве разделителей разрядов и десятичной точки.

Кнопка справа от поля Format поможет вам выбрать подходящий формат в диалоговом режиме. В табл. 11.1 приведен список опций, которые можно задать в диалоговом режиме в поле Format для полей каждoгo типа.

Таблица 11.1. Форматы для полей в отчете Опция Пояснение

Для pедактирования символьных данных

To Upper Все симвoлы алфавита преобpазуются в

Case заглавные буквы

Ignore Несоответствующие формату символы в

Input Mask шаблоне не oтображаются при печати

Left Justify Данные печатаются в пoле, выpoвненными влево

Right Justify Данные печатаются в пoле, выpoвненными впpаво

Center Данные в пoле центpируются Justify

Для pедактирoвания числовых данных

Left Justify Выpавнивание данных по левой гpанице

Blank if Пpопуск поля, если его значение pавно 0 Zero

(Negative) Отрицательные числа будут заключаться в скoбки

CR if После пoложительнoго числа печатается

Positive CR - кpедит

DB if Пoсле отpицательного числа печатается

Negative DB - дебит

Leading В поле печатаются все ведущие нули Zeros

Currency Отoбpажает данные с добавлением наименования денежной единицы

Scientific Число печатается в экспоненциальной фоpме

Для редактирования данных типа даты



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 [ 124 ] 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146