ジョブスケジュールの特殊なケース

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む2読むのに数分
  • 一部の特殊なケースでは、ジョブスケジューリングに注意が必要です。

    月末のスケジュール

    月の長さが異なるため、月末にジョブをスケジュールする場合は注意が必要です。

    • イベントを 29 日または 30 日にスケジュールすることはお勧めしません。スケジュール設定済みジョブはその日数よりも短い月 (2 月など) に実行されるからです。
    • イベントが 31 日にスケジュールされている場合は、月が 31 日より短くても、イベントはその月の最終日に実行されます。

    たとえば、月の 31 日に実行するようにスケジュールされたイベントは、2 月 28 日、うるう年には 2 月 29 日に実行されます。

    平日のスケジュール

    スケジュールされたスクリプトの場合は、次のスクリプトを使用して平日にのみ実行します。

    (function isWeekday() {
       var isWeekday;
    var gDate = new GlideDate(); //Uses your Timezone!
    var day = gDate.getByFormat('EEEE'); //Gets name of day
    switch(day) {
           case "Saturday":
           case "Sunday":
               isWeekday = false;
               break;
           default:
               isWeekday = true;
       }
    return isWeekday;
    })();
    

    スクリプトからのジョブスケジュール

    イベントによってトリガーされたスケジュール設定済みジョブを実行するには、次のスクリプトを使用します。

    //Execute a scheduled script job
    var rec = new GlideRecord('sysauto_script');
    rec.get('name', 'YOUR_JOB_NAME_HERE');
    SncTriggerSynchronizer.executeNow(rec);
    スクリプトは、次のいずれかのテーブルを使用して実行できます。
    • scheduled_import_set (インポートスケジュールセット)
    • sysauto_script (スクリプトの実行を予定)
    • sysauto_template (スケジュールされたテンプレート生成)
    • sysauto_report (レポートスケジュール)
    注:
    SncTriggerSynchronizer は、ジョブスケジュールを将来に実行するメソッドを提供しません。

    別のインスタンスからインポートされたスケジュール設定済みスクリプトとジョブの実行

    スクリプトの実行を予定とジョブスケジュールは、Now Platform のデータレコードとして分類されます。つまり、更新セットから除外されます。テーブルが含まれているかどうかを判断するには、次に移動します。 すべて > システム定義 > ディクショナリ を表示し、問題のテーブルの 属性 値を表示します。属性 update_sync=true を持つテーブルのみが更新セットに含まれます。

    オプションで、XML を介してデータレコードをエクスポートおよびインポートできます。ただし、予期しないデータ変更を防ぐために、更新セットなどの XML ファイルからインポートされたデータレコードのスケジュールのアイテム [sys_trigger] レコードは作成されません。別のインスタンスからインポートされたジョブスケジュールまたはスクリプトを実行するには、ターゲットインスタンスの対応するジョブまたはスクリプトレコードを更新します。