FileMaker入門 シリーズAccessプログラマーが使ってみた 第2回
ではAccessプログラマーがFileMakerの謎に迫るシリーズ2回目
今回はAccessにある基本機能はFileMakerに存在するのか調べます。
目次
テーブル
もちろん、あります。
これ無いとDBじゃないし。
ただ、Accessのテーブル一覧の様な機能は有りません。
テーブル定義作っても、フォームを作成しないとデータを表示する事ができない。
しかし、フォーム作成と言っても空白フォームに項目をドラッグするだけ。
単票ビュー、データーシートビューを簡単作成できます。
表示の形式を表形式に切り替えると、Accessで言うデーターシートビューに。
いちいちフォームの設計が必要なの?、怒ってはいけません。
Accessでもフォーム設計を後で実施する筈だから、遅いか早いかの違いです。
フォームの無い参照テーブルは?コンボボックスで使いたいけど。
その使い方は、また後日。
1つのテーブルで1ファイルです。
エクセルの1シートがDBになったイメージですよ。
フィールドの型
- テキスト
2Gまで入力可能、メモ型ですね。 - 数字
最大800桁、何といっていいか、とにかく数字。 - 日付
範囲西暦1年~4000年。 - 時刻
範囲24時間、最小単位秒で記録。 - タイムスタンプ
日付型。 - オブジェクト
Accessでは重くなって敬遠しているオブジェクト型。
FileMakerだと使える。 - 計算
計算結果、数字。 - 集計
集計結果、数字。
曖昧な型ですね、細かいこと気にしないでも大丈夫、そんなDB。
詳しくは公式ページ参照。
クエリー
これまた、テーブルとセットです。
クエリーと言うより、高機能フィルターです。
もちろん、クエリー同様、作成した検索条件を保存できます。
フォーム
もちろんあります。
テーブルの項目参照。
レポート
こちらもテーブル画面のプレビュー機能がレポートです。
マクロ
マクロはAccess同様、単独で作成利用したり、ボタンに割り付けたりできます。
スクリプトと呼びます。
モジュール
残念ながら存在しません。
スクリプトを駆使して同様の事が実現可能。
IF文やLOOP処理も作成可能。
そこまで、選択してできるならコード書かせてよ、と思ったりも。
リンク
ODBCやJDBCで外部DBとリンク可能。
当然相手のフィールド型に依存する事になります。
詳しくは公式文書へ。
まとめ
ノンプログラミングで利用できる事を目指しているDBソフトです。
その考え方は素晴らしく、テーブルを基本に、画面、検索、印刷、制御が簡単に作成可能。
とは言え、複雑な事をしたくなると、スクリプトを沢山選択して行を増やす事になりそうです。
Accessのマクロは、行数が増えると見通しが悪くなり、修正困難、モジュールで作り直しなんて事になります。
私は、最初からVBAで書いた方が拡張しやすいからマクロは使いません。
FileMakerの場合はどうでしょうか、VBAに変わるものはありません。
この部分がちょっと心配、次回からはもっと深い部分を探っていきましょう。
以上
FileMaker入門 シリーズAccessプログラマーが使ってみた 第1回
FileMakerってご存知ですか?
私は、mac好きの人が使うデーターベースで、縁の薄いDBだなと思っていました。
中小企業の業務システムはWindowsに支配されていますからね。
ところが簡単にiPadと連携できるらしいと聞き、ちょっと興味。
タイミングよく、2015/12/18まで「ひとつ買って、ふたりで使おう!」キャンペーンやってるではないですか。
勢いでFileMaker Pro 14 Advanced を買っちゃいました。
そんな訳で、FileMakerを理解するシリーズ始めます。
尚、このシリーズはAccessを使ったことのある人が、初めてFileMakerを使う事を前提に書いていきます。(管理人の体験談です)
目次
セットアップ
まずはセットアップファイルをメーカーページからダウンロード。
Windows版とOS X(mac)版があります。
詳しくは下記
この記事では、Windows 8.1のPCにWindows64Bit版をセットアップして使います。
新規ソリューションの作成(テーブル)
ではDBの器を作成しましょう。
FileMakerを起動して、メニューバーの[ファイル][新規ソリューション]を選択。
または、起動時に表示される「起動センター」画面の[新規・・][新規ソリューション]をクリック。
表示された新規作成ダイアログにファイル名を入力します。
ファイルの種類はfmp12、Accessで言う所のaccdb(2007型式)やmdb(2003型式)みたいな物だと思われます。
ここで、勘違いしそうなのが、AccessのDBとは違い、テーブル1個毎にファイルを作成するって事です。(2015.12.10現在、そうじゃないかと推測中)
dbase,Pradox系と同じですね。ただし、フォーム等もテーブル内に格納されます。
複数テーブルどうなるの?
今のスキルでは謎の部分です。
テーブルの設計
ソリューション作って現れた画面がいきなりフォーム設計の画面です。
予想外の画面で、Accessプログラマーはフリーズする事でしょう。(私だけか?)
講習会を受講した結果、テーブルとフォーム設計はセットである。
Accessの様なテーブル一覧は無く、フォーム画面で単票フォーム、帳票フォームを設計しながらテーブル定義をできちゃうイメージです。
えっ!そんな事できたら、勝手にフィールド追加変更されて、訳わからんくなるぞ!
どうやらそれで正解、エクセルの使い方に似ています。
使いやすい様に列追加していいですよ。そんなイメージです。
RDBと思って使ってはいけない、エクセルをDBに変換してデーター共有できる。
エクセルとアクセスを埋めるソフトだと理解しました。
流石に、基幹業務のデータを溜めるDBには向きません。
エクセルで大量のデータを管理できないのと同じです。
ここはOracle、SQLServer、小規模ならAccessに貯めて、ユーザーに近いデータ共有はFileMakerを使うのがベストではないでしょうか。
フィールドピッカーが大事
テーブル設計で利用するのがフィールドピッカーです。
このDBアイコンで項目追加や他のテーブルとのリレーション設計ができます。
フィールドの型は以下の通り。
桁数は指定するところが無いので勝手に可変長だと思われます。
このあたりもエクセルっぽいですね。
日付けと時刻が別項目ってのもRDBとは違う考え方です。
きっと都合がいいのでしょう。
また、計算や集計ってタイプが謎、数字型なのか。
以上 今回はここまで。
Accessの代替と考えると、なんじゃこれ?って叫びたくなります。
しかし、便利なエクセルと思えば、排他制御やフォームも簡単に作れて、
便利ジャン、使えるよ。と勧めたくなります。