2014-06-30

インスタント Web/WebDirect対応在庫管理テンプレート『FMEasy在庫 IWP/WD R1.5』を本日リリース

 本日、『FMEasy在庫 IWP/WD R1.5』(フリー版)のダウンロードと販売を開始。


 ホントは昨年末にインスタントWeb(IWP)に対応の「FMEasy在庫 IWP R1.5」としてリリースする予定が、同時期に IWP の後継WebDirect(WD)を含む FileMaker Pro 13 がリリースされ、「タイミング、悪!ヽ(`Д´)ノ」、 と思いつつ、「WDにも対応させよう」と思い直し、艱難辛苦の末、今日を迎えることができました\( ̄▽ ̄;)/。


 以下、 本製品についての若干のご説明。


製品概要


  『FMEasy在庫 R1.0』 に検索・入力支援機能を付加し、インスタントWebとWebDirectに対応させたのが本製品です。


製品種類

  • フリー版(無料) ― データ入力無制限
  • 開発版(価格:¥54,000、税込) ― FileMaker Pro 12/13 Advancedにより開発可

 本製品リリース後も、在庫管理テンプレート『FMEasy在庫 R1.0』(フリー版/開発版 ¥26,250)は引き続きダウンロード/購入可。

開発方針


こんな感じで開発してみました。

  1. インスタントWeb(IWP)/WebDirect(WD)の両方に対応させる
  2. 入出庫・在庫の基本機能は『FMEasy在庫 R1.0』をそのまま踏襲
  3. FileMaker/IWP/WD間で、できるだけレイアウトを共有する(下記※参照)
  4. 検索・入力支援機能 ― 取引先または商品のレコードが千~1万件を超す場合、FileMaker標準の 関連フィールドによる値一覧は実用に耐えない(特にWeb環境下) ― ので、検索・入力支援機能を搭載する(後述)
  5. 検索・入力支援機能の流用性 ― 本製品をカスタマイズして売上/入金/仕入/支払/受注/発注等々の機能を付加する場合、取引先、得意先、仕入先、商品の入力が必要となるが、その時に検索・入力支援機能を簡単に流用できるように設計する
  6. 検索・入力支援機能は FileMaker/IWP/WD の3プラットフォームで利用できること
  7. WDの実行速度を落とさないように、レイアウトテーマは前版「FMEasy在庫 R1.0」の「レトロ」から「クラッシック」に変更 ― この為、本製品R1.5と前版R1.0の画面がかなり異なっている

※レイアウト共有で工数減?

 レイアウトを共有するとレイアウトだけでなくスクリプトも共有できる可能性が高まり、工数削減につながりそうだが、レイアウトを弄る度にFileMaker/IWP/WD、3つのプラットフォームでレイアウトのズレを気にしなければならなくなり、実際の工数減に繋がるかは微妙です。
 おおざっぱな方 ― 多少、オブジェクトが被ったりズレたりしても気にしない人はレイアウト共有し、細かいことが気になる人はレイアウトを分けた方が幸せかもしれないです。

 それともかく、本製品はIWPの入力更新系画面を除き、できるかぎり3プラットフォーム間でレイアウトを共有しています。

検索・入力支援機能


本製品のキモはなんと言っても検索・入力支援機能。
下図はWebDirect環境のChromeの画面。

[取引先の検索・入力支援機能]

※取引先画面で検索支援機能を使う
“検索支援”クリック検索支援画面が開く→取引先名を入力して“表示”表示された一覧から目的とする取引先を選択クリック元の取引先画面に戻り選択した取引先が表示される。

※出庫/入力画面で入力支援機能を使う
“選”クリック入力支援画面が開く得意先または仕入先名を入力して“表示”表示された一覧から目的とする得意先/仕入先を選択クリック元の出庫/入庫画面に戻り選択した得意先/仕入先が入力される

注:実行元の画面により、検索・入力支援画面に表示されるボタン、表記、機能が若干異なります。



[商品の検索・入力支援機能]

※商品画面で検索支援機能を使う
“検索支援”クリック検索支援画面が開く商品名を入力して“表示”表示された一覧から目的とする商品を選択クリック元の商品画面に戻り選択した商品が表示される

※出庫/入力画面で入力支援機能を使う
明細の“選”クリック入力支援画面が開く商品名を入力して“表示”表示された一覧から目的とする商品を選択クリック元の出庫/入庫画面に戻り選択した商品が入力される
  • 実行元の画面により、検索・入力支援画面に表示されるボタン、表記、機能が若干異なります。
  • 入力支援画面で[伝票単価][数量]を入力すると、その値が入出庫明細の単価と数量に入力されます。



Blog連動


 いくつかの問題もあります。 例えば、インスタントWeb(IWP)/WebDirect(WD)では満足な印刷ができない。これは FileMaker Serverの問題ですが、回避策がないこともないです。
 それは、ネットワーク上に印刷専用の FileMaker クライアント(FileMaker Robot)を常に起動しておき、IWP/WDクライアント(ブラウザ)から印刷リクエストがないか常に監視し、リクエストがあればFileMaker Robotから印刷を行うようにスクリプトを作成し、そのスクリプトを常に実行した状態にしておきます。

 別の問題として、IWPではダイアログボックス表示のスクリプトステップが使用できないため、レコード削除実行時に確認のダイアログが表示されずに即刻レコードが削除されてしまう、ということがある。

 また、 WDは各種ブラウザとの互換性が低いがFileMaker クライアントの再現性が高いのでインストラネットで、IWPは各種ブラウザとの互換性が高いので不特定多数対象のインターネットで使用したいが、WD/IWPの同時使用は可能か…等。 こうした問題・課題について、できるだけ本Blogで取り上げていきたいです。


サポート

前版インシデント2→今版5インシデント(365日間有効)に!

 ご質問については、Blog 記事として回答させて頂くこともあります →例1とか例2とか。


講習とか


 本製品をベースに在庫管理を学んでみたいという方はこんなのとか、IWPをやってみたいという方はこんなのとか、WDとはなんぞやという方はこれとか、あります。

 それでは足りない!、開発支援とかコンサルティングを!という方はこちら

 その他の在庫関連記事を読む
 その他の WebDirect 関連記事を読む

(土屋)

2014-06-24

『FMEasy在庫 IWP/WD R1.5』 のクライアント強制フィールドの使用


『FMEasy在庫 IWP/WD R1.5』のユーザの方へ

 『FMEasy在庫 IWP/WD R1.5』はFileMakerクライアント、インスタントWeb(IWP)、WebDirect(WD)の3つのプラットフォームで動作する在庫管理テンプレートですが、本製品のMain Menu画面には[クライアント強制]というフィールドがあり、クリックすると「0:FM、1:IWP、2:WebDirect」のいずれかの値を選択することができます。 


本製品は「0:FM」が選択されていればPC上のFileMakerクライアントとして、「1:IWP」ならインスタントWeb環境に接続されているブラウザとして、「2:WebDirect」であればWebDirect環境に接続されているブラウザとして、実際のプラットフォームとは関係なく、動作します。 

 たとえば、PC上の FileMaker Pro 13 を使用し、『FMEasy在庫 IWP/WD R1.5』にアクセスする場合、デフォルトでは上記フィールドの値は「0:FM」が選択されています。 この時、“取引先へ”をクリックすれば、FileMakerクラインアント用に用意された以下の画面が表示され、これが本来の正しい動作です。

では、 上記のMain Menu画面の[クライアント強制]を「1:IWP」に変更して“取引先へ”をクリックするとどうなるでしょうか? その場合、インスタントWeb(IWP)用に用意された下記の画面が表示されます。


つまり、実行環境はFileMaker Pro 13であるにも関わらず、インスタントWebにアクセスしているブラウザの動作をシミュレートできます。 これは、主としてIWPアプリの開発時、デバッグ環境が存在しないため、FileMaker Pro Advanced にブラウザを動作をシミュレートさせ、デバッガに利用するための仕組みです。 よって、開発時以外は、[クライアント強制]の値は変更しないようにしてください。

注:
  • 本機能は他のプラットフォームをある程度はシミュレートしますが、プラットフォーム間でサポートするスクリプトステップや機能が異なる為、完全にシミュレートするものではありません。
  • 開発時のFileMakerクライアント上での「1:IWP」指定(IWPブラウザのシミュレート)と「2:WebDirect」指定(WebDirectシミュレート)を前提としています。その他の指定はお勧めできません。
以上


【関連リンク】
FMEasy在庫のカスタマイズ関連記事リスト

2014-05-19

FileMaker IWP と SQL-Server 2000 によるソフトハウス用ライセンス販売管理システム

 ユーザに特定のブラウザを強制できない状況、不特定多数のユーザがアクセスする環境では WebDirect を使用できないため、IWP(インスタントWeb)が有用ですが、現状として WebDirect が限られたブラウザのみしかサポートしない状況で、IWP(またはその機能)の提供を打ち切っちゃう FileMaker ってなんなの……。

  さて、小社では自社ソフトウェアのユーザ管理用に Microsoft SQL-Server 2000(以下、Ms-sql)とASPをしたシステムを開発し長らく運用してきておりますが、1 年半ほど前にフロントエンド部を Active Server Page から FileMakerに 置き換えた、ということは以前、本Blogでご紹介いたしました。

 この前システムは10年以上ユーザ情報と製品サポートの記録用に運用してきましたが、昨年 5 月『売上猫くん Standard R5』をリリースしたのを機に一念発起し、ソフトウェアライセンスのWeb販売機能追加を含め、大幅に機能を拡張することにしました。


開発環境

MS SQL-Server 2000 (同左)
MS SQL-Server Management Studio Ver 9 (同左)
FileMaker Pro Server 12 Advanced (FileMaker Pro Server 11 Advanced)
FileMaker Pro 12 Advaned(FileMaker Pro 11 Advanced)
注:( )内は、前回開発時の環境

※なぜいまさらMs-sql 2000なのか?

な ぜ前世紀の遺物の Ms-sql 2000 を使い続けるのか?というと、FM が公式にはサポートしていないSQLデータソースを操作できるのか試してみたい、という好奇心からです。
 ちなみに、FM12 が公式にサポートしている Ms-sql は2005と2008のみ。 前回、Ms-sql 2000→2008 へのアップグレードは簡単にできることを確認していますので、問題が発生時したらアップグレードするつもりでしたが、現在まで問題なく運用できております。

注:FM13 が公式にサポートしている SQL データソースはこちらになりますが、例によって旧版 SQL データソースはいとも簡単にリストから外されているのであった……
 

FileMaker 13 でもはやサポートされなくなった IWP をいまさら使う理由は次のとおり。

  1. PHPに比べ非常に短期間で開発が可能
  2. 必要最低限の機能で満足できる(JavaScriptなどを使用したゴージャスなインタフェイスは要らない)
  3. ヘビーなトラフィックが発生しない
  4. 何かあればサーバを再起動できる程度の余裕がある
上記 1. が IWP 採用の最大のメリットで、今回の開発では30人日程でカットオーバーできました。

※なぜWebDirect(WD)ではないのか?

  1. ブラウザの互換性が低い(不特定多数がWebアクセスする環境では使えない)
  2. ハードウェア/ソフトウェアのコスト
WDは¥100万~数百万の投資が普通にできる企業がイントラネットで利用するってことで。


ライセンス販売管理システムの仕様

仕様は以下のとおり。

No AP 機能名 内容/仕様
1 FM カスタマ管理 カスタマ(顧客)管理、Webログイン用アカウント管理
2 FM ライセンス管理 ・複数ライセンス管理(同一カスタマが複数の製品を所有することを想定、メール/葉書等の重複送信を防ぐ)
・入金確認後、Webでカスタマが登録した情報を元に、ユーザ(ライセンス)情報の登録/更新を行う。同時に、製品情報(製品用パスワード)等を登録完了通知メールとして送信
3 FM メール送信 ユーザを検索し、対象ユーザにアップグレード等の情報を一括送信。
4 FM 送信文章管理 メールで送信する文章を作成。ここで登録した内容をEvaluateし、ユーザ/商品毎の変数を評価(例:本文中に表示する宛名やアカウント情報をユーザ毎に変更する)
5 FM 送信履歴管理 ユーザ毎にメール/葉書などの送信履歴を保存
6 FM 葉書 アドレスが無効または不明でメールが送信されなかったユーザに対し、葉書(表裏面)を印刷する
7 FM サポート管理 ・サポート期間、インシデント消費状況を管理
・サポート内容を記録
8 FM 商品管理 ・複数商品対応
・同一商品の複数種類対応(例えば、『売上猫くん Standard R5』には、シングルユーザ版、マルチユーザ版、開発版の3種類がある)
・シリアルNo(ライセンスNo)生成
9 Iwp ログイン カスタマ毎に登録してあるアカウント情報をもとに認証
10 Iwp ユーザ情報更新 ユーザ情報の登録/更新/チェック
11 Iwp アカウント情報更新 アカウント/パスワードの登録/更新/チェック
12 Iwp 商品選択・購入 ・新規購入とアップグレード購入の両方に対応
・アップグレードというソフトウェア特有の販売形態に関連した各種制御(所有ライセンス数に基づくアップグレード)
13 Iwp 確認メール 注文確定後、カスタマに対して確認メールを送信
注:AP列の「FM」はFileMaker Pro 12/13で、「Iwp」はWebブラウザ がIWPにアクセスして利用するの意。


主な画面

FM で本アプリを起動時に表示される初期メニュー。
 [ClientMode]で「1:IWP」を選択すると、それ以降はブラウザの動作をシミュレート、デバッグはFMで行う。
図1 FileMakerクライアントで表示されるMenu画面


 カスタマが Web で入力した情報を基に、カスタマ画面上の情報が更新・作成される。
 ライセンスの購入・アップグレード履歴は、「購入履歴」タブに表示される。
 住所/電話等の情報は変更されうるので、カスタマ側で最新の情報を、購入履歴では購入時点の情報(ピンク部分)を保持する。

図2 FileMaker クライアントで表示されるカスタマ画面 ― 購入履歴タブ


 「サポート履歴」タブでは行ったサポート内容を入力・記録する。尚、このタブを開くと、ライセンス付属のサポートの有効期限を表示したサポート状況ウインドウが表示される。


図3 FileMaker クライアントで表示されるカスタマ画面 ― サポート履歴タブ


 メールの送信文章を入力。[送信内容]はEvaluate()されるので、フィールド名や変数を指定可。

図4 FileMaker クライアントで表示される送信文入力画面


 今回の開発の肝はソフトウェアライセンスのショッピング機能。
 下図はそのまた肝の購入申込画面(FireFox使用時)。

 登録ユーザがブラウザを使用しログインすると本画面が表示され、カスタマ情報とともに所有する[現有ライセンス]が画面左下に、その右側にアップグレード可 能な商品情報が表示される。
 “カゴへ”をクリックすると、その商品が買い物カゴに入り、「買い物カゴ」タブが表示される。
 「新規購入」タブでは(アッ プグレードではない)購入可能な商品が表示される。必要に応じてアカウント情報を含む「お客様情報」欄の情報を更新し、商品を買い物カゴに入れて“確認 画面へ”をクリックすると、FMServerは入力情報をチェックしエラーがなければ確認画面を表示する。
 確認画面で“注文を確定する”をクリックする と、FMServerはカスタマ情報を更新するとともに、購入確認メールをユーザに対して送信する。
 なお、既存カスタマの場合、アカウント名/パスワードを 変更して“注文を確定する”と即座にデータベースに反映される。
 
図5 ブラウザに表示されるアップグレード・新規申込画面

 IWP と侮るなかれ。
 結構なモノが構築可能なのです。

以上

(土屋)

追記:
ショッピングモジュールに加え、 CRM(Customers Relationship Management)モジュールのユーザサポート機能を公開。詳しくはこちら


【IWP関連記事】

【IWP関連の製品・サービス】