Персональная СУБД FileMaker больше тридцати лет развивалась на платформе Apple и почти не уступает Microsoft Access по возможностям. Зато она имеет несколько любопытных особенностей, которые делают этот продукт доступнее для непрофессионалов и позволяют за минуты создать действующий прототип приложения для iPhone или iPad.

Программисты склонны относиться к поделкам на базе Microsoft Access и других подобных средств со смесью презрения и ужаса. У них есть для этого основания. Задачи, которые решают с помощью таких разработок, почти всегда имеют более дальновидные, мощные и правильные решения. Но вряд ли столь же простые, дешевые и доступные для пользователей, а эти критерии нередко важнее абстрактной «правильности». Это особенно понятно, когда имеешь дело с одним из конкурентов Access — приложением FileMaker Pro 14.

Как и Access, FileMaker Pro представляет собой сочетание системы управления базами данных и средства быстрой разработки приложений для доступа к этим базам, в том числе по сети (как по локальной, так и через интернет с помощью обычного браузера. Последнее, впрочем, требует FileMaker Server). Хоть в FileMaker Pro встроен мощный скриптовый язык, во множестве случаев можно обойтись без него.

Новая версия продукта, вышедшая в начале мая, отличается модернизированным интерфейсом (градиенты, из которых он состоял раньше, странновато смотрелись в Windows 8 и OS X 10.10) и полностью переработанным редактором скриптов. Кроме того, появились новые элементы интерфейса и возможности их настройки.

FileMaker менее известен, чем Access, но так было не всегда. У этой программы долгая и запутанная история. Ее предшественник — одна из первых систем управления базами данных для MS-DOS, которая появилась около тридцати пяти лет назад. Когда компания Apple выпустила «Мак», создатели FileMaker тут же перебрались на новую платформу. Вскоре их детище приобрело такую популярность, что в Microsoft решили отказаться от разработки собственной СУБД — испугались конкуренции. Это задержало появление Access на пять с лишним лет.

FileMaker Pro 13 для Windows. Кросс-платформенность — важное достоинство FileMaker Pro. Он поддерживает Windows, OS X и iOS, а на Linux и Android базы данных можно открывать и редактировать в веб-браузере
FileMaker Pro 13 для Windows. Кросс-платформенность — важное достоинство FileMaker Pro. Он поддерживает Windows, OS X и iOS, а на Linux и Android базы данных можно открывать и редактировать в веб-браузере

Успехи FileMaker были недолгими. В девяностые он растерял свои завоевания, сохранив лидирующие позиции лишь на переживавшем не лучшие времена рынке программного обеспечения для Mac OS. Спустя двадцать лет FileMaker Pro остается самым популярным приложением такого рода, работающем на OS X (версия для Windows, само собой, тоже имеется — на корпоративном рынке без нее никуда). Хотя по функциональности и проработанности этот продукт вполне сопоставим с конкурентами, достаточно одного взгляда, чтобы понять: он не копировал их, а развивался независимо. FileMaker Pro самобытен, и это делает его интересным.

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

Еще одна интересная особенность этого продукта — поддержка iOS. Средства разработки FileMaker Pro позволяют создавать интерфейсы для манипуляции данными на экране планшета или телефона, а затем запустить их на iPhone или iPad. При этом если база данных открыта по сети, то любые изменения, внесенные в интерфейс или данные, тут же отражаются на мобильном устройстве — и наоборот. Это, помимо прочего, превращает FileMaker Pro в удобное средство быстрого прототипирования мобильных приложений.

FileMaker Pro 14 после создания новой базы данных
FileMaker Pro 14 после создания новой базы данных

Вот как создать простую базу данных при помощи FileMaker Pro 14. При старте он активирует режим редактирования макетов (Layout) или, если называть вещи своими именами, интерфейсов. Макеты заменяют в FileMaker Pro формы и отчеты Access. Каждой таблице должен соответствовать хотя бы один макет, но их может быть и несколько. Макеты будут представлять собой отдельные экраны приложения, которое мы разрабатываем. Кроме того, они позволяют оформить данные для печати на принтере или, скажем, сохранения в формате PDF.

Кроме режима редактирования макетов, имеется режим просмотра (Browse), в котором пользователь взаимодействует с интерфейсами и базой данных. Если в режим редактирования макетов FileMaker Pro превращается в среду разработки, то в режиме просмотра он исполняет созданное «приложение», а сам уходит на второй план.

Два других режима используются реже. Режим поиска (Find) предназначен для извлечения из базы данных информации, которую нельзя получить при помощи одного из готовых макетов, а режим предпросмотра позволяет увидеть, как будет выглядеть отчет после печати.

Прежде чем переходить к отображению данных, нужно определить таблицы, в которых они будут храниться. Это позволяет сделать большая кнопка Manage, которая находится у правого края панели инструментов в режиме редактирования макетов. Выбрав пункт Manage Database, мы открываем диалоговое окно с тремя вкладками: Tables, Fields и Relationships. Те, кто сталкивался с базами данных, догадываются, что они делают. В первой происходит создание и удаление таблиц, вторая нужна для того, чтобы задать их структуру, а в третьей указываются связи между ними.

Настройка связей между таблицами
Настройка связей между таблицами

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

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

Вкладка Relationships нужна для того, чтобы определить внешние ключи (foreign keys), или, если пользоваться терминологией FileMaker Pro, «поля сочетаний» (match fileds). В таблице «Обращения» у нас два внешних ключа: поле «Заказчик» должно быть равно идентификационному номеру соответствующей записи в таблице «Заказчики», а поле «Исполнитель» — то же самое, но в таблице «Исполнители». Вместо равенства можно использовать и другие операторы сравнения, но для нашей задачи это не требуется.

Закрыв диалоговое окно Manage Database, мы обнаружим, что FileMaker Pro автоматически создал макет для каждой таблицы: по одной простой форме с полем ввода для каждого столбца. В принципе, их уже можно использовать: в режиме просмотра этими формами можно добавлять новые записи или просматривать существующие. Но лучше не останавливаться, а доработать их. Тем более это не так уж сложно.

Автоматически созданная форма
Автоматически созданная форма

Продолжение статьи доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все статьи на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи одну статью

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


Комментарии

Подпишитесь на ][, чтобы участвовать в обсуждении

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

Check Also

Скрытая сила пробела. Эксплуатируем критическую уязвимость в Apache Tomcat

В этой статье мы поговорим о баге в Apache Tomcat, популярнейшем веб-сервере для сайтов на…