45986 (665291), страница 7
Текст из файла (страница 7)
Документы могут разрабатываться с использованием одной или нескольких таблиц. В основе однотабличных документов лежит простейшая модель данных - одна единственная таблица. Особых сложностей при разработке таких документов не возникает. Разработка многотабличных документов - более сложная, о ней стоит рассказать подробнее.
1.1. РАЗРАБОТКА МНОГОТАБЛИЧНОЙ МОДЕЛИ ДАННЫХ Paradox позволяет создавать документы, использующие данные одновременно из нескольких таблиц. При построении модели данных многотабличного документа пользователю нужно: - определить для него набор таблиц; - определить отношение между таблицами (связать их).
Все таблицы, данные из которых будут использоваться при разработке документа, должны быть указаны в окне Data Model.
При определении отношений между таблицами нужно знать, как Paradox производит сортировку и поиск данных, основываясь на значениях индексов (об этом было написано выше). Стоит отметить, что связываемые таблицы должны иметь общее поле. Имена полей могут и не совпадать, но их тип и размеры обязаны быть идентичными. Связывая между собой две таблицы, пользователь указывает Paradox вычислить определенной значение в главной таблице (таблице, от которой идет связь) и отыскать соответствующее значение в связанной таблице (таблице, к которой идет связь). Это означает, что связанная таблица обязательно должна быть проиндексирована по полю, которое используется для связывания. Здесь может использоваться как первичный, так и вторичный индекс.
При разработке многотабличной модели данных пользователь может создавать между таблицами как однозначные отношения, называемые также связью один-к-одному или много-к-одному, так и многозначные отношения, или связь один-к-многим.
Однозначными называются такие отношения между таблицами, при которых каждая запись одной таблицы связана не более чем с одной записью другой таблицы. При наличии типа связи много-к-одному нескольким записям главной таблицы может соответствовать одна запись связанной таблицы.
Многозначными называются такие отношения между таблицами, при которых каждой записи одной таблицы может соответствовать более одной записи другой таблицы. Например, какой либо клиент (одна запись таблицы "Клиенты") может сделать любое количество заказов (несколько записей таблицы "Заказы").
1.2. ВЫБОР ИСХОДНОГО ЧЕРТЕЖА ДОКУМЕНТА
При нажатии в окне Data Model кнопки ОК, Paradox откроет диалоговое окно Design Link, которое представляет собой средство просмотра и выбора одного из типов исходного чертежа документа. В просмотровом окошке изображаются поля модели данных.
Для однои многотабличных документов в окне Design Link доступны различные наборы опций, тип окна определяется разработанной моделью данных. Однако, всегда можно: - выбрать поля,которые нужно поместить в документ; - назначить или отменить присутствие меток полей; - определить, для чего разрабатывается документ для просмотра на экране либо для вывода на принтер.
Диалоговое окно Design Link используется абсолютно одинаково как при разработке форм, так и при разработке отчетов. Единственное отличие состоит в способе изображения документа.
В отчетах для отделения разных областей чертежа используются зоны. Существуют зоны для заголовка и окончания всего отчета, для верхнего и нижнего колонтитулов страницы, а также зона тела самого отчета. Все эти опции изображаются в просмотровом поле окна Design Link. В формах нет зон, поэтому на чертеже документа в окне Design Link изображаются только поля таблиц, включенные в модель данных.
2. СРЕДСТВА И ПРИЕМЫ РАЗРАБОТКИ ДОКУМЕНТОВ Средства, предназначенные для разработки документов, используются в окнах Form Design и Report Design. В обоих окнах процесс создания документа состоит из одних и тех же операций: выбора объектов, инспектирования, использования инструментария, расположенного на SpeedBar, и широкого круга доступных приемов оформления чертежа документа.
2.1. ВЫБОР ОБЪЕКТОВ Документ в Paradox состоит из различных частей - объектов, над которыми можно производить различные операции (перемещение, изменение размера, редактирование и т.д.). Для выбора на чертеже документа объектов служит специальный инструмент SpeedBar Selection Arrws. При выборе какого-либо объекта, вокруг него появляется рамка с темными квадратами-"ручками", "потянув" за которые пользователь может изменять размеры объекта. Paradox позволяет также выбирать несколько объектов для выполнения действий над всей группой одновременно.
2.2. ИНСПЕКТИРОВАНИЕ ОБЪЕКТОВ По существу, инспектирование - это определение свойств объектов. Каждый объект имеет свое меню, опции которого определяют его внешний вид (и, иногда, поведение). Это меню вызывается при инспектировании. Например, при выборе поля как объекта, его меню, наряду с другими, содержит следующие опции: имя, цвет, рамку, шрифт, форму и т.д. Кроме того, некоторые свойства объектов задаются командами языка ObjectPAL. Далее, если было выбрано одновременно несколько объектов для инспектирования, внесенные изменения в свойства одного из них, аналогично изменят и свойства других. Paradox позволяет вызвать меню со свойствами, общими для всей выделенной группы, для внесения изменений. Также, пользователь имеет возможность проинспектировать всю форму или отчет, либо только их часть (страницу).
2.3. ПАЛИТРА СВОЙСТВ Некоторые свойства Paradox изображает в виде палитр. Палитра не называет свойство, а показывает его, поэтому в виде палитр, обычно, представляются визуальные свойства объектов (цвет, штриховка и т.д.). Палитра в Paradox может быть как одноразовой (после выбора в ней какого-либо свойства она исчезает), так и "плавающей", закрепленной на экране, к которой пользователь будет иметь возможность обращаться по мере необходимости.
Палитры в Paradox бывают следующие: - Палитра цветов. В меню большинства объектов присутствует пункт Color, выбрав который, пользователь вызывает на экран палитру цветов. Ее можно сделать плавающей, что отличает ее изображение на экране, и, например, инспектируемый объект меняет свои свойства синхронно с перемещением по опциям палитры. Кроме того, она позволяет пользователю самому создавать удовлетворяющие его цвета, смешивая в различных пропорциях имеющиеся.
- Палитра рамок. Многие объекты изображаются внутри рамки, и, соответственно, в меню своих свойств имеют пункт Frame, определяющий цвет, стиль и толщину рамки.
- Палитра штриховок.
- Палитра линий.
- Палитра шрифтов.
2.4. ИНСТРУМЕНТАРИЙ SPEEDBAR На SpeedBar окон разработки находится ряд кнопок-иконок, которые служат для размещения в документе объектов; они называются инструментами. С помощью инструментария SpeedBar пользователь может: - Разработать новый объект. Для этого достаточно щелкнуть мышью соответствующий инструмент, затем мышью задать его положение и размеры.
- Разместить в документе простейшие графические объекты - линии, прямоугольники, эллипсы. Для этого нужно щелкнуть мышью инструмент, нажать левую клавишу мыши и и перемещать мышь по экрану до придания объекту необходимой формы и размеров. Кроме прямых линий, пользователь, работая в Paradox, может рисовать и кривые линии.
- Создавать в документе текстовые объекты с различными характеристиками, переменных (в зависимости от размера вводимого текста) и фиксированных размеров.
- Размещать графические изображения. Щелкнув мышью иконку Graphic, можно импортировать графику из Windows Clipboard и файлов форматов .BMP, .PCX, .TIF и других. При этом вставляемые изображения можно масштабировать с различными коэффициентами масштаба.
- Выполнять растровые операции. В большинстве случаев при определении в документе графического объекта пользователь хочет увидеть на экране точную копию какого-либо графического изображения. Однако, иногда бывает необходимо, чтобы графический объект и экран взаимодействовали друг с другом. Например, объект можно сделать прозрачным или проинвертировать его цвета. Растровые операции определяют, как оригинальное графическое изображение накладывается на экран инвертированием, сложением, включением или исключением цветов.
- Размещать поля во время создания новых документов и использования чертежей, отличных от бланка.
- Размещать многозаписные объекты.
VIII. КРОССТАБЛИЦЫ И ГРАФИКИ
Использование кросстаблиц и графиков позволяет сосредоточить внимание на отдельных группах табличных данных, представлять их более наглядно и выразительно.
Очень часто данные табличных полей принадлежат какому-либо определенному набору значений - категории. Кросстаблицы производят статистическую обработку данных таблицы, разбивая записи на группы по значению в одном или нескольких полях. Графики представляют эти категоризированные и статистически обработанные данные визуально.
Графики в Paradox используются и в формах, и в отчетах, кросстаблицы - только в формах. Кросстаблицы и графики создаются на основе модели данных того документа, в котором они размещаются.
1. КРОССТАБЛИЦЫ Кросстаблицы представляют собой мощный способ анализа таб
личных данных. Кросстаблицы статистически обрабатывают информацию из одного или нескольких полей и показывают итоговую информацию в виде таблицы формата, подобного электронным таблицам.
Фактически, кросстаблицы предоставляют доступ к "скрытой" информации, содержащейся в таблицах, производя следующие операции: - классификацию данных по одной или нескольким категориям; - статистическую обработку данных внутри категории; - сортировку статистической информации; - отображение данных в формате электронной таблицы.
Простым примером таблицы является ее одномерный вариант, позволяющий анализировать данные одного поля таблицы. Информация может быть представлена как в вертикальном виде, так и в горизонтальном. ---------------------------------------------------------¬ ¦ -----T---T----T-----T------T---T----¬¦ ¦ ¦AmEx¦COD¦Cash¦Check¦Credit¦ MC¦Visa¦¦ ¦ L----+---+----+-----+------+---+-----¦ ¦ -----------------¬-----T---T----T-----T------T---T----¬¦ ¦ ¦Number of Orders¦¦ 16 ¦ 7 ¦ 15 ¦ 21 ¦ 93 ¦ 34¦ 38 ¦¦ ¦ L-----------------L----+---+----+-----+------+---+-----¦ L--------------------------------------------------------В качестве примера изображена таблица, созданная по полю "Форма оплаты" таблицы "Заказы". Кросстаблица показывает, как размещенные в какой-то фирме заказы распределились по способам оплаты.
Более сложными типами кросстаблиц являются двумерные и многотабличные кросстаблицы. Двумерные группируют информацию сразу по нескольким категориям. Многомерные кросстаблицы формируются на основе информации из нескольких таблиц, которые связаны между собой однозначным отношением (связью типа один-к-одному, много-к-одному).
2. ГРАФИКИ Графики Paradox обладают широкими возможностями визуального представления информации. Они позволяют быстро и достаточно просто анализировать табличные данные и замечать те особенности и взаимные зависимости данных, которые при обычном просмотре не видны. Paradox позволяет одновременно просматривать различные виды графиков и одновременно работать с данными.
По умолчанию Paradox создает табулярный график, производящий статистическую обработку данных одного поля таблицы по категориям, которые задаются значениями другого поля. Табулярный график - единственный тип графика, который можно использовать в отчетах. Также имеется возможность использования статистических графиков. Статистический график - график, для оси Y которого задана статистическая операция, а на оси Х откладываются значения полей таблиц.
Виды графиков, реализуемых Paradox: - количественные графики; - линейно-временные графики; - процентные графики.
Каждый из перечисленных видов может быть реализован на экране различными способами. Например, процентные графики Paradox может представить в виде простого столбца, объемного, круга, "таблетки" и т.д.
IX. ОБМЕН ДАННЫМИ
Чрезвычайно важной и полезной чертой графической оболочки Windows является возможность динамического обмена данными между ее программами в реальном масштабе времени. Для обмена данными в Windows используются два механизма: Динамический Обмен Данными (DDE) и Связывание и Встраивание Объектов (OLE). Если DDE позволяет обмениваться данными, то OLE позволяет хранить данные из других Windows-программ и иметь непосредственный доступ к функциональным возможностям этих программ.
Программа, данные которой являются источником при обмене, называется сервером, а программа, которая получает данные при обмене, называется клиентом. Paradox использует оба механизма обмена данными и способен быть DDE-клиентом, DDE-сервером и OLE-клиентом.
Использование механизма DDE позволяет поддерживать динамические связи между полями Paradox-таблиц и данными в других Windows-программах. Использование механизма OLE позволяет встраивать в Paradox целые файлы из OLE-сервера. При этом пользователь имеет доступ к OLE-серверу непосредственно из Paradox и может с его помощью производить необходимые изменения встроенных данных.
1. МЕХАНИЗМ DDE
Как уже говорилось, Paradox можно использовать в качестве DDE-сервера и в качестве DDE-клиента.
Когда пользователь помещает данные из Paradox в другие Windows-программы, он использует Paradox в качестве DDE-сервера.
Предположим, что в электронной таблице (например, Quattro Pro for Windows) выполняется некоторая вычислительная процедура. Значение, над которым пользователь хочет выполнить вычисление, находится в поле Paradox-таблицы. Чтобы "доставить" в электронную таблицу необходимые данные, надо скопировать значение поля Paradox-таблицы в Clipboard Windows, а затем вставить его в нужную ячейку электронной таблицы соответствующей командой. При этом не просто копируется значение, а задается механизм динамического обмена данными (DDE), который сообщает электронной таблице, где искать значение для вычислений в ячейке. При перемещении по записям Paradox-таблицы значение в связанной ячейке электронной таблицы изменяется в соответствии со значением, находящемся в соответствующем поле текущей записи Paradox-таблицы. Следует отметить, что пользователь может связать с DDE-клиентом не только отдельные поля таблицы, но и всю таблицу. Таким образом можно связывать Paradox с любыми другими Windows-программами, которые поддерживают DDE (например, текстовыми процессорами).
Чтобы использовать Paradox в качестве DDE-клиента, надо поместить информацию о связи с данными из другой Windows-программы в какое-либо алфавитно-цифровое поле Paradox-таблицы. Для этого надо скопировать значение из DDE-cервера в Windows Clipboard, затем выбрать нужное алфавитно-цифровое поле и дать соответствующую команду. Обычно Paradox используется в качестве DDE-клиента тогда, когда необходимо брать данные из другой программы и на их основе производить запросы к таблицам. Также можно использовать таблицу Paradox в качестве DDE-сервера, а запрос в качестве DDE-клиента. При этом каждое изменение поля таблицы, связанного DDE-связью, будет вызывать выполнение запроса, и, соответственно, обновление таблицы Answer.
2. МЕХАНИЗМ OLE Механизм OLE позволяет хранить и использовать данные из других Windows-программ и иметь доступ к их функциям непосредственно из Paradox. Если DDE позволяет Paradox иметь доступ к источнику данных, но хранит только указатель на источник, то OLE позволяет не только хранить, но и отображать данные из других Windows-программ. Например, можно поместить документ, состоящий из сотен страниц, в единственной OLE-поле и просматривать его непосредственно из Paradox.
Paradox может быть только OLE-клиентом. Нельзя поместить данные из Paradox в другие программы, используя механизм OLE. Как только данные помещаются из других Windows-программ в OLE-поля Paradox-таблиц, форм или отчетов, пользователь получает возможность вызвать программу-сервер, с помощью которой можно, например, отредактировать данные OLE-поля. Например, можно в OLE-поле поместить рисунок из графического редактора PaintBrush, а потом из Paradox войти в него для редактирования введенного рисунка, используя все его возможности.