LoginSignup
1

More than 1 year has passed since last update.

【FileMaker】在庫管理をQRコードで

Last updated at Posted at 2021-12-03

去年のQiita FileMaker Go AdventCalendarでは、「【FileMaker】事例紹介:趣味で作ったモノを現場で活かせ」というタイトルでiPadに入れたFileMaker Goでパターン(型紙)の在庫管理をしていることを紹介しました。

実は、あれから進化しております。

QRコードを使って、棚卸ができるようになりましたー!
8888888888

去年の記事から1年経ち、パターンの在庫もおそらく200は超えているのではないかと思う今日このごろ。

もう、このパターンは型落ちだから処分してもいいかな

また流行るかも?

まだ保存しておこう

久しぶりに作ってみる

あかん、これじゃ型落ち(そのそも型落ち)のダサダサおばさんやん

やっぱり型落ちは型落ちか、、、

というのを年がら年中繰り返しています。
パターン、そこそこ値段しますから。。。

実装したのは去年の記事を書いてからすぐな感じです。
年末の最終発送に間に合うようにバーコードリーダーを買い、年末年始のお楽しみで実装しました。

動き

こんな感じで動いております。
どうでしょう?
在庫が確認できたら、OKということで在庫チェックマークが緑色になります。

なかなか良いです。

実装

では、どんな感じでQRコードを読み込んで在庫チェックをしているか、みていきましょう。

リレーションシップグラフ

読み込んだQRコードから、製品とサイズを特定して在庫をチェックするので、リレーションシップを新たに追加しました。
スクリーンショット 2021-12-03 19.49.54.png

「目録取引barcodeg」TOは、QRコードを読み込むTOです。
右側の「カードウインドウへの表示のみ」は、読み込んだQRコードの商品名とサイズを表示するためです。

レイアウトでいうと、ここです。
スクリーンショット 2021-12-03 19.48.38.png

レイアウト上のスクリプト

レイアウトに配置したボタンがどう動くかもみていきましょう。

在庫チェックするとき

在庫チェックボタンをタップすると、先程のリレーションシップグラフで構築したTOのレイアウトを表示します。
IMG_1350.PNG

読み取ったQRコードの内容をフィールドに落としたいので、カーソルが読み取りフィールドに入るようにします。
IMG_1349.PNG

このボタンのスクリプトです。
スクリーンショット 2021-12-03 19.47.50.png
単純にカードウインドウを出していますが、OnLayoutEnterスクリプトトリガで初期化をしています。

スクリーンショット 2021-12-03 19.50.51.png
フィールドへ移動」がキーポイントです。

これで読み取りの準備ができました。

次は、読み取った後の実装です。

QRコード読み取り後

QRコードを読み取ったらチェックして欲しいので、QRコードデータが入る在庫チェックbarcode::主キーgにonObjectValidateスクリプトトリガでチェックを発火します。
スクリーンショット 2021-12-03 19.51.45.png
在庫状況登録は、別データにしてパターン情報と在庫チェックデータを分けて管理します。
リレーションシップグラフでいうと、↓の赤枠です。
スクリーンショット 2021-12-03 21.29.16.png

在庫チェックテーブルに在庫状況を登録するレイアウトは、作業用で十分なので単純にQRコードの読み取りデータ(在庫チェックbarcode::主キーg)をもとに在庫有りフラグをセットするだけです。
スクリーンショット 2021-12-03 21.29.53.png

基本はこれで十分です。

在庫チェックステータスを表示する

各パターンのサイズごとの在庫チェックで、チェックOKとなったものは、緑色のマークを出すことにしました。
チェックがされていない、在庫がない場合は、赤丸表示です。
マークは一つに見えますが、赤丸と緑丸が綺麗に重なって、表示・非表示で切り替わるようになってます。
スクリーンショット 2021-12-03 19.54.46.png

赤表示の場合は条件が逆になります。
スクリーンショット 2021-12-03 19.55.15.png

一覧の方では、一つのパターンの全サイズをチェックできたらチェックマークを出すようにしました。
スクリーンショット 2021-12-03 21.43.05.png

全サイズをチェックし終わったら、各パターンの最終在庫確認終了をタップし、最終在庫確認日をセットします。
スクリーンショット 2021-12-03 19.56.52.png
この最終在庫確認日がセットされているかどうかで、リストのチェックを見える化します。
スクリーンショット 2021-12-03 19.54.12.png

少ないコードで

今回のアプリは、前回の記事にある通り、Claris FileMakerの目録テンプレートをもとにカスタマイズしています。
表示を切り替えるレイアウトの設定はたくさんありましたが、スクリプト自体はそんなに多くは書いていませんし、書いても3桁行にならないくらいのコード量です。
今回実装している内容は、FileMakerのレイアウト実装の基礎に当たる部分がほとんど、というかほぼ全部ですので、難しいスクリプトでコントロールせずに、レイアウトの設定でできることはそちらへ任せ、スクリプトでしか実現できないものをスクリプトにする、ということで時短開発していきましょうね。
基礎、大事ですね。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1