2012年9月18日 (火)

集計列 - 時間を加算する

SharePoint では「日付と時刻」型のデータは内部的に数値として値を保持しています。たとえば、次のようなテストをしてみます。

カスタムリストを作成し、Number という名前の列を、数値型として追加します。

Number

次に集計列として Date という名前の列を追加し、Number 列を参照し結果を日付と時刻として表示するようにします。

Date

列が追加できたらリストのNumber列に下記のように追加し、テストしてます

Data-Result

結果からわかるとおり1日-24時間は数値としては"24/24=1"に相当します。つまり、6時間は "6/24 = 0.25" となるわけです。ですから、1時間は (1/24) で算出できるということですね。

これを利用した例として本記事ついて説明します。ある日付のフィールドにたとえば「開始日」列にU.S時間が入力されているとします。日本の時刻を算出するため集計列を使って表現すると9時間差とすると、次の式となります。

=開始日 + (9/24)

そもそも、SharePoint では時々時刻がU.S時間で表現されてしまうケースがあります(バグだとおもわれますが)。たとえば、前回の記事でご紹介した、ドキュメントセットでも、時刻フィールドがU.S時間となってしまいます。こうしたケースに対処する一つの方法として有効な手段です。

ご参考まで。

■その他の参考記事

http://blog.pentalogic.net/2010/05/calculated-columns-adding-hours-onto-a-date-field/

トラックバック

このページのトラックバックURL: http://bb.lekumo.jp/t/trackback/718613/34255600

集計列 - 時間を加算するを参照しているブログ:

コメント