Анимация
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

1 Ш Account

: KEY ACCOUNT:

DATE WRITE: : SELLED:

: SUM:

QUANTITY:

Add 1 Delete

Refresh Update Close

M <! 4w

Рис. 10.22.

Для вызова календаря разместим рядом с полем для отображения даты еще одну кнопку. Дадим ей имя cmdCallData и заголовок "Новая дата". Щелкнем на кнопке два раза и в появившемся окне для записи кода в процедуре cmdCallData Click() запишем строчку:

frmNewDate.Show

Тем самым мы обеспечиваем вызов формы с календарем.

Для создания вспомогательной формы с календарем в меню Insert выберем команду Form. Дадим ей имя frmNewDate и заголовок "Выберите дату". На панели инструментов нажмем кнопку Calendar и, удерживая левую кнопку мыши, обведем на форме соответствующий контур. Появившемуся на форме объекту дадим имя olcCalendar. В Visual Basic свойства для объекта ActiveX можно изменять и в его собственном окне свойств, вызываемом из контекстного меню, и в окне Properties Visual Basic. Изменить значение даты, записанное в поле первой формы, можно с помощью следующей процедуры:

Private Sub olcCalendar AfterUpdate()

frmAccounts.txtFields(1) = olcCalendar.Value

End Sub

Теперь, при запуске формы и изменении даты в календаре, тут же будет изменяться значение поля date write в таблице Account.

Глава 11

Подготовка отчетных данных

11.1. Создание отчетов в Visual FoxPro

Управление режимом печати

11.2. Создание отчетов в Access

Подготовка и оформление отчетных данных, без сомнения, являются кульминацией любого делового приложения. Именно на этом этапе ваш заказчик наконец-то узнает, что вы делаете и зачем он нанял вас на работу. Результат этого знания не обязательно будет сопровождаться только восторженными репликами в ваш адрес. Так что стоит приложить усилия для того, чтобы все многообразие данных, записанных в таблицах приложения, нашло достойное отображение в отчетах, напечатанных принтером.

11.1. Создание отчетов в Visual FoxPro

Visual FoxPro имеет мощные средства построения отчетов для вывода данных в желаемом для пользователя виде на принтер, экран или в текстовый файл.

В этом параграфе мы рассмотрим последовательность создания отчета в Visual FoxPro, способы его печати и управления режимами печати отчета.



Вертикальная координап-нап

Меню ifuHcpyi(TuM отчета-

Очна Канструкторэ ртчвта с полос»!и Details и колонтитула

Горнао1л-альнэя координатная

I пмИ V>4N.rihliHhik

q: !jibi(j*ffliv.- 4=

ncjioc*J для разделении раадепов отчета (пе[кдвигайте tibiLuroflJ:

□kbJIEidt..

tl Hiqil liaiyiiiii Hi-f*H

JE...B..

LT,-.(.tll«t*e«(iori




A]s[aolE iJ

гтгггш пшгт

в DO..

U:dlK<cHDiitaiindt

pw Г

Панель MHfiT5(yhjiftMT0E

с объеиэми KonicTp>iaopa отчетсв

ПэивПь И HdtpytJiftHtOb

для выбора цветов

Панель ишструг-чентоа для вырлвниаання оЁъелоа

Рис. 11.2.

С помощью меню Конструктора отчета Report, которое автоматически появляется в главном меню Visual FoxPro, можно выполнить следующие действия:

Title/Summary - добавить в окно Конструктора отчета полосы заголовка и итогов. Data Grouping - вывести диалоговое окно для задания группировки данных. Variables - задать переменные для использования при подсчете данных. Default Fonts - вывести стандартное диалоговое окно Windows для выбора шрифта и установки его характеристик, которые будут использованы по умолчанию для всех текстовых объектов в отчете.

Перед началом построения отчета необходимо продумать его расположение на странице и порядок вывода данных. Сделайте эскиз отчета на листе бумаги, учтите общую ширину всех полей, которые вы хотите распечатать, подумайте о длине заголовков. Таким образом вы получите представление о требуемом формате отчета, только не забудьте о реальных возможностях вашего принтера.

Порядок расположения данных в отчете и его элементы (для примера его длина взята равной трем страницам) приведены на рис. 11.1. Данные, помещаемые в полосу Details, распечатываются многократно, с автоматическим переводом указателя записи в таблице или курсоре, которые являются источником данных. Группировка данных позволяет выводить их в систематизированном виде. Например, список сотрудников по отделам, отделы по цехам и т. п.

Конструктор отчета (Report Designer) по принципу работы похож на Конструктор формы без учета объектно-ориентированных возможностей. На рис. 11.2 приведен вид Конструктора отчета и даны пояснения его основным элементам.



I a-dqk

Блокировка кнопки выбора объекта Изображение или содержание поля типа General Рамка с округленными углами Рамка Линии ралпичнйпй типа Текстовое поле Метка

Указатель для редактирования и переглещения объектов Рис. 11.3. Панель инструментов Report Controls

Простейший отчет по данным из одной таблицы удобно строить с помощью команды Quick Report из меню Report. Она автоматически помещает выбранные поля в окно Конструктора отчетов. После ее выбора появляется диалоговое окно Quick Report, изображение которого приведено на рис. 11.4.

Рслапопкение полей по строкам

Расп1Л=>К1ение пслеи по колонкам

;/ Quirt rinit

Созданиэ cpeibi окружения Data Environnnenl ,ПпбяР1ЛН11й nriftRAOHMMfi у, имени пппя

{необходимэ npi ипэлмэаании данных из нескогькик тайпнц) Bbieoq идвнтифи<ато[>св палей е качестве аагоповков

Рис. 11.4.

По умолчанию команда Quick Report помещает все выбранные поля в полосу Details, а идентификаторы полей - в полосу Page Header. В полосу Page Footer слева помещается поле с функцией DATE() для вывода текущей даты, а справа - поле с системной переменной PAGENO (номер страницы) и меткой "Page" перед ним. Если вам нужна простая распечатка данных, то это неплохая заготовка, в которой останется только поменять идентификаторы полей на их

• Private Data Session - установить для отчета отдельную сессию данных. В этом случае перемещение указателя записи при печати отчета не будет сказываться на форме, в которой используются те же данные.

• Quick Report - запустить утилиту быстрого построения отчета.

• Run Report - запустить отчет на выполнение.

Большое количество действий можно выполнить также с помощью команд, расположенных в меню View и Format, основные из которых мы рассмотрим при описании последовательности создания отчета.

Для ускорения процесса работы с объектами при создании отчета можно пользоваться панелями инструментов, которые также показаны на рис. 11.2. О двух из них мы уже говорили при описании Конструктора формы. Панель инструментов Report Controls по своим функциям похожа на панель инструментов Form Controls в Конструкторе формы и предназначена для выбора объектов отчета. Назначение кнопок на этой панели описано на рис. 11.3.



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