2015年6月15日月曜日

FileMaker Pro+Goで行う在庫管理システムを作ってみる Part6

FileMaker Pro+Goで行う在庫管理システムを作ってみるの第6弾です。

以前の記事はこちら↓

FileMaker Pro+Goで行う在庫管理システムを作ってみる Part1

FileMaker Pro+Goで行う在庫管理システムを作ってみる Part2

part4で作成しましたレイアウトの「Scan」ボタンに設定するスクリプトはいたってシンプルです。

上の図のように1行だけなので、ボタン自体にスクリプトステップを割り当ててもいいのですが、今後その前後に何かの処理をさせたいということがあるかもしれないので、とりあえず1行のスクリプトを作成し、設定します。

このスクリプトを実行すると、カメラが立ち上がり、バーコードをとらえると自動で読み取り、設定したフィールド(ここでは「棚卸記録::kf_商品コード」)に入力されます。


スキャンすると上の図の「商品コード」のフィールドにバーコードの内容が挿入されます。

次に、日付と、在庫数を入力すればOKという流れです。

日付に関しては、先ほどのスクリプトにフィールド設定で「Get(日付)」を設定してもいいでしょうし、レコードが作成されたときに自動で、入力するようにオプションで計算値の入力を設定してもいいでしょう。

実在庫とデータベース上の在庫の差異調整スクリプト

棚卸が終わると、そのデータと商品マスター上のデータの差異を調べて、実在庫に合わせるように調整を行います。

下記がそのスクリプトです。



スクリプト内にある変数を設定「$現在庫数」の計算式は下記のようになっています。


また、「$実在庫数」は下記です。


スクリプトの流れとしては、棚卸の記録レイアウトで本日行った棚卸の記録を表示し、Loopで上から商品マスター上の在庫数を比較します。異なれば、「入出庫管理マスター」に移動して、差異を調整し、これを一番下のレコードまで繰り返します。

$実在庫数では、倉庫内に同じアイテムが別々の場所にある場合を想定していますので、複数の場所にあっても(棚卸記録テーブルに商品コードの重複したレコードがあっても)問題ありません。

非常に簡単ではありましたが、在庫を管理するだけという観点のソリューションになります。

4 件のコメント:

  1. 現在、インハウスで社内の在庫管理をファイルメーカーで作成しようと、お盆休みを利用して自宅で取り組んでいました。このサイトがたいへん参考になっております。
    Part6まで、無事にやってきましたが、ここで足踏みです。ここが肝だと思いますが、肝心のExecuteSQL関数のところが、タグの関係で文字化けして、解析できません。このスクリプトをテキストでダウンロードできるようにしていただけると助かります。よろしくお願いします。ちなみに私は昨年の秋から、会社から言われて、Basic Trainingに参加し、あとは参考書を買い込み、独学でがんばっております。

    返信削除
  2. いろいろ、試行錯誤して、スクリプトを入力することができました。私が最初に、エスケープなどの特殊記号をHTMLのダグによって、誤変換されていると勝手に思い込んだことがすべての迷走の始まりでした。それと私が以前はPCユーザーで、その後、Macユーザーになったことで、特殊な文字の入力に慣れていなかったことで、エスケープなどをキーボードから入力する方法を知らなかったことが原因でした。ちなみに今回、習得した方法は、以下のようです。
    Option + 7 ¶
    Option + g ©
    Option + ¥ \
    Option + ^ ≠
    ファイルメーカーで、スクリプトを書くために必須ですね。
    お世話になりました。

    返信削除
  3. コメントありがとうございます。
    この記事で作成しました、ファイルを下記にアップロードいたしました。
    よろしかったら、参考になさってください。
    http://raquel.jp/downloads/zaiko.zip

    返信削除
  4. ご無沙汰しました。在庫管理を利用して、備品の管理をはじめました。とても助かっています。
    使い始めて、今度はこれに出庫伝票で備品の貸出に使い出したいという要望がありました。とりあえず、伝票のテーブルを作り、入出庫マスターで、明細行をポータルで作ろうかと思っています。また、がんばってみます。

    返信削除