Энциклопедия мобильной связи

Коммуникационные и сетевые программы filemaker. Filemaker: субд с человеческим лицом

Об этой СУБД как-то, как иногда кажется, в последнее время даже немного забыли, увлекшись Oracle, MS SQL Server и прочими гигантами индустрии. Что ж, рассказ о ней - отличный способ напомнить о существовании такого замечательного программного продукта.


Это что, ещё один Access?

Специфика СУБД FileMaker заключается в том, что она ориентирована не столько на программиста, сколько на конечного пользователя. Даже в описаниях своего продукта разработчики избегают использовать громоздкий термин DBMS (database management system), заменяя его на database application.

"Так что это? - можете спросить вы. - Получается, FileMaker - аналог Microsoft Access?". Так и хочется сказать: "Нет, ну что вы, это настоящая СУБД!". Но ведь и Access не игрушечная, а самая обычная настольная система управления базами данных. И FileMaker во многом похож, а во многом и не похож на неё. В общем, может, с моей стороны, это и будет подло, но я оставлю ответ на этот вопрос на ваше усмотрение. Ведь зачем тогда рассказывать о FileMaker, если можно просто написать что-то вроде: "Вот есть замечательная СУБД FileMaker, очень похожая на Access, скачивайте на здоровье и пользуйтесь в своё удовольствие!".

Перед тем, как приступать к непосредственному рассказу о возможностях этого программного продукта, хочу рассказать о том, где можно самостоятельно с ним ознакомиться. В этом поможет официальный сайт, расположенный по адресу www.filemaker.com . Обратите внимание, что для того, чтобы скачать пробную версию программы, вам потребуется регистрация.


Возможности FileMaker

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

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

Визуально можно редактировать не только сами данные, но и их структуру. Для этого нужно в меню "File" выбрать "Define", а уже в нём выбирать, какие именно элементы структуры базы данных мы хотим определять. Можно создавать таблицы и поля внутри этих таблиц, задавать с помощью удобных диаграмм соотношения между этими таблицами, создавать свои собственные функции на основе уже существующих...

Можно безо всяких особенных усилий импортировать записи из разных других баз данных (они могут быть в формате самого FileMaker"а, а также в виде текстовых файлов, DBF"ов, файлов Microsoft Excel или в раритетном Lotus 1-2-3). Аналогичным образом информацию из базы данных можно и экспортировать. Отдельно предусмотрена возможность экспорта данных в формат PDF - довольно необычное для СУБД решение, хотя, вероятно, не самое ненужное. Впрочем, вероятно, это удобно на Западе, где PDF - стандарт для документооборота, у нас же более востребован будет экспорт в Excel. Или даже лучше в "1C" - но такого в FileMaker, конечно, не встроено.

В FileMaker"е предусмотрено три режима работы в окне с самим данными. Называются эти три режима следующим образом: Browse, Find, Layout и Preview. Первый из них предназначен для непосредственной работы с данными в файле, то есть их редактирования, распечатки, сортировки и прочих нужных вещей. Второй режим, как легко можно догадаться, глядя на его незатейливое название, нужен для поиска данных, удовлетворяющих определённым критериям. После завершения поиска FileMaker автоматически возвращается в первый режим, так что найденные данные можно продолжать редактировать, удалять и издеваться над ними прочими доступными вашей фантазии способами. Режим под названием Layout позволяет определять компоновку рабочего окна редактирования данных в FileMaker"е или, проще говоря, менять его внешний вид. Также в этом режиме можно определить внешний вид отчётов с заданной информацией, а просмотреть их можно в последнем режиме - Preview. Как говорится в справке, этот режим особенно эффективен для составных отчётов с подведением итогов.


Скрипты в FileMaker"е

Работа с любой СУБД, пусть даже такой простой, как FileMaker, не может закончиться нажиманием кнопочек и простым "вбиванием" данных в базу. Рано или поздно потребуется обратиться к скриптам и программированию - и FileMaker предоставляет пользователю такую возможность.

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

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

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

При всём при том в FileMaker"е есть возможность отладки скриптов. Для того, чтобы запускать скрипты в режиме отладки, нужно в меню "Tools" поставить птичку на пункте "Debug Scripts". Возможности отладки достаточно стандартны: точки останова, выполнение процедуры с пошаговым выполнением команд внутри неё или без этого. Есть возможность просмотра результатов выполнения того или иного выражения в отдельном окне. В общем, отладка скриптов как отладка скриптов. Только сомневаюсь я, что тот средний пользователь, не знакомый с программированием, на которого ориентировались разработчики FileMaker"а, будет заниматься отладкой скриптов.

Впрочем, существование собственного скриптового языка в FileMaker"е вовсе не означает, что с данными нельзя работать посредством SQL-запросов. Очень даже можно, только, как говорится, осторожно. В скриптах FileMaker"а поддерживается команда Execute SQL, которая и занимается выполнением SQL-запросов. Кроме того, SQL можно использовать при работе с базами данных FileMaker"а через ODBC или JDBC.


Девятая версия

На момент написания статьи актуальной была девятая версия FileMaker"а. Давайте посмотрим, чем она отличается от версии 8.5 - ведь динамика развития программы может рассказать о ней очень многое.

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

Для пользователя в FileMaker Pro 9 интересной будет возможность подсветки выделения важных полей, которые оставлены пустыми или заполнены неверно (например, введено отрицательно количество товара). FileMaker Pro 9 Server позволяет быстро сгенерировать РНР-сайт автоматически из базы данных. Добавилась возможность группировки скриптов внутри каталогов.


Резюме

Что ж, вот такой вот он, этот FileMaker. Конечно, эту программу не назовёшь прямым конкурентом Oracle или PostgreSQL, но ведь каждый продукт хорош для своей ниши и оптимально работает именно в тех условиях, под которые создавался. Что касается вопроса о схожести FileMaker"а с Microsoft Access, то, думаю, если вы знакомы с Access, то теперь, прочитав про FileMaker, сможете сами сказать, насколько они похожи.

В любом случае, следует признать, что FileMaker удобен, интересен и востребован рынком. А это показатель хорошего программного продукта.

FileMaker Pro - это кроссплатформенная система управления базами данных (СУБД), разрабатываемая подразделением концерна «Apple, Inc.», компанией «FileMaker, Inc.». FileMaker Pro полноценно поддерживается операционными системами Windows XP, Windows Vista и Mac OS X. Во всем мире продукт FileMaker Pro популярен благодаря сочетанию двух важных качеств - простоты использования и мощности средств управления базами данных. Решения на базе FileMaker содержат минимум программного кода. Процесс разработки приложений в FileMaker Pro сводится в основном к взаимодействию с графическим интерфейсом программы. Например, для создания нового поля, в которое будет вводиться информация, вам необходимо осуществить лишь несколько кликов по стандартным кнопкам интерфейса FileMaker, затем перетащить поле в любое место страницы - данная операция занимает меньше минуты времени.

Инструмент FileMaker Pro объединяет в себе и средства разработки базы данных с интерфейсом, и средства пользования базой данных - клиентскую часть. Ограничения на выполнение пользователями определенных действий регулируются стандартными средствами ФайлМэйкера, поэтому часть пользователей может иметь доступ к средствам разработки, а часть - не иметь. Информационное решение, написанное с помощью СУБД FileMaker Pro версии 7 и выше, целиком сосредоточено в файле или наборе файлов формата fp7. Для того чтобы оно было доступно одновременно нескольким пользователям локальной сети или через интернет, применяется FileMaker Server. Таким образом, FileMaker-решения в основном базируются на общеизвестной клиент-серверной архитектуре.

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

FileMaker безупречен по части безопасности. Практически все, о чем нужно заботиться - назначать права пользователям и задавать пароли.

Многих неосведомленных людей столь очевидная простота отпугивает - они начинают сомневаться в возможностях ФайлМэйкера. Я, как человек, имеющий опыт разработки под Java и Oracle, PHP и MySQL, Delphi и Interbase, могу смело заверить: 99% доводов относительно несовершенства FileMaker - безосновательны. Однажды в 2004 году, еще до моего знакомства с ФайлМэйкером, на форуме портала sql.ru разгорелся довольно любопытный спор . Настоятельно советую всем одолеть хотя бы первые 5 страниц этой жаркой дискуссии. Резюме обсуждения таково: никто не отрицает превосходство решений на Oracle (или другой серьезной СУБД) перед решениями на FileMaker, но, как верно заметил один из участников спора, в большинстве случаев мы пытаемся палить из пушки по воробьям. То есть трудоемкие решения на базе серьезных СУБД реально необходимы лишь в единичных случаях, но никак не повсеместно.

Я убежден, что российскому малому и среднему бизнесу давно пора отказываться от дорогостоящих и совершенно негибких решений на базе 1С:Предприятие или Microsoft Access. Практически каждая компания приобретает решение, которое сложно адаптировать под собственные нужды - приходится нанимать в штат специалистов узкого профиля, которые способны копаться в мегабайтах программного кода. Редкий специалист обходится дешевле 50 000 рублей в месяц. При этом компания оказывается прикованной к платформе Windows со всеми вытекающими последствиями - вирусами, сбоями в работе ПО и не самым удачным пользовательским интерфейсом. Должно быть, вы заметили, что в компьютерном мире в последнее время происходит довольно интенсивный переход от PC и Windows к продукции компании Apple - компьютерам Macintosh с операционной системой Mac OS. Вы можете сравнить особенности операционных систем и убедиться в том, что работать на Mac гораздо приятнее и удобнее, чем на PC. А когда людям приятно и удобно работать, тогда и дела идут в гору. С ФайлМэйкером переход на Mac можно осуществлять постепенно и безболезненно, а большинство задач решать без затрат на услуги программиста.

Искренне желаю вам присмотреться к ФайлМэйкеру, как это сделали те, кто давно использует данную СУБД в решении своих информационных задач:

  • ABC News
  • Adobe Systems
  • Bank of America
  • Coca Cola Company
  • Compaq
  • Daimler-Chrysler
  • Dave Matthews Band
  • Federal Express
  • Hewlett-Packard
  • Honda - Digital
  • Lufthansa
  • Microsoft
  • Mitsubishi Imaging
  • MTV Network
  • National Geographic
  • New York Times
  • Nokia Mobile Phones America
  • Novell Corporation
  • Oracle Corporation
  • PalmSource - PalmOne
  • Paramount Pictures
  • Philips Digital Video Systems
  • Phillip Morris
  • Pixar Animation Studios
  • Qualcomm
  • Sega Gameworks
  • Sony Corporation
  • Symantec Corporation
  • Time Magazine
  • 20th Century Fox
  • United States Senate
  • USA Today
  • Volvo Action Services
  • Warner Brothers Studios

Из наших обзоров программ для создания прототипов вы уже могли убедиться, что конструировать собственные приложения не так уж и сложно. Более того, ради достижения подобной цели вовсе не обязательно вгрызаться в языки программирования. Об этом не устаёт напоминать масштабная платформа FileMaker , которая совершенствуется вот уже 14 поколений подряд. На её фундаменте пользователи реализуют свои идеи для iOS, OS X и Windows, при этом особо не погружаясь в матчасть. Самое главное, что результат на выходе — потрясающий!

Шефство над FileMaker держит сама Apple, поэтому качество проекта говорит само за себя. На подходе 15-я часть, но мы пока подробно изучим 14-тую, разобрав отличия FileMaker Pro и FileMaker Advanced, особенности Go, WebDirect и Server.

Пожалуй, ощутимее всего разница между FileMaker Pro и Advanced сказывается на Script Workspace. Script Workspace позволяет автоматизировать задачи в максимально короткие сроки. В нём поддерживается построчное редактирование и своеобразные предикативный ввод, когда вы печатаете символы, и параллельно всплывают подходящие варианты. Можно даже использовать аббревиатуры вроде GTRR (Go to Related Record) ради увеличения скорости. Сюда также встроен поиск, поддерживаются пустые строки, нумерация, отступы, подсветка синтаксиса и прочий инструментарий программиста.

Calculation Dialog box несёт ответственность за компоновку функций, подсчёт алгоритмов в готовом приложении. К слову, функции теперь подвергаются автоматическому завершению, поиск осуществляется быстрее.

FileMaker 14 располагает огромным дизайнерским инструментарием, с которым без проблем корректируется любой интерфейс. Теперь к нему добавился Button Bar, обеспечивающий создание групп кнопок, ведущих себя как отдельный объект. Группы гибко настраиваются, меняют ориентацию, подчиняются фокусам навигации.

Вместе с Button Bar были добавлены 140 профессионально проработанных иконок. Не хватит заявленного количества графических элементов — смело загружайте собственные.

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

Стало возможно вставлять тег «placeholder», чтобы на экране всплывали подсказки или инструкции, применяемые в конкретном поле.

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

Дизайнерская работа над ошибками затронула более тонкое отображение объектов на экране. К примеру, вы можете выбрать, показывать ли «х» или отметку «выбрано», когда в ход идут чекбоксы.

Последнее глобальное обновление получила вся платформа — Launch Center, который собирает все наработки в едином месте. Кроме того, каждому из них можно присвоить подходящую иконку. Поддерживаются 30 стандартных ярлыков и добавление собственных.

FileMaker Go — это специализированный клиент для iOS, который не пришёл в проект с 11-той версии. В некоторых местах ему достались те же самые обновлениях, что и выше, то есть Launch Center, иконки файлов. Помимо них, увеличилась в размере «tap targers», за счёт чего работа с основанными на FileMaker Go решениях стала проще. Само приложение наконец-то оптимизировали под большие экраны Айфонов и 64-хбитную архитектуру.

Отдельно стоит обратить внимание на то, что FileMaker Go 14 может соединяться только с базами данных, размещёнными на FileMaker Server 13 и 14, то есть 12-я и старше часть летит мимо. Следует провести глобальный апгрейд.

У нас остаются WebDirect и Server. Первый — это веб-ориентированный клиент, обрабатывающий запросы базы данных. Он умудряется поддерживать огромное количество соединений (вплоть до 100) и скрипты. Появилась перерисованная панель управления с более современным видом, а также вернулись FMP URLы.

Второй — сервер. Сервер есть сервер. Здесь можно заметить полномасштабную профилактику в области быстродействия и багфикса. Явные зрительные изменения искать тяжело:)

Если наш обзор по обновлениям не внушил доверия к FileMaker 14, советуем пробежать подборку шаблонов , взять понравившиеся за основу и попробовать воплотить в жизнь какую-нибудь идею. Скачать пробную версию можно по кнопке ниже.

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

В последнее время на рынке СУБД традиционно доминируют гиганты рынка, это, в первую очередь, Oracle Database, Microsoft SQL Server и т.д. Если рассмотреть рынок подобных открытых решений с его многообразием, то здесь, опять же, представлены СУБД прежде всего для профессиональных разработчиков – MySQL, PostgreSQL и т.д.

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

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

Если только на секунду задуматься и помечтать: ах, если бы подобные БД можно было создавать полностью собственными силами, если бы для этого не нужно было быть специалистом сразу в нескольких смежных технических областях, если бы программы было так же просто не только создавать с нуля, но и исправлять, расширять и дорабатывать… И если для крупного, и отчасти среднего бизнеса дорогостоящие специализированные решения на базе серьезных и дорогих СУБД еще как-то оправданы и экономически целесообразны, то для малого бизнеса, представителей коих большинство, или для домашних нужд и вовсе - использование Oracle или даже бесплатного MySQL, пожалуй, избыточно и даже более того – абсурдно.

Столь длинное введение в тему задумано лишь для одной цели: рынок СУБД для малых предприятий и домашнего использования чрезвычайно востребован и он практически никак не представлен на отечественном пространстве. Если вам нужно быстро разработать специализированную систему складского учета под конкретную специфику или просто личную систему планирования дел или финансов, построенную на какой-то очередной приглянувшейся вам новомодной концепции тайм-менеджмента, - где искать помощи в таком случае? Какие инструменты для этого оптимально использовать – уж не популярную ли MySQL в связке с каким-то визуальным фронтендом, написанным на не менее популярной Visual Studio? Какие быстрые и простые варианты разработки для такой ситуации могли бы предложить вы, подходящие любому нетехническому специалисту так же, как и бухгалтеру или студенту- первокурснику?

И сегодня у нас есть хорошие новости: наш обзор будет посвящен подробному рассмотрению СУБД именно подобного класса, чрезвычайно известную и популярную на Западе, но пока еще не очень распространенную в России – FileMaker. Поскольку стало уже типичным сравнивать FileMaker с его нишевыми аналогами – Microsoft Access и FoxPro - мы для приличия также повторим эту заезженную аналогию, но для полноты картины и справедливости ради сразу же приведем и их главные отличия, из-за которых это сравнение, по нашему мнению, весьма натянуто.

Еще один MS Access?

Очень выраженная специфика СУБД FileMaker заключается в том, что она ориентирована не столько на программиста, сколько на конечного пользователя, на непрофессионала в области баз данных. Даже в описаниях своего продукта разработчики упорно избегают использовать громоздкий термин DBMS (database management system), хотя он и приводится в спецификации продукта, всюду заменяя его на database application.

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

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

К многочисленным удачным деталям реализации FileMaker мы еще вернемся позже, здесь же хотелось бы поставить точку на этом стереотипном сравнении: по нашему мнению, FileMaker - система гораздо более доступная и дружественная обычному пользователю, нежели MS Access, при этом все ее возможности ни в коей мере не уступают MS Access, а во многом, и это мы покажем далее, существенно превосходят ее.

Что же касается FoxPro – это все-таки система для программистов, как ни крути. Конечно, при знакомстве с FileMaker вам не помешает наличие опыта программирования на “серьезных” языках – это позволит “врубиться” в систему и ее возможности буквально на ходу, максимум за сутки, сразу начав работать. Но, ставя задачу наоборот - быстро и сходу разобраться в FoxPro гуманитарию будет очень сложно, согласитесь, да и не нужно это делать вовсе! Как сегодня убедительно мы докажем – есть куда более простая, и прошу заметить при этом, гораздо более мощная система разработки в сравнении с MS Access и FoxPro – это СУБД FileMaker.

Определение и целевая ниша

FileMaker Pro – это кроссплатформенный десктопный конструктор табличных и иных информационных приложений, построенных на базе собственной реляционной базы данных. Вместе с собственно движком этой БД, как уже сказано выше, единым пакетом поставляется мощнейший визуальный конструктор, с развитым и интуитивно-понятным GUI-интерфейсом, позволяющий в визуальном режиме создавать любые приложения: с собственной логикой, внешним видом, формами и таблицами. Кроме хранения, оперирования и обработки пользовательских данных, эта среда предоставляет множество дополнительных функций и возможностей (о которых пойдет речь более подробно далее), которые во многом зависят от редакции этого продукта (смотрите вторую часть этой статьи). Короче говоря, если и существуют среды разработки RAD (Rapid application development), то это – своего рода “SuperRAD”, которая позволяет создавать полностью аналогичные приложения, но раз в 10 быстрее и проще!

Итак, дав очень сухое и отчасти казенное определение, подытожим для обывателя сулимой выгодой: освоив FileMaker, вы сможете легко и быстро создавать свои собственные проекты, основанные на базах данных, применение которых практически не ограничено. Вы сможете очень быстро, буквально “на коленке”, создать, например, большой каталог своей домашней библиотеки или фильмов, каталогизировать свою огромную музыкальную коллекцию, разработать собственную систему учета товаров на предприятии или учета расходных материалов и офисной техники, систему прохождения заказов в вашей фирме или системы персонализированной печати. Потратив буквально минуту, выставить свою БД в Интернет в виде автоматически сгенерированного php-сайта. И многое, многое другое...

Может кто-то возразит такому моему смелому сравнению FileMaker с настоящими RAD-системами, назвав его некорректным и апеллируя к качеству финального кода, который будет у аналогичного приложения, традиционно разработанного, например, в Visual Studio, как к несравненно более качественному и осмысленному. Но я, в ответ, считаю, что сегодня это не самый убедительный аргумент против “дескотопных фреймворков” (а FileMaker в некотором роде им и является), так как сегодня человеко-часы стоят намного дороже, чем железо, которое нужно единожды проапгрейдить для подобных решений, чтобы далее на нем “все летало”. Этим финальным замечанием я попытался заочно ответить на некоторые очевидные идеологические выпады в сторону FileMaker, которые имеют место быть. А теперь, покончив с ненужной риторикой, давайте перейдем непосредственно к рассмотрению его возможностей.

Основные возможности FileMaker

Это мультиплатформенный продукт – поддерживаются следующие платформы: Windows (XP, Vista, 7); MacOS X, iOS.
. Плагинная архитектура – для подключения есть множество сторонних плагинов, которые еще больше расширяют функциональность основной системы. . Многоязычная поддержка – система переведена на более чем 12 языков, в том числе и на русский.
. Возможность автоматически генерировать продвинутые и привлекательные графики, отчеты и гистограммы.
. Поддержка своего собственного языка разметки FDML для генерирования веб-страничек с возможностью динамических вставок из базы данных FileMaker.
. И уж если мы заговорили о сайтах, в серверной версии FileMaker есть возможность быстро сгенерировать РНР-сайт автоматически - из структуры и наполнения уже имеющейся базы данных.
. Возможность шифровки всех используемых таблиц и структур данных.
. Огромное количество форматов для импорта данных в БД: Excel, Lotus 1-2-3, txt, cvs, dbf и др.; а также обилие форматов для обратной операции – экспорта.
. Близкий к визуальному редактор скриптов, который позволяет очень просто разобраться в программировании (если оно вам вообще здесь понадобится).

Существует встроенный отладчик скриптов, который позволяет решать все сложные ситуации. Вообще хочу сразу высказать свое субъективное мнение, что скриптовый язык у FileMaker свой собственный, и, вероятно, будет неудобен именно опытным программистам, и скорее более подходит как раз начинающим и продвинутым пользователям (что можно рассматривать одновременно как и плюс, так и минус этой системы). . FileMaker поддерживает многопользовательскую работу с базой данных, в разумных пределах, конечно (не нужно рассчитывать на одновременный доступ к БД толпы из 400 человек). Но, в защиту внутреннего хранилища данных хочется сказать, что в последних версиях оно было значительно расширено и дополнено, и теперь может вполне свободно оперировать с достаточно большими объемами данных (опять же, в разумных пределах - в рамках малого и среднего бизнеса, оно никогда не станет прямым конкурентом в этом плане для Oracle или для PostgreSQL).

Внешнее взаимодействие

Часто при использовании подобных продуктов, первый вопрос, который встает ребром: “А как я смогу связать их с какими-то своими внешними решениями?”. Что ж, этот вопрос закономерный. И если внутренние возможности по быстрому проектированию и чрезвычайно удобному созданию приложений на FileMaker я не ставлю даже под сомнение (потому что это так и есть – просто попробуйте), то вопрос исследования FileMaker на предмет его возможностей по взаимодействию с другими внешними продуктами требует дополнительного освещения, в силу особой важности этого параметра при создании современных и гибких гетерогенных систем.

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

XML Data Source Import – импорт внешних данных в СУБД в формате XML;
. Export Records и Export Records script step – разновидности экспорта ваших данных в формате XML;
. Custom Web Publishing with XML – механизм отправки XML-данных в ответ на интернет-запрос оных из внешнего сервиса.

Кроме поддержки XML для обмена данными с внешними источниками, также доступна полная поддержка ODBC/JDBC, которая еще больше расширяет возможности FileMaker.

Ну и, наконец, самое интересное с точки зрения прикладного программиста – язык SQL.

Как я уже писал выше, FileMaker использует свои собственные квазивизуальные средства для создания выборок, но кроме этого, присутствует почти в полной мере поддержка возможностей и SQL, поэтому давайте максимально кратко перечислим основные моменты в этом вопросе:

External SQL Data Source – штатный инструмент для создания “живого” двустороннего коннекта между FileMaker и ведущими мировыми СУБД (Oracle, MS SQL Server, MySQL);

ODBC/JDBC – альтернативный способ подключения, если вам не требуется постоянного “живого” подключения к внешним источникам данных. У этого подхода есть как плюс, так и минус: плюс – это гораздо большая универсальность и широта доступных источников данных, фактически вам нужно просто найти и установить стандартный ODBC-драйвер для вашей БД в систему с FileMaker. Минус – немного меньшая скорость взаимодействия; . Execute SQL – доступность динамических SQL-запросов на уровне скриптового языка FileMaker через данную команду, что создает своего рода дополнительное измерение для успешного, и я бы даже сказал, изощренного применения SQL в рамках экосистемы FileMaker;

MySQL partnership – особенно хочется выделить поддержку в качестве внешнего источника данных популярный бесплатный сервер баз данных MySQL. Нужно отметить, что уровень интеграции с этим источником в режиме External SQL Data Source чрезвычайно качественен. Сам производитель FileMaker описывает множество удачных примеров крупных внедрений, где использование такого симбиоза этих двух СУБД был поставлен во главу угла всей информационной инфраструктуры. Официальное партнерство компаний FileMaker, Inc и MySQL AB еще более упрочняет эти связи, не только на техническом, но уже и на юридическом уровне поддержки.

Ну и в заключение в текущей теме “Внешнего взаимодействия” лишний раз стоит напомнить про встроенное smtp-решение, которое делает электронную почту перманентно интегрированной в общую систему, что опять же добавляет удобства в разработку, особенно для корпоративных целей, что наряду с гибким экспортом из XML-источников позволяет такому приложению постоянно оставаться “на связи”.

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

Продолжение следует.

Игорь Савчук

    Общие сведения о СУБД « FileMaker »

FileMaker разработана компанией с одноименным названием « FileMaker », которая в свою очередь является дочерней компанией всем известной фирмы Apple . На период выхода в свет данной статьи (август 2015 года) вышла в свет 14-я версия этой СУБД.

Рассмотрим основные особенности СУБД FileMaker с учетом имеющихся представлений о базах данных вообще.

Прежде всего необходимо отметить, что данная СУБД является мультисистемной, т.е. может быть установлена как на компьютерах с установленной Windows ( IBM PC ), так и на ПК с установленной Mac OS X (компьютеры Apple ).

Первой особенностью данной системы являются допустимые типы полей базы данных. Их, в отличие от других систем, очень немного:

Number – для данных числового формата

Text – для данных текстового формата

Date – для полей, содержащих дату

Time для полей, содержащих время

Timestamp — очень удобный тип поля, содержащий в себе штамп времени (дату и время)

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

Таким образом, пользователю не приходится долго размышлять над структурой базы в части определения типов полей. Если необходимо учитывать числовые данные, то независимо от их формата (целое, десятичное и т.п.) используется поле типа Number . Учет текстовых данных также происходит независимо от длины текста. Данный тип поля (Text ) поддерживает объем сообщения до 2 Гб.

Следует обратить внимание и на оставшиеся два типа поля:

Calculation – вычисляемое поле, позволяет создавать вычисляемую структуру базы данных на основе уже имеющихся полей.

Summary – суммирующее поле, вычисляет сумму учетных данных по столбцам (полям) базы данных.

Эти два вышеуказанных типа поля (Calculation и Summary ) очень удобны в применении при построении различного рода отчетов.

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

Второй особенностью, на которой хотелось бы остановиться – это разработка форм для отображения учетных данных.

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

Интерфейс разработчика базы в части проектирования макета данных включает четыре типа представления информации:

    Browse – просмотр информации на экране ПК

    Find – включение режима поиска информации

    Layout – включение режима проектирования формы

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

Соответственно, переключение между режимами производится нажатием одной кнопки, также оно доступно и программными средствами, на которых кратко остановимся ниже.

Третьей особенностью системы управления базами данных FileMaker , на которой хотелось бы остановиться, являются форматы выходных данных.

Выше уже отмечалось, что FileMaker – программа некритичная к установленной операционной системе. Поэтому и формат выходных данных предусматривает использование их на любой из этих систем. Т.е. один пользователь может занести данные с использованием операционной системы Windows , и эти же данные могут быть экспортированы и обработаны на компьютере с Mac OS X .

Вывод данных предусматривает несколько форматов. Из наиболее используемых и знакомых пользователям – это форматы *. pdf ( Adobe Acrobat Reader ) и *. xls ( Excel ). Данные, сохраненные в полях контейнерного типа, могут быть экспортированы в соответствующий файл (изображение, видеозапись, файл).

Макет документа PDF разрабатывается прямо в структуре базы данных, соответственно, доступен его предварительный просмотр.

И , наконец, четвертая особенность СУБД FileMaker .

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

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

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

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

2. Создание базы, первые шаги, особенности настройки доступа и разработки структуры.

2.1. Создание новой базы данных.

Создание новой базы данных возможно двумя основными способами.

— Для создания новой базы данных выбираем пункт меню File – New Database… ( в версии FileMaker 14 пункт меню назван File – New Solution…) Открывается форма, в которой указывается имя создаваемой базы данных и её расположение. Выбираем диск, вводим имя создаваемой базы данных и нажимаем на кнопку «Сохранить» . Автоматически в нашем файле создана таблица с именем Table .

— Второй способ создания базы – на основе шаблонов, поставляемых в комплекте программного обеспечения. Выбираем пункт File New From Starter Solution В открывшемся окне выбираем тип шаблона базы данных, на его основе создается новый файл базы. В зависимости от версии количество шаблонов может быть разным (от 15 до 30).

На этом первый шаг процедуры создания базы данных FileMaker завершена.

2. Создание структуры базы данных.

Для создания и описания структуры базы данных с системе предусмотрен пункт меню File Manage Database При выборе этого пункта открывается окно с тремя вкладками. Кратко остановимся на их описании.

А) Вкладка Tables (Таблицы). Эта вкладка содержит сведения о содержащихся в данной базе таблицах. Разработчик может производить следующие действия:

— создавать новую таблицу . Для этого в поле Table Name вводим имя таблицы и нажимаем кнопку Create . Другим способом таблица базы данных может быть создана при помощи импорта таблиц из внешних файлов. Для того используется меню File Import Records File FileMaker позволяет импортировать из файлов других баз FileMaker , файлов Excel , файлов с разделителями (типа *. csv или *. tab ).

— изменять название таблицы . Выделяем таблицу, в поле Table Name вводим новое название, нажимаем на кнопку Change

удалять таблицу . Выделив таблицу, нажимаем на кнопку Delete

— копировать таблицу . Выделяем таблицу, нажимаем кнопку Copy . При этом будет произведено копирование структуры таблицы в буфер обмена ПК. Если после этого нажать на кнопку Paste , то будет вставлена таблица с именем Table 2 (если исходная была Table ).

— импортировать таблицу . Для этого необходимо нажать на кнопку Import . В окне открывшемся окне выбрать файл внешней базы данных и таблицу в этом файле.

Б) Вкладка Fields (Поля). Данная вкладка отображает структуру полей выбранной таблицы текущей базы данных. На возможностях этой вкладки особо останавливаться не буду. Они аналогичны возможностям вкладки Tables . Это функции создания, изменения, копирования, вставки и удаления. Добавилась только функция Duplicate (Дублировать). Эта функция объединяет в себе функции копирования и вставки.

В) Вкладка Relationships . Эта вкладка отображает структуру всей базы данных в графическом формате. В нижней части данной вкладки расположено меню для управления структурой базы. Рассмотрим основные функции, доступные из этого интерфейса. Они разбиты на три категории:

Первая категория – Tables / Relationships :

Добавить таблицу – добавление таблицы в структуру базы

Установление новой связи – позволяет организовать новую связь между полями разных таблиц данных

Дублировать таблицу – позволяет создать копию выделенной таблицы данных. Следует отметить, что создаётся не физическая копия таблицы с данными, а логическая. При этом система запрашивает новое имя таблицы в структуре. Т.е. физически может быть одна таблица (Table ), а логически их может быть несколько (Table 1, Table 2 и т.д.). Такая структура очень удобна при построении различных отчетов и подсчета результатов по какому-либо параметру. Как отмечают сами разработчики системы, построение отчета – это построение определенных связей между образами таблиц данных.

Редактировать таблицу – позволяет изменить логическое название таблицы и источник данных для неё.

Удалить таблицу – производит логическое (не физическое) удаление таблицы из графического интерфейса.

выравнивание по горизонтали – включает функции выравнивания по центру, по левому и правому краю

выравнивание по вертикали – включает функции выравнивания по центру, по нижнему и верхнему краю

распределение – включает функции распределения по горизонтали и вертикали

изменение размера – приведение всех выделенных объектов к одному из шести параметров (самому маленькому по ширине, по высоте, по ширине и высоте, самому большому по ширине, по высоте, по ширине и высоте).

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

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

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

кнопки увеличения / уменьшения / приведения в норму – три кнопки управления масштабом отображения интерфейса.

— окно отображения масштаба (в процентах)

— кнопка отображения разбивки по страницам

— кнопка настройки параметров печати

Кнопки четвертой категории оставим без комментариев.

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

3. Настройка доступа к базе данных

Система управления базами данных FileMaker предоставляет достаточно широкий спектр настройки возможностей по разграничению доступа к данным.

Для настройки разграничения доступа к данным предназначено меню File Manage Security . При этом открывается окно с четырьмя вкладками. Кратко опишем их назначение.

Вкладка Accounts – предназначена для добавления и редактирования списка пользователей базы данных. На этой панели расположены кнопки New , Edit , Dublicate , Delete . Они соответственно предназначены для создания нового пользователя, редактирования параметров доступа выделенного пользователя, дублирования пользователя (со всеми параметрами доступа), удаления пользователя.

Вкладка Privilege Sets – предназначена для добавления и редактирования типов привилегий. По умолчанию в базе данных настроены три типа привилегий:

Full Access полный доступ

Data Entry Only – чтение, запись, удаление всех записей без возможностей по разработке структуры данных

Read Only Access – доступ к данным только для чтения.

Создание нового типа привилегий.

Также администратор базы данных может добавить свой тип привилегий. Для этого необходимо нажать на кнопку New . Откроется окно Edit Plivilege Set .

В поле Privilege Set Name указываем имя создаваемого типа привилегий. В группе полей с общим именем Data Access and Design производится настройка доступа к записям базы данных (поле Records ), видам (поле Layouts ), спискам значений (поле Value Lists ), скриптам (поле Scripts ). В каждом из этих полей возможна тонкая настройка доступа пользователей. Например, настройка доступа к отдельным полям таблицы базы данных, отдельным видам и т.д. Это позволяет ограничить доступ пользователей к данным, не нарушая работу системы.

Примечание: необходимо понимать, что в структуре СУБД FileMaker доступ к данным осуществляется через макеты ( Layouts ). Таким образом, данные из какой-либо таблицы можно прочитать (отредактировать) только через соответствующий макет .

Далее на форме редактирования прав доступа находится группа флажков под именем Extended Privileges (Расширенные привилегии). Они предназначены для организации доступа данной группы пользователей для работы через WEB -интерфейс, через ODBC -соединение, через сетевое соединение и т.п.

И, наконец, справа на форме находится группа флажков под именем Other Privileges (Другие привилегии). С их помощью разработчик может настроить доступ группы пользователей к печати (Allow printing ), экспорту данных (Allow exporting ), настройке расширенных прав доступа (Manage Extended Privileges ), режиму проверки вносимых данных, режиму отключения пользователей от базы, режиму смены пароля.



Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!