カテゴリー
Apple

【FileMaker Pro 14 Advanced】ExecuteSQL で複数フィールドの複数行データを取り出す具体的なスクリプト例

にて以前解説した複数フィールド、複数行のデータを取得する ExecuteSQL の方法の具体的なサンプルを紹介いたします。

思い出しながら書いておりますので、そのまま動かないかもしれませんので、ロジックの組み立て部分を参考にしていただければと存じます。

環境

  • Windows7 Professional 32bit
  • FileMaker Pro 14 Advanced

事前準備

以下のカスタム関数を定義しておきます♪

カテゴリー
Apple

【FileMaker】ボタンを押したときに強制的にフォーカスを外すスクリプト

経緯・目的

  • トリガーとして OnObjectExit イベントを設定していたとしても、ボタンを押した時はフォーカスアウト扱いとならず、設定していたスクリプトが実行されない。
  • したがって、ボタンを押した時に入力フォームから強制的にフォーカスアウトする方法が必要

ポイント

  • 検索モードに切り替え [] でフォーカスをが外れる。
  • ブラウズモードに切り替え [] でフォーカスを外すために検索モードに変更されていた画面が元のレイアウトに戻る。
  • これらのスクリプトを実行してはいけない場合の検証は行っていない。もともと検索モードの場合に実行するとどうなるか、不明
  • 画面から呼ばれるスクリプトの先頭でこれらを実行するのがベターと考える。
カテゴリー
Apple

【FileMaker】レイアウトの入力フィールド値をトリガーとスクリプトで変更する方法

入力フィールドに数字を入力し、フォーカスアウト(次の入力フォームに移るなど)したら数字の左側をゼロ埋めしたいのです!

悩みながらも共通パーツとして使いやすく作れました♪記録に残しておきますの♪

ポイント

  • Get (アクティブフィールド内容 ) で入力フォームの値を引数としてでなくスクリプトで直接取得
  • フィールドを名前で設定 [] で動的にフィールドを指定可能
  • フィールドを指定するには Get (アクティブフィールドテーブル名 ) & "::" & Get (アクティブフィールド名 )
カテゴリー
Apple

【FileMaker】【ExecuteSQL】タイプがタイムスタンプのフィールドの時分秒を無視して SQL 操作する方法

ポイント

  • FileMaker 独自のやり方というよりも、SQL で一般的に使える方法
  • タイムスタンプのフィールドを、日付タイプのフィールドに変換する
  • コード例: WHERE CAST("作成日時" AS DATE) = '2016/04/29'

FileMaker のタイムスタンプタイプと日付タイプについて

  • タイムスタンプ: yyyy/mm/dd hh:mm:dd 形式
  • 日付: yyyy/mm/dd 形式

ExecuteSQL 関数の SQL 例

カテゴリー
Apple

【FileMaker】スクリプトで挿入した新規レコードが追加されていない問題の原因と対処

直面した問題

  • スクリプトのループの中でレコードを何十行と挿入していた。
  • 最終行だけ追加されていない場合があった。
  • その行はもちろんレイアウトで表示することもできなかった。
  • まれに最終行が挿入され、表示されたこともあった。

ポイント

  • スクリプトでレコードの挿入・更新・削除するときは、その後に「レコード/検索条件確定」を明示的に実行すること
  • 「レコード/検索条件確定」はコミット
カテゴリー
Apple

【FileMaker 14 Pro Advanced】yyyy/mm/dd 文字列から月初、月末の日付を得るコード

FileMaker コード

# 変換対象の日付文字列
変数を設定 [$ymd; 値: "2016/04/15"]
# 今月初の年月日
変数を設定 [$first_of_this_month_ymd; 値: Date(Month(GetAsDate($ymd); 1; Year)GetAsDate($ymd)))]
# 今月末の年月日
変数を設定 [$end_of_this_month_ymd; 値: Date(Month(GetAsDate($ymd) + 1; 0; Year)GetAsDate($ymd)))]
# 先月末の年月日
変数を設定 [$first_of_this_month_ymd; 値: Date(Month(GetAsDate($ymd); 0; Year)GetAsDate($ymd)))]
カテゴリー
Apple

FileMaker Pro 14 Advanced 開発 Tips

開発環境

レイアウト

カテゴリー
Apple

Windows 7 で FileMaker に ODBC 接続設定をする手順

外部プログラムから FileMaker のテーブルデータを取得したい、テーブルに挿入したい更新したい削除したい。FileMaker はデータベース、つまりデータソースとして使いたい。

迷ったり混乱したりの末になんとか設定できましたので、そのやり方をノートしておきますの♪

環境

  • Windows 7 Professional 32 bit
  • FileMaker Pro Advanced 14

知識

カテゴリー
Apple

【FileMaker】初期データをインポートするときのポイントとスクリプト

環境

  • Windows7 Professional 32bit
  • FileMaker Pro 14 Advanced

状況

  • データベース用のファイルメーカー (以下、FM) ファイルがあり、システム用の FM ファイルが別にある、という構成
  • データベース用 FM へ別の FM からデータをインポートする。
  • データベース用 FM は日々アップデートされ、新しくなったデータベース用 FM がまるごと送られてくる。そのため再びデータをインポートし直す必要がある。