カレンダーの処理速度を上げるヒントを紹介します。
• 使用していない「Source No X」レイアウトを削除するか、レイアウト名を変更します。つまり、もしソースを1つしか使っていないとすれば、「Source No 2」レイアウトを削除するか、またはレイアウト名の「No」を「WAS」と置き換えて「Source WAS 2」というレイアウト名に変更します。
• 一度に表示するソースは、1つだけにします。どのようなものであっても、同時に多くのレコードを表示することはFileMaker Proに負荷をかけます。
• サーバ上でのスクリプトの実行(Perform Script on Server:PSOS)がどのように動くかを理解し、意義があるなら利用します。詳細はこちら:DayBackのPSOS
• イベントの概要(DBk_EventSummaryCalc)をたくさんの関連フィールドに割り当てると、動作が若干遅くなります。概要には、計算ではなく、通常のテキストフィールド(改行なし)を使ってみてください。また、このフィールドの内容が短いほど、処理は速くなります。「DBk_WebViewerSource」のフィールドに割り当てられたフィールドにも同じことが言えます。関連フィールドは便利ですが、速度は若干犠牲になります。
• 「Source No X」レイアウトに配置したフィールドの索引が作られているか確認しましょう。必ずしも速くなるとは限りませんが、有用な方法です。
• 起動時間を短縮するには、「Upon Opening」スクリプトを編集し、Splash画面の表示を無効にします。もしソリューションを他のマシン/ユーザーに移し替えないのであれば、一部のルーチンを無効にできますので「Upon Opening」スクリプトの動きが少し速くなります。「Upon Opening」スクリプトで無効にするステップはこのコメント以降の行です:
• Check FileMaker Version Write test -- is file editable? Check System Formats (test disabling this script and quitting/reopening FileMaker. If everything looks good, then remove this from Upon Opening.)
•
•
「月」表示で終日のイベントだけを表示したいケースもあります(「月」表示では多くのイベントを表示できるようになっているため、それに伴って動作が遅くなるおそれがあります)。「月」表示で終日のイベントだけを表示するように制限するのは簡単です。 「Event Find」スクリプトの編集ウインドウを開き、「Apply any user-specified filters to the found set」(ユーザ固有のフィルタを対象レコードに適用)というコメントを見つけます。 このコメントの直前に、以下の行を追加します。
• これで、終日のイベントだけが表示されるようになります。
• サーバがFileMakerクライアントと同じ物理ネットワーク上にない場合、不要なレイテンシーが生じ、通信が遅くなることがあります。FileMaker ServerにPingを打ってチェックしてみてください。どの程度の速度を許容できるかによりますが、50〜70ms以下なら問題ないといえるでしょう。これより遅い場合は、他のFileMaker Serverのホスティング業者に、これよりも速度が出るかどうかサーバへのPingをテストしてもらうように依頼するといいかもしれません。
• 「日」と「週」を「リスト」表示にするとある程度速くなります。
• 最後に、このカレンダーは処理することが多いとより一生懸命に頑張ろうとします。適切なレコードのみ表示させるようにフィルタリングするかあらかじめフィルタをかけておくことで、処理速度はとても向上します。詳細はこちら: フィルタ
カレンダーをロードするときに、「集計しています」と表示されます。
「『DBk_WebViewerEventData』フィールドを集計しています」と表示されるようであれば、いくつかの設定を変更したほうがよいでしょう。
• FileMaker Server でホストしていて、PSOSをONにしている(初期設定はON)場合、このダイアログが表示されるということは、サーバが返すイベントのペイロードが、PSOSで処理するには多すぎ、検索のリクエストがローカルで実行されているということです。これをスピードアップさせ、ペイロードを減らすためには、下記のいずれか、もしくは両方を行います。
• a) あらかじめフィルタを使ってカレンダーに表示するイベントの数を少なくする。
• b) それぞれのレコードのサイズを小さくする。
• FileMakerはレコードのサイズにとても敏感です。(レコードの幅とも呼ばれます)それぞれのレコードの「DBk_WebViewerSource」フィールドの値が、複数の段落のテキストを含むような場合には、遅くなる原因となり得るでしょう。テキストの文字量を減らす、計算フィールドから該当のフィールドを取り除く、Let関数を使って結果をトリミングするなどしてみてください。
• もしFileMaker Serverでホストしていない場合は、単純に、ペイロードが高過ぎるか、もしくは、遅いクライアントマシンがあるでしょう。上の段落で提案しているようにペイロードのサイズを減らすか、DayBackをFileMaker Serverでホストしてみてください。
原文:Speed|https://www.seedcode.com/pmwiki/index.php?n=DayBackForFileMaker.Speed
コメント
0件のコメント
サインインしてコメントを残してください。