GlideDateTime フィールド値の変更

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む4読むのに数分
  • この例では、サーバーサイドスクリプトを使用して GlideDateTime フィールド値を変更する方法を示します。

    GlideDateTime フィールドまたはスクリプトオブジェクトを指定して、値を簡単に変更するさまざまな方法を示します。同じ概念が GlideDate オブジェクトにも適用されます。
    注:
    次のスクリプトは、グローバルアプリケーションのみを対象としています。
    //You first need a GlideDateTime object
    //this can be from instantiating a new object "var gdt = new GlideDateTime()"
    //or getting the object from a GlideDateTime field
    //getting the field value (for example: var gdt = current.start_date) only returns the string value, not the object
    //to get the object use var gdt = current.start_date.getGlideObject();
    //now gdt is a GlideDateTime object
    var gdt = current.start_date.getGlideObject();
     
    //All methods can use negative values to subtract intervals
     
    //add 1 hour (60 mins * 60 secs)
    gdt.addSeconds(3600);
     
    //add 1 day
    gdt.addDaysLocalTime(1);
     
    //subtract 1 day
    gdt.addDaysLocalTime(-1);
     
    //add 3 weeks
    gdt.addWeeksLocalTime(3);
     
    //subtract 6 months
    gdt.addMonthsLocalTime(-6);
     
    //add 1 year, representing the date and time using the UTC timezone instead of the local user's timezone.
    gdt.addYearsUTC(1);
     
    //set the value of the GlideDateTime object to the current session timezone/format
    GlideSession.get().setTimeZoneName('US/Eastern');
    gdt.setDisplayValue('2018-2-28 00:00:00');
    gs.info('In ' + GlideSession.get().getTimeZoneName() + ": " + gdt.getDisplayValue());
    

    一般的な日付と時刻の形式の競合

    誤った日時形式の文字列を指定すると、GlideDate、GlideDateTime、および GlideTime API のメソッドで予期しない動作が発生する可能性があります。次の表を使用して、形式の問題を解決してください。

    形式が正しくありません 説明 正しい形式
    YYYY-MM-dd HH:mm:ss
    • 問題:大文字の「Y」を使用して年を表します。「Y」記号はめったに使用されず、週の年を表します。
    • 解決策: 暦年には小文字の「y」記号を使用します。
    yyyy-MM-dd hh:mm:ss
    HH:mm:ss a

    Hh:mm:ss

    • 問題: 'HH' 記号と 'hh' 記号の間で使用上の競合があります。
      注:
      AM/PM マーカーである 'a' 記号は、H または k (24 時間制) 記号と互換性がありません。
    • 解決策: 時間形式を表す適切な構成を使用します。
      • HH は、開始カウントがゼロの 24 時間制を示します。つまり、1 日の時間 (0-23) です。
      • kk は、24 時間形式の開始カウント 1 を示します。つまり、1 日の時間 (1-24) です。
      • HH は、開始時刻が 1 (1 から 12) の AM/PM の 12 時間形式を示します。
      • KK は、開始時刻がゼロ (0-11) の am/pm の 12 時間形式を示します。
    hh:mm:ss:a

    HH:mm:ss

    HH:mm:ss z
    • 問題: 単一の「z」タイムゾーンの表示値が一意ではありません。例:IST: インド/イスラエル標準時。
    • 解決方法 : 完全なタイムゾーン名には「zzzz」を使用します。
    HH:mm:ss zzzz
    MM-dd-yyyy HH:MM
    • 問題:月と分の両方に「MM」を使用しています。
    • 解決策: 月には 'MM' を使用し、分には 'mm' を使用します。
    MM-dd-yyyy HH:mm
    yyyy-DDD-MM
    • 問題: 日付に 'DDD' を使用しています。「D」は記号で、年の日番号に使用されます。
    • 解決策: 日付には 'dd' を使用します。
    yyyy-MM-dd

    詳細については、 SimpleDateFormat の「日付と時刻のパターン」セクションを参照してください。