top of page
  • 執筆者の写真sago

ショートカットアプリを使ってFileMaker Proから写真を撮る

更新日:2022年3月24日

FileMaker Proへ撮った写真を登録するには

  1. 写真を撮る

  2. Macに何らかの方法で転送する(iPhoneならAirdropが楽)

  3. FileMaker Proのオブジェクトフィールドへ入れる

と、そこそこ手間がかかります。

※Windowsの場合は当社のFM WinCameraを検討してください(CM)

https://www.mirai-switch.com/fm-wincamera


この問題を少し解決するためにmacOSのショートカットアプリを試してみました。

ショートカットアプリは元々iPhoneやiPadで動作するものでしたが、それがmacOS Montereyから対応しました。

12.2までは、ちょっと出来がイマイチだったのですが、12.3からは少しマシになりました。仕様通りでしたらmacOS Montereyリリース時点でこの記事を書いていたのですが、ショートカットの命令のカメラが起動しなかったのです・・・。


完成図

完成図
完成図

「写真を撮る」ボタンが押されるとカメラが起動し

「写真を撮る」ボタンが押されるとカメラが起動

撮影するとFileMaker Proのオブジェクトフィールドに入ります。


作り方

どういう仕組みかと言うと、

  1. ショートカットアプリの特定のショートカットを起動

  2. 写真を撮る

  3. 写真をBase64変換する

  4. Base64変換したテキストをクリップボードに入れる

  5. ショートカットアプリからFileMaker Proのファイルのスクリプトを実行

  6. FileMaker Proのファイル側で貼り付け

  7. Base64テキストを変換して画像として表示

という手順になります。

3.でわざわざBase64変換せずに画像としてそのままクリップボードに入れれば良いのでは?と思うかもしれませんが、何故か上手くいかなかったのです。


1.ショートカットアプリの特定のショートカットを起動

ショートカットアプリの特定のショートカットを起動

と入力すれば「Macで写真」というショートカットが実行されます。

最後の「&」が意味不明ですが、何故か入れないとエラーが出るのです。

ショートカットを起動するURLスキームの説明は下記を参考にしてください。


MacでURLスキームを使用してショートカットを実行する

https://support.apple.com/ja-jp/guide/shortcuts-mac/apd624386f42/mac



2.写真を撮る

写真を撮る

右の「写真」と表示されている部分で「写真」と入れて「写真を撮る」を選択します。

特に設定は不要です。

「カメラプレビューを表示」のチェックを外すと動作しません。

写真の数を増やすと動作しません。


3.写真をBase64変換する

写真をBase64変換する

右の「写真」と表示されている部分で「base」と入れて「Base64エンコード」を選択します。

選択時に、「写真を撮る」の直後に入れると上記のようになります。しかし、一番上に挿入すると、「写真」の部分が「入力」と表示されています。順番を変えれば「写真」になるはずです。

「入力」と表示されている場合は「マジック変数」を選択すると、「写真を撮る」の直後に「写真」と表示されますので選択します。

この辺の操作が少し独特です。



4.Base64変換したテキストをクリップボードに入れる

Base64変換したテキストをクリップボードに入れる

右の「写真」と表示されている部分で「クリップボード」と入れて「クリップボードにコピー」を選択します。



5.ショートカットアプリからFileMaker Proのファイルのスクリプトを実行

ショートカットアプリからFileMaker Proのファイルのスクリプトを実行

右の「写真」と表示されている部分で「URLを開く」と入れて「URLを開く」を選択します。

  • ファイル名「Macで写真を撮る」

  • スクリプト名「カメラから貼り付け」

設定はFileMaker のURLスキームの話です。

開いているファイルのスクリプトを実行するので「fmp://$/」と書きます。

詳細は下記を参照して下さい。


URL を使用してファイルを開く

https://help.claris.com/ja/pro-help/content/opening-files-url.html


セキュリティの設定

だいたい動かないときはこの設定を忘れがちです。

「URLによるFileMakerスクリプトの実行を許可」にチェックを入れておきましょう。

セキュリティの設定


6.FileMaker Proのファイル側で貼り付け

クリップボードにあるBase64テキストをFileMakerのファイルに貼り付けます。貼り付けるフィールドはレイアウト上に配置する必要があります。



7.Base64テキストを変換して画像として表示

撮影した画像はPNG形式です。

ファイル名はPNGの拡張子にしておきましょう。

計算結果を「オブジェクト」にしておきましょう。

計算結果を「オブジェクト」にしておく

これで完成です。



その他

画像サイズが小さいのでハードウェアに依存するのかなと思い、iMac(M1)で実行しても変わりませんでした。今までの写真はMacBook Air(M1)。

iMac(M1)で撮影
iMac(M1)で撮影

iMacの方が広角レンズなので、そこのハードウェア的な差は出ましたが解像度は480×360でした。