Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
By: Daniel Aguiar / Technical Reviewer: Mauricio Rincon
"Não consigo gravar uma entrada no dia de início do horário de verão, por que o Sharepoint muda a entrada sozinho."
Esse foi um caso que trabalhei recentemente e acredito ser interessante para alertar os demais admisnitradores Sharepoint.
Cenário
O cenário é simples de entender e de reproduzir.
Vamos supor que você tem uma lista no Sharepoint (WSS 3 ou MOSS 2K7) com um campo para receber datas no formato dd/mm/aaaa.
Nessa lista você deseja incluir uma entrada com um nome qualquer (“Teste 1” por exemplo), e com a data de “18/10/2009”, que é exatamente o dia que se inicia o horário de verão.
Dependendo de como o seu arquivo timezone.xml está configurado, o Sharepoint vai mudar a data para “17/10/2009” logo após você salvar o item.
Por que isso acontece?
Isso acontece devido ao metodo de gravação de dados no SQL e também a configuração do Timezone.xml. Vamos entendê-los:
Como as datas são guardadas no SQL?
Os campos que são visualizados como apenas data são salvos no SQL com data e hora.
Por exemplo toda vez que você salva uma data como "18-oct-2009", na verdade você está guardando "18-oct-2009 00:00" no SQL.
Como o horário de verão atua?
O arquivo timezone.xml indica a data e a hora para início do horário de verão em cada fuso horário no globo.
Se horario de verão inicia em “18-oct-2009 00:00” todos os registros nesse horário serão guardados no SQL com “-60 minutos” ou seja “17-oct-2009 23:00”.
O comportamento.
Sendo assim, toda vez que você salvar uma entrada com data para "18-oct-2009" esta será guardada no SQL como "18-oct-2009 00:00", mas como esse horário cai extamente no inicio de horário verão, o Sharepoint altera para "17-oct-2009 23:00" (com 1 hora a menos).
O que fazer para evitar isso?
Você pode adaptar o arquivo Timezone.xml de modo que o horário de verão inicie uma hora depois do normal, como por exemplo "18-oct-2009 02:00".
Deste modo, os campos com apenas data que serão salvos em "18-oct-2009", e guardados no SQL como "18-oct-2009 00:00" não terão o mesmo horário que o inicio de horário de verão (que agora será 18-oct-2009 02:00 AM) e portanto não terão suas datas alteradas.
Como fazer a alteração do timezone.xml?
Se decidir por alterar o horário de verão no Sharepoint, o KB 888253 lhe ajudará a fazer isso.
Também é interessante que você veja as dicas do nosso amigo Mauricio Rincon, aqui nesse blog:
Atualização de DST para SharePoint
Também montei uma tabela para lhe ajudar a interpretar o arquivo timezone.xml, veja nessa imagem.
Boas alterações dos fusos e até a proxima!