Universal Resource Scheduling の拡張性の更新

2018 年 10 月

間隔

スケジュール アシスタントは、間隔と呼ばれる機能をサポートするようになりました。 単一要件 (または要件グループ) を使用して空き時間を検索するとき、フルフィルメントの基本設定 (msdyn_timegroup) と呼ばれる要件の検索フィールドを通じて、要件が実行設定 (msdyn_timegroup) レコードと関連付けられることがあります。 フルフィルメントの基本設定レコードには、結果が丸められる間隔 (msdyn_interval) を定義する設定と、スケジュール アシスタントのリスト ビューを使用したときにスケジューラに表示される間隔ごとの数 (msdyn_resultsperinterval) を定義する設定があります。 (msdyn_intervalsbegin) や (msdyn_resetpertimegroupdetail) など、間隔に関連する他の設定もありますが、スケジュール アシスタントのフィルター コントロールでこれらの値を変更するサポートはありません。

要件グループのスケジュール時に、フィルター コントロールは拡張できません。 したがって、この機能は、スケジュール アシスタント フィルターのレイアウトがカスタマイズされている場合でも、必要条件グループをスケジュールするときにすべてのユーザーがすぐに使用できます。

スケジュール アシスタント フィルター レイアウト

このアップデートで提供される既定のスケジュール アシスタント フィルター レイアウトには、間隔と、間隔ごとの結果数を調整できるように 2 つの新しい期間コントロールが格納されています。 ユーザー設定のスケジュール アシスタント フィルター レイアウトがある場合、以下の新しいコントロールをスケジュール アシスタント フィルター レイアウトの構成レコードの最後のコントロール セクションに追加できます。

追加された Interval プロパティ:

<control type="duration" key="Requirement/msdyn_interval" label-id="Interval" min="1" default-value="1" />

追加された ResultsPerInterval プロパティ:

<control type="number" key="Requirement/msdyn_resultsperinterval" label-id="FilterControl_ResultsPerInterval" min="0" default-value="0" />

制約取得クエリ

この更新で提供される既定の制約取得クエリには、Interval 値と ResultsPerInterval 値を取得するクエリが含まれています。 このパラメーターの既定値を変更するには、またはユーザー設定の制約取得クエリがある場合は、以下を更新するか、制約取得クエリの構成レコードに追加します。

<link-entity name='msdyn_timegroup' from='msdyn_timegroupid' to='msdyn_timegroup' link-type='outer' alias="tg">
          <attribute name='msdyn_interval' alias="msdyn_interval" />
          <attribute name='msdyn_resultsperinterval' alias="msdyn_resultsperinterval" />
        </link-entity>

2018 年 5 月

リソース セル テンプレート

リソース イメージを非表示にする

このアップデートで提供される既定のリソース セル テンプレートは、スケジュール ボード内のリソース行の高さを低く構成している場合にリソース イメージを自動的に非表示にするためのサポートを含んでいます。 カスタム リソース セル テンプレートがある場合、以下のテンプレート更新プログラムをリソース セル テンプレートの構成レコードに追加します。

機能を強化する目的で、最初の行と最後の行が新しく導入されました。 リソース イメージを非表示にするために更新されたマークアップ:

{{#if (or (eq (is-sa-grid-view) true) (eq (is-row-small) false)) }}
    {{#if imagepath}}
    <img class='resource-image' src='{{client-url}}{{imagepath}}' />
    {{else}}
    <div class='resource-image unknown-resource'></div>
    {{/if}}
{{/if}}

最初の行は新規です。 テンプレート内のテキストの 2 番目の行を非表示にするために更新されたマークアップ:

{{#if (and (eq (is-sa-grid-view) false) (eq (is-row-small) false)) }} 
    <div class='booked-duration'>{{BookedDuration}}<div class='fo-sch-clock'></div></div>
    <div class='booked-percentage'>{{BookedPercentage}}%</div>  
{{/if}}

詳細については、スケジュール ボードからリソース イメージを削除するを参照してください。

2018 年 4 月

制約取得クエリ

提案済み予約の無視

この更新で提供される既定の制約取得クエリには、スケジュール アシスタントが使用する提案済み予約の無視パラメーターの既定値が含まれます。 このパラメーターの既定値を変更するには、またはユーザー設定の制約取得クエリがある場合は、以下の新しいプロパティを更新、または制約取得クエリの構成レコードの Requirement バッグ変換部分に追加します。

追加された IgnoreProposedBookings プロパティ:

<IgnoreProposedBookings ufx-type="bool">true</IgnoreProposedBookings> 

提案されている機能を無視した、より詳細なコンテキストについては - 予約の提案を無視する を参照してください。

2018 年 2 月

スケジュール アシスタント フィルター レイアウト

提案済み予約の無視

この更新で提供される既定のスケジュール アシスタント フィルター レイアウトには、スケジュール アシスタントが使用する提案済み予約の無視パラメーターを設定するための新しいチェックボックス コントロールが含まれます。 ユーザー設定のスケジュール アシスタント フィルター レイアウトがある場合、以下の新しいコントロールをスケジュール アシスタント フィルター レイアウトの構成レコードの最後の fieldset コントロール セクションに追加します。

新しい IgnoreProposedBookings コントロール

<control type="boolean" key="Requirement/IgnoreProposedBookings" label-id="ScheduleAssistant.West.settingsform.IgnoreProposedBookings" />

提案されている機能を無視した、より詳細なコンテキストについては - 機能の提案を無視する を参照してください。

2017 年 12 月

リソース取得クエリ

スケジュール ボードに表示される日付範囲

この更新では、リソース取得クエリは入力としてスケジュール ボードに表示される日付範囲を取得します。 これにより、クエリはデータベース クエリ内でボードの日付範囲を使用することができます。 この更新プログラムで提供される既定のリソース取得クエリは変更されていません。 ただし、ボードの可視日付範囲に基づくようにクエリをカスタマイズすることができるようになりました。

XPath $input 変数で利用可能な更新済み入力パラメーターは ScheduleBoard/StartDate および ScheduleBoard/EndDate です。

以下のスニペット (未出荷) には、ボードに表示される日付範囲内のリソースごとに予約の合計数をクエリするために新しい入力パラメーターを使用する方法が示されます。

<!-- Booking join -->
<link-entity name="bookableresourcebooking" from="resource" to="bookableresourceid" link-type="outer">
    <attribute name="name" aggregate="countcolumn" alias="bookingcount" />

    <filter>
        <condition attribute="statecode" operator="eq" value="0" />
        <condition attribute="starttime" operator="le">
            <ufx:value select="$input/ScheduleBoard/EndDate" attribute="value" />
        </condition>
        <condition attribute="endtime" operator="ge">
            <ufx:value select="$input/ScheduleBoard/StartDate" attribute="value" />
        </condition>
    </filter>
</link-entity>

以下のスニペット (未発送) には、リソース セル テンプレートが予約の合計数を表示するようにカスタマイズする方法が示されます。

<div>Booking Count: {{bookingcount}}</div>

スケジュール ボード上の日付を変更するとき、リソース クエリは自動的に再び実行されません。 そのため、検索ボタンをクリックして、新しいスケジュール ボードに表示される日付を使用して検索を再実行する必要があります。

詳細については、その内容で投稿されたブログ https://blogs.msdn.microsoft.com/crm/2017/12/15/new-use-schedule-board-date-ranges-in-custom-queries-in-universal-resource-scheduling/ を参照してください

スケジュール アシスタント フィルター レイアウト

空き時間の合計による並べ替え

この更新で提供される既定のスケジュール アシスタント フィルター レイアウトには、リソースの空き時間の合計によってスケジュール アシスタントの結果を並び替えるための新しい順序オプションが含まれます。 ユーザー設定のスケジュール アシスタント フィルター レイアウトがある場合、以下の新しい順序オプションをスケジュール アシスタント フィルター レイアウトの構成レコードの order コントロール追加します。

新しい並び替えオプション

<order name="totalavailabletime" entity="bookableresource" attribute="totalavailabletime" label-id="ScheduleAssistant.Center.slotsgrid.TotalAvailableTime" />

シナリオの詳細については、投稿されたブログ https://blogs.msdn.microsoft.com/crm/2017/12/15/sort-available-resources-by-total-available-time-in-universal-resource-scheduling/ を参照してください

2017 年 7 月

2017年7月の Universal Resource Scheduling の更新プログラムが、拡張可能なクエリ、カスタムフィルタのレイアウト、リソースセルのテンプレートに関する最初のリリースでした