FileMakerで持参薬
Accessで作ったものがすでにありますし、これをFileMakerで作ったところでどれだけ需要があるのかは分かりませんが、練習がてらちょっと頑張ってみようかなと。あくまでiOSでの利用前提で。
FileMaker持ってないとPCや他の端末とのデータの共有はできませんし、対応したプリンター準備しないと通常iOSだけでは印刷もできません。(なくても印刷できますが、色々設定が必要です。)
いっときますけど入力しやすいのはどれかって言えばPCですからね。でもある程度の「選択肢から選択する」となると、iPhoneやiPadって、とてもすばらしいデバイスなのは皆さんご存じの通りです。
持参薬のソフトって、検索時に数文字入れる以外は、あっちもこっちも選択するばかりなので、試しに作るにはちょうどいいのです。
準備するものは、最安構成でiPod touch¥21800、FileMaker Pro¥36000(or Advanced¥62000)合計¥57000〜と、「作るぞ!」という熱い思い・・・。
Accessのところにも書いてますけど、作れるようになるにはそれなりに時間がかかります。業者に頼んで作ってもらうと高いって言いますけど、自分で作ったとしても「ただ」では無いですからね。自分の時給はいくらだ?ってことです。そんな高給取りが、数ヶ月もかけて作成しないといけないわけですから。
と偉そうなこと書いてますけど、これ書いてるの、FileMaker触り出してまだ2週間の人なのであしからず。
で、まずはテーブルの作成なんですけど、Accessに合わせたいのでいきなりインポートです。
Accessから直接いけるのかどうか分かりませんが、Accessからtxtにエクスポートしてそれをインポートしてみました。
ここでちょっと戸惑ったのはAccessでいうところのテーブルとクエリが合体したようなFileMakerのテーブルと、Accessでいうフォームを作らなければテーブルに保存されたデータが見れないというところ。まあ慣れですかね。
ただテキストを吸い込むと、場合によってはテーブル構造が全てテキスト形になるので、必要に応じて修正が。
次にレイアウト(Accessでいうフォーム+レポート)ですが、まずは基本の医薬品の管理画面から。
フィールドピッカー(フィールドリストみたいなもの)だのインスペクタ(プロパティのようなもの)だの、なんだそれ?という言葉に悩みながら、なんとか上の画面みたいなものを作ってみました。
ここで一番手間取ったのが、またもチェックボックスです。
MySQLでもちょっと引っかかりましたが、まさか有るか無いかだけの表現にあんなに手間取るとは思いませんでした。
上の図でいうところの、採用、先発、ハイリスクの部分がそうなのですが、結局チェックボックスを諦めてこのようになりました。見た目きれいだからよかったと言えばよかったのですが。
あちこち調べて全然わからず、イライラしていたところ、ああそうだ、FileMakerに付いてたサンプル見てみようとおもいまして、
始めましょう・・・から、Starter Solutionにある「目録」っていうやつの「入庫、出庫」ボタンがそれかなと。
例はボタンバーというのを利用して、ボタンを押すことでテキストフィールドに”入庫”、”出庫”の文字がそれぞれ保存されるようなスクリプト(マクロ)を作成、さらにアクティブセグメントってところにIf文使って、ボタンにも入庫、出庫と名前をつけて・・・となっていたので、それを0と1を数値型のフィールドに保存するように修正しただけなのですが、Access使ってたらこれは面倒かな。まあこれも慣れでしょう。
※チェックボックスセットとかいうものがあるのを後で知りました。テキストがそのまま保存される仕組みのようです。
選択肢が多いときは重宝しそうです。
次がポータルです。Accessでいうサブフォームはどうやって作るのだ?と。
先の図だとGS1データ部分がそれです。これはネット検索すればすぐに出てきました。
リレーションで繋がないとポータルに表示できないそうな。
ここはAccessさわってた、らなんとなくこうだろうなという感じです。
左が親、右が子フィールドで、「他方のテーブル・・・」っていうのは連鎖削除のことだろうなと。一番上の「このリレーション・・・」というのにチェックを入れておかないとサブフォームじゃなくて、ポータル内にデータを追加できないみたいです。
さっそくこれをiPod touchに入れてみたのですが、いやいや、ちゃんと動くではないですか。
さらに
ここを設定すれば横に向けた時の配置や拡大される部分を調整できるみたい。
ただ、手元にあるのがiPod touchなので、さすがに上の画面をさわるのには無理があります。そこで
iPod touchやiPhone用の画面も作ってみました。と言っても2列あったものを1列にしただけなのですが、あの小さな画面でも十分作業できる大きさです。そしてFileMakerには今利用しているデバイスの大きさを取得する関数が準備されているので
これだけで使う端末によって開くレイアウトを切り替えられます。
ここまでできたら同じようにして
持参薬データの入力画面の作成です。ここからはAccessとFileMakerの違いが結構でてきます。
データ入力は当然選択肢からなのですが、Accessで言うマクロを実行するタイミングがちょっと違います。ダブルクリック時というものが無いです。タブレットで使うこと考えたら当たり前なんですけどね。指でダブルクリックとか使いにくいですし。
そこで、ダブルクリックでの代わりに「ボタン」を作成してあげる必要があるのですが、指でさわりますから、最低限この大きさってのがあります。
それからこれも前に書きましたが、できるだけドロップダウンリスト(コンボボックス)は避け、特に薬剤の選択のように、数百ある中から選ぶ場合は、別ウィンドウが開いて、検索条件入力して絞り込んでから選択という形にしたい。そこで使うのが
「モーダルウィンドウ」
なのですが、FileMakerはこれを作るのがかなりめんどく思えました。
Accessだと「ポップアップ」と「作業ウィンドウ固定」
だけで済むのですが、FileMakerは・・・ホント、公開してくれている方がいて助かりました。
ここで御礼。
※これも作り方次第です。
Access使い続けてきた私に言わせると、
スクリプト一時停止/続行 ってなによ?
メッセージボックスとif文使って処理を止めるってことはありますけど、画面開いて処理止めるって何?というか、他のウィンドウを開いた後、データだけ取得して処理を元のウィンドウに書くとかわけ分からん。って感じ。
参考にしたスクリプトがそうなっていただけなのですが、今思うと
「へー。こんな仕組み作るのね」
って感じ。
まあそこはそれぞれのソフトの作法ってものですから、それに従うだけですけど。
でもこれ、いいところもありまして、一度スクリプトを作ると色々使い回しができます。パーツを作るみたいな感じでしょうか。
なんとかポップアップから薬剤が選択できるようになりました。
FileMakerのいいところは、はじめからスペース区切りで複数条件選択に対応してるところ。
さてどうやってAnd検索作ろうかなと思っていたら、すでになっていました。
AccessはVBでフィルター条件いじくる方法があります。
同じ仕組みで、同効薬、先発部分を作成してあげると
開く時に同効薬でフィルターをかけ、さらに採用でソートがかかるように
こちらは先発後発でソートがかかるようにしてあげればそれらしくなります。
投与時刻部分も作成してあげれば、キーボードをさわることを極力減らせますので、タブレットでもかなり運用できるのではないでしょうか。
こちらもiPhoneサイズでも作ってみました。
試しているのがiPod touch第5世代なのですが、この程度であれば一昔前のApple A5プロセッサでも十分動きます。ここ最近のであればもっとキビキビ動くのでしょう。
あとはこれをネットワークで使えばデータの共有もできます。ファイル→共有設定をするだけです。
データ共有に関してはAccessよりも簡単かもしれません。ただ、同時接続数がどうのこうのありますが・・・。
とりあえずできあがりました。業務にも・・・いや、時代はペーパーレスだから・・・。
これでいいじゃん!iPad用に画面作ったんだからiPadで見ろよ!と言いたいとこなんですが一応印刷画面も必要なのか?
実はこれがちょっと。正直印刷画面の作成に関してはAccessの方が私個人としては・・・。
ということで続く・・・。FileMakerで印刷画面
※BluetoothのバーコードリーダーをiPod touchにつないだままにしておくと、スクリーンキーボードが出てこないので気を付けましょう。
「キーボードあるだろ?」ってiPodが思うのかな。
FileMakerのカメラがGS1に対応してないので、対応したバーコードリーダーつないだら出てきませんでした。
はじめ気が付かなくて、なんでスクリーンキーボードが表示しなくなったんだ?と思ったらそれでした。
※※対応したバーコードリーダーもあります。