Skip to content

ニンジャカルを使って日付範囲での検索を仕込む

ニンジャカルを使って日付の範囲の検索を実行することはできますか?

はい、できます。ニンジャカルは、こういったFileMakerでの日付の操作を直感的に行えるように工夫された、組み込みしやすい部品のテンプレートです。

日付の範囲の検索は、FileMakerでは「2010/7/2…2010/7/5」といった条件文を記述しますが、これをユーザが入力する替わりにニンジャカルで簡単に指定できます。

日付範囲を指定する操作

まず選択範囲の先頭の日付をクリックし、次にShiftキーを押しながら選択範囲の最後の日付をクリックします。するとこのように選択された範囲が反転します。

FileMakerテンプレート・ニンジャカル日付選択・操作

ニンジャカル日付選択・操作

裏では何が起きている?

このアクションにより選択した複数の日付は、グローバル変数の$$__NinjaCalSelectedListに改行区切りで入ります。同時に$$__NinjaCalSelectedRange変数には、日付の範囲を検索するための文字列に整形されて入っています。この値を検索条件としてそのまま使用して検索スクリプトを作るだけです(これらのグローバル変数には「$$」の後に半角のアンダースコアが2つあることに注意してください)。
日付を範囲選択した状態でデータビューアで変数の値を見てみると裏で何が起きているか解ります。
注意:データビューアは、FileMaker Pro Advancedにある機能です。FileMaker Proで操作されている方は、仕組みをイメージしてください。組み込みする際には特にデータビューアが無くても問題ありません。

FileMakerテンプレート・ニンジャカル日付選択・変数の内容

ニンジャカル日付選択・変数の内容

検索実行するスクリプトを作る

検索を実行するスクリプトには、次のようなステップを組み込みます。

  • 検索したい日付を持つテーブルのレイアウトに移動する
  • 検索モードに切り替える
  • 「フィールド設定」スクリプトステップを使って$$__NinjaCalSelectedRangeを検索条件に設定する
  • 以下のような文字列が検索条件として挿入されることになります。

    2010/7/2...2010/7/5

    最後に、検索実行のスクリプトステップを入れると、スクリプトは完了です。
    画面の遷移としては、ブラウズモードでニンジャカルを使用して日付を選択してから、このスクリプトが実行される(検索モードに切り替える)ようにしてください。

    YYYY/MM/DD 以外の日付書式を使う場合の注意

    「YYYY/MM/DD」以外の日付書式を使用する場合は、注意が必要です。サンプルファイルで入力と結果をお試しいただき、スクリプトの引数に利用しているテキストフィールドを日付フィールドに変更し、スクリプトも変更することをご検討ください。また、ニンジャカルをご自分のファイルに統合する際は、ファイルの日付の設定を使用してシステムの書式で検索文字列を設定します。

    あとがき

    いかがでしたでしょうか。ニンジャカルを使うと少しの組み込み作業だけで、あなたのデータベースがさらにクールで使いやすくなるでしょう。ニンジャカルは、この他アイディア次第で日付に関するレイアウトのあらゆるところで便利に使える強い味方です。

    Posted at 2011年1月4日 16:48

    Spread The Love, Share Our Article

    Related Posts

    Comments

    There are no comments on this entry.

    Trackbacks

    There are no trackbacks on this entry.