Função: LocalToUTC
Converte a data e hora local para UTC - Coordinate Universal Time.
LocalToUTC ( < cData>, < cTime>, [ nDST] ) --> aRetorno
Nome | Tipo | Descrição | Obrigatório | Referência |
cData | Data | Indica a data local no formato ano, mês e dia. Exemplo: yyyyMMdd. | X | |
cTime | Data | Indica a hora local no formato hora, minuto e segundo. Exemplo: hh:mm:ss. | X | |
nDST | Numérico | Indica se a hora informada representa um horário solar (0) ou horário de verão (1). Caso não especificado, será considerado 0 ( standard time, ou horário solar ) |
Retorna um array contendo:- aRetorno [1] - Data UTC no formato yyyyMMdd
- aRetorno [2] - Hora UTC no formato hh:mm:SS.
As chamadas 01 e 02, informam a data de 10/01/2013. Na chamada 1, informamos o horário de 13:00:00, e informamos o 3º parâmetro como 1 ( horário de verão ), deste modo dizemos para a função que 13:00:00 corresponde ao horário de verão ( uma hora adiantado em relação ao horário solar ), de modo que a data e horário UTC deste momento é dia 10/13/2013, 15:00:00 . Na chamada 2, informamos a mesma data, e um horário de 12:00:00, e informamos no 3º parâmetro que o horário informado representa o horário solar, de modo que o horário UTC deste momento também é 15:00:00.
O comportamento da função não apresenta variação, mesmo que a data usada como parâmetro seja uma data onde estava em vigência de horário de verão ou não. O que pode mudar ;e o comportamento do relógio do sistema, quando o sistema operacional está autorizado a mexer no relógio automaticamente na transição de entrada ou de saída do período de vigência de horário de verão. Na prática, isto significa que : Para converter a data e hora do instante atual para UTC, se o seu sistema operacional estiver configurado para ajustar o relógio automaticamente para horário de verão, E o dia de hoje estiver dentro da vigência do horário de verão, o 3º parâmetro deve ser 1. Caso o seu sistema operacional não esteja configurado para ajustar automaticamente o relógio em horário de verão, e/ou o período atual esteja fora da vigência do horário de verão, o 3º parâmetro deve ser 0.
O que é UTC ?
Ao contrário do GMT, o UTC não se define pelo sol ou as estrelas, mas é sim uma medida derivada do Tempo Atômico Internacional (TAI). Devido ao fato do tempo de rotação da Terra oscilar em relação ao tempo atômico, o UTC sincroniza-se com o dia e a noite de UT1, ao que se soma ou subtrai segundos de salto (leap seconds) quanto necessário. Os segundos de salto são definidos, por acordos internacionais, para o final de julho ou de dezembro como primeira opção e para os finais de março ou setembro como segunda opção. Até hoje somente julho e dezembro foram escolhidos como meses para ocorrer um segundo de salto. A entrada em circulação dos segundos de salto é determinada pelo Serviço Internacional de Rotação da Terra e Sistemas de Referência (IERS), com base nas suas medições da rotação da terra.
"UTC" não é realmente uma abreviatura; é uma variante do tempo universal, (universal time, abreviadamente UT) e o seu modificador C (para "coordenado") foi incluído para enfatizar que é uma variante de UT. Pode-se considerar como um compromisso entre a abreviatura inglesa "CUT" e a francesa "TUC".
Os tempos UTC de alta precisão só podem ser determinados uma vez, sendo conhecido o tempo atômico, que se estabelece mediante a reconciliação das diferenças observadas entre um conjunto de relógios atômicos mantidos por um determinado número de oficinas do tempo nacionais. Isto é feito sob coordenação da Oficina Internacional de Pesos e Medidas (Bureau International des Poids et Mesures - BIPM ). Não obstante, os relógios atômicos são tão exatos que só os mais precisos computadores necessitam usar estas correções; e a maioria dos utilizadores de serviços de tempo utilizam os relógios atômicos que tenham sido previamente configurados como UTC, para estimar a hora UTC.
Devido aos segundos de salto é impossível determinar que representação UTC virá a ter numa data futura, pois o número de segundos de salto que se tem que incluir na data é ainda desconhecido. Para tais casos é recomendado que se utilize a representação TAI que não sofre tais limitações.
UTC é o sistema de tempo utilizado por muitos padrões da Internet e da World Wide Web. Em particular, desenhou-se o Network Time Protocolcomo uma forma de distribuir o tempo UTC na Internet.
O Parlamento Europeu decidiu que para todos os países da União Europeia seria uniformemente estabelecido que a Hora de Verão (em inglês daylight savings time, DST) se inicia às 02:00 UTC do último domingo de cada mês de Março, sendo acrescida de uma hora, e termina às 02:00 UTC do último domingo do mês de Outubro. No caso de Portugal ou Reino Unido, a Hora de Inverno coincide com a hora UTC.
aRet := localToUtc( "20080918", "23:24:25" )
ConOut("A Data convertida para UTC e : " + aRet[1])
ConOut("A Hora convertida para UTC e : " + aRet[2])