読者です 読者をやめる 読者になる 読者になる

よくかんでたべること

そのままのみこまずに、ね。

SharePoint OnlineでAccessアプリを新規作成するときはタイムゾーンにご注意を

【要点】
1) SharePoint OnlineでAccessアプリを新規作成するときはタイムゾーンにご注意を。デフォルトで西海岸になっているかもです。
サイトコンテンツ => サイトの設定 => 地域の設定 =>タイム ゾーン で設定を確認してください。

2) 万が一海外のタイムゾーンで作成したまま時差を計算して使い続けなくてはならないときはサマータイムにご注意を。

3) タイムゾーンの設定はSQL Server Management StudioでSQLAzureに接続するとTimeZoneに関するテーブルを見ることができます。
接続方法はこちらにわかりやすい説明があります。
mukkumuku.blogspot.jp



【経緯】
この間AccessServicesのアプリを動かしていたときのこと。
時間をDateadd(hour,17,[now]) つまり17時間すすめた関数を自作し現在時間を得ていたのですが、時間が-1時間ずれていることに気がつきました。

先日サポセンに問い合わせたところ、こちらのような回答がありました。
kanariya0922.hatenablog.com
AccessServicesに関してはアプリを作成したサーバーの時間がかえってくる仕様とのこと。
この時私はリージョンが変わることを恐れていたのですが、それはないと言われて安心していたのに時間がずれるとは。。。

FacebookのOffice365コミュニティに投稿したところ、なんと心の支えにしていたブログ主さま(MukkuMukuさま)からご回答をいただきました。
タイムゾーンのパラメータはAccessアプリをSharePointに作成されたときに決定するとのこと。そしてその設定はデータベースに保存されているとのこと。

そういえば、今問題になっているAccessアプリを作成したのは去年の10月、契約当初のことでした。
年末に17時間の時差に気がつきいろいろ調べていくうちに、Office365のタイムゾーンの設定とSharePointサイトのタイムゾーンの設定が別であることがわかり日本時間に修正したものの、時差は改善されないままでした。

MukkuMukuさんから教えていただいたようにSQL Server Management Studioから接続してみました。
まず、GETDATE()を走らせるとUTCがかえってきました。

f:id:kanariya0922:20160329225521p:plain
問題のAccessアプリのデータベースでは西海岸になっていました。
なぜ1時間ずれている...もしやサマータイム!?と思って調べたところ2016年のサマータイムは3/13からのようです。なるほど。。。

f:id:kanariya0922:20160329225519p:plain
先ほど作成したAccessアプリはちゃんと日本に設定されています。めでたしめでたし。

今になってサポセンからの回答を読み返すと、もしかしたら作成時のSharePointサーバーの設定に依存するということをおっしゃりたかったのでしょうか。。。担当が外国のかただったので意思の疎通で食い違いがあったのかもしれません。

ということで解決です。

MukkuMukuさま、本当にありがとうございました。
そしてご心配くださったみなさま、すみませんでした。
ありがとうございました!