この記事ではFileMaker Pro のレイアウトパートについて解説します。
レイアウトパートとは、上部ナビゲーションやボディ、小計パート等のレイアウトを横に区切っている線のことです。それぞれを上手く活用することで使いやすい画面や複雑な帳票を作ることが出来ます。
FileMakerパートの種類
FileMaker Pro のパートを下記表にまとめました。赤い線はそれぞれがセットとなっています。
上部ナビゲーション/下部ナビゲーション
このパートは印刷されない。ウインドウを拡大縮小した時に影響を受けない。という特性を持っています。
ここに印刷ボタンやPDF作成ボタンとか置いておくと印刷するレイアウトに被らず配置することが出来ます。
FileMaker Goだとボタン配置するパートとして使います。その名の通りナビゲーションのためのパートです。
ヘッダ/フッタ
画面上部や画面下部に固定されるパートです。
印刷時には常に印刷物の上部や下部に表示されます。
ExcelやWordの印刷設定で出てくる設定を同じです。
タイトルヘッダ/タイトルフッタ
ヘッダ/フッタの説明では画面上部や画面下部に表示されると書きましたが、このパートはその例外になります。ヘッダとタイトルヘッダの違いをよく確認してください。このタイトルヘッダパートは印刷時の1ページ目にのみ表示されます。ヘッダはタイトルヘッダが設定されていない場合は全てのページに表示されます。
印刷時にタイトルページを付けたい場合に使えます。例えば見積書が複数ページになる時に最初のページに概要を印刷したい場合に使います。
レイアウトの設定時にヘッダ/フッタとタイトルヘッダ/タイトルフッタを同時に設定するとややこしくなるので、下図を見て動きを整理してください。
前部総計/後部総計
最初の行や最後の行に出現させることができます。
よく使う方法は、合計をフッタに配置するとボディとの間に空白が出来ますが、後部総計に合計を配置するとボディの直下に出現させることが出来ます。
小計ソート対象(小計パート)
パートの中では最も使いこなすのが難しいかもしれません。表示させるためにはパートに設定したフィールドでソートしておく必要があります。
小計パートが表示されないと思ったらソートの設定を確認してください。
ボディ
1レコードの単位と同じになります。リスト形式とフォーム形式でボディの高さの設定が変わります。
リスト形式:1画面に複数のレコードが表示、一般的にはボディの高さは低め
フォーム形式:1画面に1レコードのみ表示、一般的にはボディの高さは画面いっぱい
パートの追加
レイアウトモードでメニューの[挿入]から[パート...]を選びます。
パートの定義ダイアログが出てくるので、挿入するパートを選びます。
上部ナビゲーションボディは既に配置されているので、灰色になっています。
ヘッダを選択して、OKを押します。
上部ナビゲーションの下にヘッダが挿入されました。
この様に適切な位置にパートが挿入されます。
パートの配置で[小計ソート対象]パートは選択した後にボディの上か下かどちらに表示するか選択する必要があります。
OKボタンを押すと「上に印刷」「下に印刷」というダイアログが出てきます。
「下に印刷」を選ぶと・・・ボディの下に表示
「上に印刷」を選ぶと・・・ボディの上に表示
パートを作成する基本的な方法は以上となります。
他にも
レイアウトモードのヘッダのアイコンからドラッグして作る方法
パートをダブルクリックして別のパートに変更する
といった方法があります。
パートラベルの表記位置の変更
レイアウトモードでパートの高さが狭くて何のパートか解らない場合、特に小計パートの条件を確認する時に使う操作が、パートラベルの切り替えです。
パートラベルをMacならcommandキー、Windowsならctrlキーを押しながらクリックすると、表示を変更することができます。
パート境界の移動方法
パートが混み合ってくると、必要になるテクニックです。
1つ目ははそのまま移動させた場合です。タイトルヘッダパートが大きくなりました。
2つ目ははmacOSの場合はoptionキー、Windowsならaltキーを押しながらパートを移動させると、パートの位置だけ移動させることが出来ます。これは、覚えておくと便利です。
パートを使ったテクニック
下記テクニックを紹介します。
20行毎に改ページする方法
小計パートの出現毎に改ページしてページ番号を1ページ目から付ける
小計パートのみの集計
横軸に日付がある集計レポート
動的に横軸に伸びる集計レポート
20行毎に改ページする方法
パートの「任意の回出現後に改ページ」の設定は例えば、指定した行数で帳票を作りたい場合に役立ちます。
名簿やチェックリスト等を出力した場合はキリの良い数字で改ページされていると手動で集計しやすいです。
また、レイアウトの調整で20行入るようにしても、異なるプリンタで印字した場合に印字範囲の違いで21行表示されてしまうという問題を避けれます。
小計パートの出現毎に改ページしてページ番号を1ページ目から付ける
日付、地域、担当者、売上額のデータを地域ごとに集計しています。
地域が変わると改ページしています。下図の3ページ目には空白があります。次のページから地域が京都から大阪へ変わるためです。その際にページも1から再開始しています。赤い吹き出しの”ページ1”の赤枠内のページ番号が1となっています。
この設定にするには下図の様に、小計パートの前部と後部それぞれに設定が必要です。
小計パート(前部):改ページを担当
小計パート(後部):ページ番号のリセットを担当
となっているので、もしレイアウト的に後部の小計が不要な場合は小計パート(後部)を1ptにすれば良いでしょう。前部であっても同じです。
小計パートのみの集計
地域毎に集計できることは今までの例で理解できたかと思います。
ボディを消すことで地域ごとの集計のみを表示することも可能です。ボディパートを選択してDeleteキーを押せば、消すことが出来ます。
横軸に日付がある集計レポート
地域毎に集計する方法は上記で解説したとおりです。更に横軸に日付が伸びる集計を作成します。
この様に横軸に伸びる集計はFileMakerが苦手とする集計です。動的に横に伸びる仕組みを考える必要があるからです。今回は1月分ですので最大31項目しかありません。その分の繰り返しフィールドを用意しましょう。FileMakerの本や動画を見た方だと、「繰り返しフィールドは使わないほうが良い」と聞いたことがあるかもしれませんが、データを保存するのではなく、データの見せるためには使っても問題ありません。
前提として、データを集計したい月に検索して絞り込んでおきます。
そのデータを下図のように日毎にバラバラにしてしまいます。データの日付がヘッダの日付と一致した場所に表示している事がわかると思います。
※10月10日のデータは10の場所に売上が表示されています。
ヘッダの1~31の値は実は、10月の日付が日付タイプとして入っています。
その値と下図の一番左の日付と一致した場合、その場所に表示しています。
売上額[1]は繰り返しフィールド内で非繰り返しフィールドを扱う場合に必要です。Extend関数でも構いません。
上記のボディを削除して小計パートのみにしたものが下図となります。
繰り返しフィールドは集計フィールドによって個別に集計することが可能です。
この様に地域毎の日付毎の集計を行うことが出来ました。
中の計算式を確認します。
まず
日付:2024/01/03
売上額:3500
地域:京都
というデータがあったとします。
その場合、
cヘッダ日付:2024/01/01,2024/01/02,2024/01/03.....
というデータを計算タイプの繰り返しフィールドで作成します。
日付は2024/01/03なので、cヘッダ日付の3つ目の日付と一致します。
ですので、
c売上額_日付毎用集計:3つ目に3500と表示
となります。
別のレコードに
日付:2024/01/03
売上額:1500
地域:京都
とあった場合は、京都の2024/01/03に5000(3500+1500)と表示されます。
動的に横軸に伸びる集計レポート
横軸に日付の場合は、最大値が31と決まっていました。
次は横軸に担当者を設定します。
この場合、横軸の最大項目数は場合によるので担当者は10人とします。担当者の入れ替わりは激しいという前提にします。その場合、担当者決め打ちにすると月によっては担当者の売上額が存在しない場合が出てくるかもしれません。それ対応するために動的に担当者を配置する仕組みを解説します。
まず、前項の日付で行ったようにヘッダに担当者を配置します。一致した値だけを繰り返しフィールドでバラす工程です。
問題は、どうやって動的に担当者をヘッダの繰り返しフィールドに配置するかですが、集計の一覧を使用します。
集計の一覧で対象レコードの担当者を改行区切りで取得します。
そのままでは重複しているので、UniqueValues関数を使って重複を取り除きます。改行区切りの担当者一覧が出来ましたので、GetValue関数を使って繰り返し位置毎に表示させているわけです。
ただ、動作的にはちょっと重いです。
まとめ
いかがだったでしょうか。
この記事を読むだけだと理解しにくい部分があると思います。特に小計パートはFileMakerの勉強の一つの壁かなと思います。なるべく手を動かして動作を確認し、理解してください。
記事内のサンプルファイルは下記からダウンロード出来ます。
Comentarios