Разработка проектов в системе FileMaker Pro
Часть 1: Введение
[ 22 февраля, 2007 г ]Автор: Аркадий Перла

Эта статья открывает цикл обзоров, посвященных FileMaker Pro. FileMaker относится к так называемым СУБД - системам управления базами данных. Людям, далеким от программирования, эта тема может показаться не слишком волнующей, однако сфера применения FileMaker выходит далеко за рамки продуктов для разработки приложений. Нельзя не заметить, что основными пользователями FileMaker, как не устают подчеркивать его создатели, являются вовсе не программисты. FileMaker - это офисная программа, позволяющая обычному пользователю создавать свои базы данных, управлять ими, а также выстраивать на их основе различные системы управления. Главным аналогом и конкурентом FileMaker в мире Windows, является Microsoft Access. В мире Mac OS X у FileMaker конкурентов фактически нет. Об основных отличиях FileMaker от Access было рассказано в цикле статей "Жизнь без Microsoft", в этих же статьях мы сосредоточимся на освоении работы с самой программы.

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

Исходя из сказанного, мы тоже сначала будем концентрироваться на основных и наиболее понятных вещах, как бы не замечая некоторых аспектов программы (дополнительных параметров, кнопок, пунктов меню и т.п.), а впоследствии возвращаться к ним, предлагая уже более сложное, детальное описание. FileMaker относится к виду систем "два в одном", когда в одной программе соседствуют как средства разработки, так и собственный интерфейс работы с базами данных. В этом цикле мы сосредоточимся на описании именно средств разработки собственных проектов, а описание собственных функций FileMaker (команды меню и т п.) доступа к своим базам будут даны попутно.

FileMaker это не только название программы, но и фирмы ее выпускающей. Раньше она называлась Claris и, помимо FileMaker, выпускала почтовую программу Claris Mailer, поставлявшуюся с некоторыми версиями Mac OS, а также офисное приложение Claris Works. Не все знают, что Claris, а впоследствии FileMaker, являлась и является дочерней компанией Apple. Пакет Claris Works в последствии превратился в Apple Works, и теперь фактически сошел со сцены программного обеспечения, уступив место новой разработке Apple – iWor. Mailer ж,е в свою очередь, была замена на знаменитый Mail из состава Mac OS X. Сейчас фирма FileMaker, насколько это известно, сосредоточена исключительно на разработке и продвижении своего одноименного продукта. И делает это весьма успешно. Текущая версия - 8.5, и она является полностью идентичной как для Mac OS X, так и для PC. Начиная с этой версии,и FileMaker выходит в формате Universal Binary, оказавшись одним из первых крупных приложений, переведенных на "родной" формат Macintosh с процессорами от Intel. Родство с Apple не могло не отразится на FileMaker - приложение создано в истинном "маковском" духе, когда на первый план выходят простота, изящность и логика решений.

Несмотря на кажущуюся "легкомысленность" FileMaker, по сравнению с такими продуктами, как MS Access, - продукт, не менее мощный по своим функциональным возможностям. Освоив FileMaker, вы сможете создавать свои собственные проекты, применение которых, практически, не ограничено. Вы можете создать каталог своей домашней библиотеки или фильмов, разработать собственную систему учета товаров на предприятии или учета расходных материалов, систему прохождения заказов в вашей фирме или системы персонализированной печати. И многое, многое другое...

Вы сможете программировать на встроенном языке FileMaker Script, не изучая даже основ программирования. Узнаете, как сделать ваш проект доступным другим пользователям едва ли не одним щелчком мыши, тем самым создав сетевую многопользовательскую систему со всеми сопутствующими атрибутами, такими как ограничение прав пользователей. И даже как пойти еще дальше, сделав свою систему доступной в интернете c помощью обычного web-браузера. Как превратить ваш проект в собственное самостоятельное приложение, не требующее для работы сам FileMaker.

Основные понятия в системе FileMaker

Таблицы

Большинство используемых в настоящее время систем управления базами данных (FileMaker здесь не исключение) используют так называемую реляционную модель. Основная суть ее заключается в том, что все данные в базе описываются системой как некая таблица или же несколько различных таблиц. Пояснить это можно на простом примере.

Наверняка вы не раз сталкивались с электронными таблицами типа MS Exсel. Если создать в такой программе список сотрудников фирмы, то, скорее всего, он будет выглядеть примерно так:

Каждая строка - это данные о сотруднике, на языке СУБД их называют записями. А каждый столбец отвечает за какие-то конкретные данные (фамилия, имя, телефон и т.д), и называется полем. В нашем случае таблица состоит из четырех полей, а сама база имеет три записи.

Добавление, удаление, редактирование, сортировка и поиск записей и составляют суть работы с базами данных. Само же описание таблицы, то есть, из каких полей она состоит, и за что они отвечают, создается во время разработки базы данных. Впрочем, FileMaker всегда позволяет внести изменения, если они необходимы. Сразу оговоримся: что в одном файле FileMaker может быть не одна, а произвольное количество таблиц. В одном файле может храниться огромное количество независимых друг от друга данных.

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

Text - поле для хранения текста.

Number - поле для хранения цифровых данных

Date - поле для хранения данных о дате

Time - поле для хранения данных о времени

TimeShtamp - так называемый штамп времени служит для хранения вместе и даты и времени в одном поле.

Container - специальное поле для хранения различных файлов внутри таблицы, таких как: изображения, звук, видео или документы.

Кроме этих типов, существуют еще два специальных типа: Calculation и Summary, которые мы опишем позже.

Если вам уже приходилось работать с другими СУБД, то может показаться, что количество типов полей в FileMaker слишком мало. Однако это больше преимущество, чем недостаток. FileMaker заботится о пользователях, не заставляя их мучительно выбирать из нескольких близких по смыслу типов.

Создание проекта:

При запуске FileMaker предлагает выбрать одно из трех действий: создать новый файл из существующих многочисленных шаблонов, которые поставляются вместе с ним (Create a new file using a template), создать новый пустой файл (Create a new empty file) или открыть уже существующий файл (Open an existing file). В нашем случае выберем создание нового файла.

Когда вы создаете новый файл, то после того как вам будет предложено дать ему имя, и указать где он будет хранится на вашем компьютере, FileMaker предложит вам создать хотя бы одну таблицу - появится диалоговое окно Define Database.

Обязательно просмотрите предлагаемые FileMaker шаблоны – большой набор разнообразных тем представляют прекрасный материал для быстрого освоения работы в FileMaker и демонстрации его возможностей (финансы, проекты, кадры, коллекции и пр.).

Окно имеет три режима:

Tables - для создания и удаления таблиц и выполнения некоторых специальных операций.

Filelds - для работы с полями выбранной таблицы

Relationships - для установки взаимосвязи между таблицами.

Если у вас только одна таблица, то вам потребуется только режим Filelds.

Здесь вы можете:

Create - создавать новое поле. Имя поля должно быть предварительно введено в графу Filed Name. Поле будет создано с тем типом, который был при этом выбран в графе Type. Вы так же можете ввести комментарий, к полю для последующего удобства использования.

Change - изменять параметры поля (имя, тип, комментарии). Для внесения изменений, предварительно выделите требуемое поле в списке.

Dublicate - продублировать поле. Будет создана копия предварительно выделенного поля, с именем "имя поля copy". Все остальные параметры будут полностью идентичны.

Delete - удаление выбранного поля

Copy и Paste - скопировать и вставить. Эти функции вам могут потребоваться, если вы захотите скопировать какое-либо поле в другую таблицу.

Обратите внимание, что команды Dublicate, Delete, Copy, Paste применимы не только к одному полю, но и к нескольким сразу, если вы предварительно их выделите.

Кнопка Options служит для редактирования специальных параметров поля и будет рассмотрена в дальнейшем.

Кнопка Print используется для печати структуры таблицы.

В дальнейшем вы можете в любой момент внести изменения в структуру ваших таблиц, вызвав окно редактирования и воспользовавшись командой меню File -> Deifine -> Database (Shift-Comman -D).

Режимы работы FileMaker

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

Создав свою первую таблицу и нажав "Оk", вы увидите нечто подобное:

Так выглядит FileMaker в режиме Browse Mode – режиме, предназначенном для работы с данными. Пусть вас не смущает скудность интерфейса, все требуемые "навороты" вы сможете добавить сами.

Всего FileMaker предлагает четыре режим работы:

Browse Mode - Режим для работы с данными базы. В этом режиме вы можете добавлять, просматривать, вносить изменения и удалять записи. Вы можете сортировать их по различным признакам, блокировать отображение ненужных в данный момент записей для удобства работы. Режим Browse - это основной режим пользователя вашей базы.

Find Mode - режим для осуществления поиска записей в базе на основе какого-либо критерия. Можно искать по одному или нескольким критериям сразу, задействуя одновременно несколько полей таблицы. Когда FileMaker закончит поиск, он возвращается в режим Browse для отображения найденных результатов.

Layout Mode - основной режим разработчика проекта. Этот режим позволяет вам определить, каким образом данные базы будут отображаться в режиме Browse, а также будут напечатаны.

Preview Mode - режим предварительного просмотра перед печатью. Показывает, каким образом ваши данные будут отпечатаны на бумаге. Для определения формата и ориентировки страницы используются значения, заданные в диалоге Page Setup.

Layout

Layout - ключевое понятие в FileMaker. Его довольно сложно перевести на русский язык из-за обилия значений, поэтому мы будем использовать английский термин. Возможно, наиболее близким по значению было бы понятие "макет". Таким образом, Layout является макетом отображения данных содержащихся в вашей базе. Layout - может быть произвольное количество, но каждый из них обязательно привязан к какой-то одной таблице в вашей базе. У каждой таблицы есть хотя бы один Layout, но может быть и несколько. Layout определяет, как данные из таблицы будут отображаться в режиме Browse а также выглядеть при печати.

Для того, чтобы разобраться, как это работает, представьте себе, что вы создаете записную книжку. Вам хочется работать с ней двух режимах: просмотр фамилий адресатов единым списком, и второй режим - детальная информация об адресате. В идеологии FileMaker вам требуется создать два Layout: один будет включать в себя только поле "Фамилии" и отображать все записи построчно, а второй Layout будет включать все поля таблицы и показывать только данные из текущей записи.

Создание Layout, редактирование и определение логики переключений между ними и есть Основная функция разработчика проекта в FileMaker. Во время редактирования Layout вы:

- определяете, какие именно поля базы будут отображаться

- определяете их расположение на экране и при печати

- определяете сопроводительные подписи к ним

- определяете формат отображения полей

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

- добавляете управляющие элементы (например, кнопки)

Как видно из этого перечисления, редактирование Layout напоминает работу в графическом редакторе. Вы размещаете, выравниваете, добавляете и удаляете различные элементы, достигая того, чтобы ваша база наиболее лучше удовлетворяла вашему восприятию.

Теперь попробуем понять, насколько сложно воспроизвести на практике, приведенный пример с записной книжкой. Итак, Layout для отображения детальной информации об адресате у нас уже есть (он был сгенерирован FileMaker автоматически, когда мы создали таблицу), теперь нужно создать Layout c пофамильным списком. Для начала нам нужно перевести FileMaker в режим Layout Mode. Вы можете сделать это несколькими способами, как вам больше нравится:

- Через меню View - Layout Mode

- Сочетанием клавиш Command-L

- Нажав кнопку переключения в режим Layout Mode в верхней части боковой панели

- Выбрав из выпадающего меню в нижней части главного окна

Теперь выберите команду меню Layouts -> New Layout/Report (Command-N) - появится мастер создания нового Layout. В графе Layout Name - введем название нового Layout, например Listing, а в списке Select a layout type (выберете тип Layout), установите значение Columnar list/report (колоночный список), и нажмите Next. В следующем, появившемся окне сразу жмем Next, а вот в третьем окне, нам предлагают выбрать какие именно поля нашей таблицы будут отображаться в новом Layout - я выбрал Last Name и Name. Выделите требуемые поля и нажмите кнопку Move, перенося их в правый столбец.

Если вы ошиблись и перенесли не то поле, вы можете просто удалить его из списка, выделив и нажав появившуюся кнопку кнопку Clear. Поскольку это наш первый Layout, не будем вдаваться во все детали, так что жмите кнопку Next, пока мастер не перестанет задавать вопросов - все дальнейшие параметры можно оставить по умолчанию. Когда вы нажмете кнопку Finish, новый Layout будет создан и отображен в главном окне. Обратите внимание, что, создав Layout, FileMaker переключился в режим Preview Mode - предварительного просмотра перед печатью. Для того, чтобы вернуться в обычный режим Browse, воспользуйтесь аналогичными действиями переключения режимов, описанных выше. У вас получится что-то подобное:.

Я специально предварительно создал несколько записей с фамилиями, чтобы рисунок получился более наглядным.

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

Этот нехитрый пример, всего лишь показывает, что вы можете получить доступ к вашем данным в различной удобной для вас форме не слишком утруждая себя. Дальнейшие же статьи будут посвящены детальному описанию, возможностей FileMaker, позволяющих создавать серьезные проекты с весьма "навороченным" интерфейсом.

Боковая панель, которую вы видите во всех режимах называется Status Area. Ее вид меняется в зависимости от того в каком режиме вы находитесь сейчас. В режиме Browse она помогает вам осуществлять навигацию по базе. Картинка раскрытой книги со стрелочками, нажатие на которые перемещает вас на следующую или предыдущую запись в базе, появилась в FileMaker c самых первых версий. Кроме FileMaker, вы могли видеть такой способ навигации в Apple Works - там тоже есть режим создания базы данных. По сути Apple Works в плане работы с базой, был сильно урезанный FileMaker, предоставляющий основные его возможности. Если панель Status Area вам мешает вы можете скрыть ее нажав квадратик внизу окна, рядом с названием режима, либо воспользоваться меню View -> Status Area (Option-Command-S). Обратная операция вернет панель на место.


Источники: МакЦентр

Комментарии, обсуждение