イベントに色を付けるにはどのようにしますか?
イベントは、選択したフィールドの内容に基づいて色が付けられます。このフィールドのことを、ドキュメントとサンプルファイルではイベントの「ステータス」を呼びますが、どのフィールドを使ってもかまいません。また、インターフェイスをローカライズして「部署」「カテゴリー」「状況」などのように別の言葉に変えてもかまいません。
この色分けは、イベントに関する一時的な情報を表すために使用することを推奨します(確認状況など)。どこに関するイベントか、誰のイベントかなど、イベントに関してもっと確定的な事実を扱う場合は、リソースを使います。
バージョン 9.71 にて、カレンダーのソースごとに、デフォルトの色を設定することができるようになりました。これが設定されたソースでは、イベントはステータスによって色が上書きされるまではこのデフォルトの色が表示されます。:ステータスごとの色については、このあとを見てください。
詳細
色分けの設定は、カレンダーを統合・構築する時に自分のイベントのテーブルに追加した「DBk_WebViewerSource」フィールドから始めます。構築の際に「status」に割り当てたフィールドを、イベントを色分けする際にDayBackが使用します。また、「Source No X 」レイアウト(「Source No 1」「Source No 2」など)に「color」のフィールドがあります。このレイアウトには「Colors」タブがあり、このタブで色分けに使用したいフィールドを指定できます。これは、「DBk_WebViewerSource」で「status」に割り当てたのと同じフィールドにしますす。
注意:イベントのテーブルにも色のフィールドがあるため、「Event List」や「Event Details」レイアウト上でも色を表示できます。この計算フィールド(SampleEvents::DBk_ColorCalc)は「Let()」の記述で始まっていて、色分けに使用するフィールドを特定できます。
次に、カレンダーの「フィルタ」タブを見ると、カレンダーの「ステータス」の一覧があります。これは、ステータスに割り当てたフィールドに入っている値の一覧です。このフィールドの値一覧のようなものと考えてください。
実はこれは、DayBackの「CalendarColors」テーブルにある値一覧です。このステータスのフィルタのひとつひとつが色になります。カレンダーの「フィルタ」タブでステータスのフィルタを追加したり削除したりすると、この「CalendarColors」テーブルのレコードが変更されます。自分のFileMakerのレイアウトでステータスとして使用する値一覧は、このテーブルのレコードに基づくものにします。このようにして、自分のレイアウトとカレンダーで、イベントにステータスを割り当てられます。
ステータスの色を変更する
ステータスの色を作成したり変更したりする際のヒントをいくつか紹介します。
• ステータスのフィルタの一覧の上にある「+」ボタンをクリックして、新しいフィルタ(と「CalendarColors」テーブルの新規レコード)を作成します。名前のフィールドにカーソルが入った状態になります。
• カラーピッカーを使って色を選択します。ここには列が3つあります。左にある最も広い列で、色を細かく選択できます。真ん中の列では一般的なカラースペクトラムから選択します。右の列では透明度を調整します。
• 何かの色と正確に一致させたい場合は、カラーピッカーの下部でRGBAの値を入力します(「A」はアルファ、つまり透明度のことで、正確に一致させたい場合は「1」を入力します)。
• 編集や削除をするには、既存の色の横にある歯車のアイコンをクリックします。ここで色を削除したり名前を変更したりしても、そのステータスや色を使用しているイベントではフィールドの値は変わらないことに注意してください。
• 色はFileMakerでも管理できます。「Calendar Status Colors」レイアウトを表示すると、色のレコードの一覧とソートの値を見ることができます。ソートの値を変更して並べ替えたら、ソリューションの「Upon Opening」スクリプトを実行して変更を反映させます。
計算フィールドに基づいてイベントを色分けすることはできますか?
はい、できます。数か所変更するだけです。以下の動画でその方法を紹介します:
Using a Calculated Field for Colors in DayBack
イベントの色付けに加えて、色付きのアイコンを追加できますか?
はい。バージョン10.16では、CSSを使用してイベントスタイルを計算し、アイコンを追加するEvent Style(英語記事)機能が導入されました。
その他の方法も紹介しています:Add Icons to DayBack Calendar (英語記事)
リソース別に色をつけることはできますか?
もちろん可能です。
DayBackのリソースビューは、イベントをリソースごとに整理するのに役立ちますが、割り当てられたリソースに基づいてイベントの色を設定することもできます。
複数のリソースを選択している場合、イベントは*最初に選択した*リソースによって色分けされることに注意してください。
- DBk_WebViewerSourceフィールドで、Resourceフィールドをsc_resourceとsc_statusの両方にマップします。
- Source No _レイアウトで、Resourceフィールドをリソースとステータスの両方のプレースホルダーにマップします。
- DayBackの組み込みイベントポップオーバーを使用している場合、リソースアイテムと同じデータが含まれるため、ポップオーバーに表示される「ステータス」アイテムを非表示にすることができます。
- これを行うには、「Load Source Settings at Startup」スクリプトの$$ sc_HidePopoverItems Set Variableステップを変更します。
- 最後に、カレンダーのステータスフィルターリストのエントリを変更/追加して、各リソースに色を割り当てます。それでおしまい!
リソース別の色-2番目の色の追加
もう1つのオプションは、DayBackに2番目の色を追加し、それをリソースに使用することです。ここで必要なcalcフィールドとCSSとともに、この優れた例を見つけることができます:https://www.seedcode.com/add-icons-colors-Filemaker-calendar/
フィールドではなく、ソース別で色分けすることはできますか?
はい、できます。自分のソースのテーブル(1つまたは複数)で「Status」フィールドを使用していない場合は、フィールドを計算フィールドに変更してソースの名前(例:「SampleEvents」)を返すようにします。計算結果を「テキスト」にしてください。
「Status」フィールドを使っている場合は、そのソースに新たに計算フィールドを1つ作ります。次に「Source No X」レイアウトの「Colors」タブにあるフィールドのオブジェクトを、この新しいフィールドに割り当てます。また、「DBk_WebViewerSource」計算フィールドの「sc_status」変数も、この新しいフィールドに割り当てます。さらに「Create Edit Delete Event...」スクリプトも、上述の動画で解説している通り、カレンダーがこの計算フィールドに書き込みをしないように変更する必要があります。自分のFileMakerのレイアウトではなくDayBackのイベントのポップオーバーを使っている場合、この調整方法では、自分でもともと作成してあった「Status」フィールドをイベントのポップオーバーで使うことはできません。
イベントのプロジェクトのステータスなど、イベント以外のフィールドで色分けすることはできますか?
できます。ただし、イベントのテーブルに、関連レコード(この例ではプロジェクト)からこの値を反映する計算式を作っている場合に限ります。「Source No X」レイアウト上のフィールドはすべてそのレイアウトのベースとなっているテーブルのものであり、関連するテーブルのものではないということが必要です。
色のトラブルシューティング
思い通りに色分けするためのヒントをいくつか記載します。
1 色分けに使用するフィールドは「Source No X」レイアウト上に配置されているもので、「SampleEvents::DBk_ColorCalc」で使用するフィールドと同じフィールドにします。色分けを動作させるには、色分けのベースとして指定したフィールドが以下の4つの条件を満たしている必要があります:
• 「Source No X」レイアウトの「Colors」タブで割り当てられていること。
• そのフィールドが、「SampleEvents::DBk_ColorCalc」フィールドで色の計算に使用されていること。
• そのフィールドが「SampleEvents::DBk_WebViewerSource」フィールドで「status」のラベルに割り当てられていること。
• そのフィールドの値が、カレンダーの「フィルタ」タブに表示されている「ステータスでフィルタ」の値のうちの1つであること
2 色に割り当てられているフィールドの値が、カレンダーのサイドバーにある「ステータスでフィルタ」の一覧のうちの1つであることを確認します。
3 最後に、使用可能なステータスの値一覧(または色分けのフィールドに使用する値一覧)が、DayBackに表示される値の一覧と一致していることを確認します。最も良い方法は、「CalendarColors」テーブルにある名前のフィールドに基づく値一覧にすることです。このようにしておけば、カレンダー以外で「status」を割り当てる場合に、カレンダーと同じ値が使われることになります。
4.ステータスサイドバー、CSSテーマ、またはカスタムイベントスタイルを使用して手動でカラー(rgb / rgba)値を設定した場合は、値に正しい数のパラメータがあることを確認してください。
rgb()値には3つのパラメーター(red, green,blue)が必要です
rgba()の値には4つのパラメータ(red, green,blue, alpha)が必要です
原文:EventColors|https://www.seedcode.com/pmwiki/index.php?n=DayBackForFileMaker.EventColors
コメント
0件のコメント
サインインしてコメントを残してください。