converttolocaltime – função de script e gráfico
Converte um carimbo de data/hora de UTC ou GMT para a hora local, na forma de um valor duplo.
Sintaxe:
ConvertToLocalTime(timestamp [, place [, ignore_dst=false]])
Tipo de dados de retorno: dual
Argumento | Descrição |
---|---|
timestamp | A data para avaliar como carimbo de data/hora ou a expressão resolvendo para um carimbo de data/hora, por exemplo “2012-10-12”. |
place |
Um local ou fuso horário da tabela de locais e fusos horários abaixo. Opcionalmente, você pode usar as opções GMT ou UTC para definir a hora local. Os seguintes valores e intervalos de fuso horário são válidos:
Nota informativaSe você usar um deslocamento de horário de verão (ou seja, especificar um valor de argumento ignore_dst avaliado como False), deverá especificar um local, em vez de um deslocamento GMT, no argumento place. Isto ocorre porque o ajuste para o horário de verão requer informações latitudinais além das informações longitudinais fornecidas por um deslocamento GMT. Para obter informações, consulte Usando deslocamentos GMT em combinação com DST.
Nota informativaVocê pode usar somente fusos horários padrão. Não é possível usar um fuso horário arbitrário como, por exemplo, GMT-04:27.
|
ignore_dst |
Se este argumento for avaliado como True, DST (horário de verão) será ignorado. Valores de argumentos válidos avaliados para True incluem -1 e True(). Se esse argumento for avaliado como False, o carimbo de data/hora será ajustado para o horário de verão. Valores de argumentos válidos avaliados para False incluem 0 e False(). Se o valor do argumento ignore_dst for inválido, a função avaliará a expressão como se o valor ignore_dst fosse avaliado como True. Se o valor do argumento ignore_dst não for especificado, a função avaliará a expressão como se o valor ignore_dst fosse avaliado como False. |
A hora resultante é ajustada para o horário de verão, exceto se o ignore_dst for definido como True.
Locais e fusos horários
A função ConvertToLocalTime recupera informações sobre locais e fusos horários em todo o mundo a partir do registro do Windows. Isso significa que, para que o recurso funcione, o nome do local que você deseja usar deve corresponder ao nome no registro do Windows.
O nome exato com o qual um local está definido no registro do Windows também pode mudar de acordo com as configurações de idioma da instalação do Windows. Isso ocorre porque os nomes de determinadas cidades e países são escritos de forma diferente em diferentes idiomas.
Existe uma lista completa de locais e fusos horários no registro do Windows em:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
Como alternativa, você pode encontrar a lista de fusos horários e locais no Painel de Controle do Windows. Abra o Painel de Controle, clique em configurações de Data e Hora e depois Alterar fuso horário. Você poderá ver a lista completa de cidades ou países associados a cada fuso horário no menu suspenso.
A-C | D-K | L-R | S-Z |
---|---|---|---|
Abu Dhabi | Darwin | La Paz | Samoa |
Adelaide | Dhaka | Lima | Santiago |
Alaska | Eastern Time (US & Canada) | Lisbon | Sapporo |
Amsterdam | Edinburgh | Ljubljana | Sarajevo |
Arizona | Ekaterinburg | London | Saskatchewan |
Astana | Fiji | Madrid | Seoul |
Athens | Georgetown | Magadan | Singapore |
Atlantic Time (Canada) | Greenland | Mazatlan | Skopje |
Auckland | Greenwich Mean Time : Dublin | Melbourne | Sofia |
Azores | Guadalajara | Mexico City | Solomon Is. |
Baghdad | Guam | Mid-Atlantic | Sri Jayawardenepura |
Baku | Hanoi | Minsk | St. Petersburg |
Bangkok | Harare | Monrovia | Stockholm |
Beijing | Hawaii | Monterrey | Sydney |
Belgrade | Helsinki | Moscow | Taipei |
Berlin | Hobart | Mountain Time (US & Canada) | Tallinn |
Bern | Hong Kong | Mumbai | Tashkent |
Bogota | Indiana (East) | Muscat | Tbilisi |
Brasilia | International Date Line West | Nairobi | Tehran |
Bratislava | Irkutsk | New Caledonia | Tokyo |
Brisbane | Islamabad | New Delhi | Urumqi |
Brussels | Istanbul | Newfoundland | Warsaw |
Bucharest | Jakarta | Novosibirsk | Wellington |
Budapest | Jerusalem | Nuku'alofa | West Central Africa |
Buenos Aires | Kabul | Osaka | Vienna |
Cairo | Kamchatka | Pacific Time (US & Canada) | Vilnius |
Canberra | Karachi | Paris | Vladivostok |
Cape Verde Is. | Kathmandu | Perth | Volgograd |
Caracas | Kolkata | Port Moresby | Yakutsk |
Casablanca | Krasnoyarsk | Prague | Yerevan |
Central America | Kuala Lumpur | Pretoria | Zagreb |
Central Time (US & Canada) | Kuwait | Quito | - |
Chennai | Kyiv | Riga | - |
Chihuahua | - | Riyadh | - |
Chongqing | - | Rome | - |
Copenhagen | - | - | - |
Exemplo | Resultado |
---|---|
ConvertToLocalTime('2023-08-14 08:39:47','Paris') |
Retorna ‘2023-08-14 10:39:47’ e a representação do carimbo de data/hora interno correspondente. |
ConvertToLocalTime(UTC(), 'Stockholm') | Retorna a hora de Estocolmo, ajustando para o horário de verão. |
ConvertToLocalTime(UTC(), 'Stockholm', -1) | Retorna a hora de Estocolmo, sem ajuste de horário de verão. |
ConvertToLocalTime(UTC(), 'GMT-05:00') | Retorna a hora da costa leste norte-americana, por exemplo, Nova York. Nenhum ajuste é feito para o horário de verão porque é especificado um deslocamento GMT, em vez de um local. |
ConvertToLocalTime(UTC(), 'New York', -1) | Retorna o horário da costa leste da América do Norte (Nova York), sem ajuste de horário de verão. |
ConvertToLocalTime(UTC(), 'New York', True()) | Retorna o horário da costa leste da América do Norte (Nova York), sem ajuste de horário de verão. |
ConvertToLocalTime(UTC(), 'New York', 0) | Retorna a hora da costa leste da América do Norte (Nova York), ajustando para o horário de verão. |
ConvertToLocalTime(UTC(), 'New York', False()) | Retorna a hora da costa leste da América do Norte (Nova York), ajustando para o horário de verão. |
Usando deslocamentos GMT em combinação com DST
Após a implementação de bibliotecas de Componentes Internacionais para Unicode (ICU) no QlikView November 2018, o uso de compensações GMT (Horário de Greenwich) em combinação com DST (Horário de Verão) requer informações latitudinais adicionais.
GMT é um deslocamento longitudinal (leste-oeste), enquanto DST é um deslocamento latitudinal (norte-sul). Por exemplo, Helsínquia (Finlândia) e Joanesburgo (África do Sul) partilham o mesmo deslocamento GMT+02:00, mas não partilham o mesmo deslocamento do horário de verão. Isso significa que, além do deslocamento GMT, qualquer deslocamento do horário de verão requer informações sobre a posição latitudinal do fuso horário local (entrada do fuso horário geográfico) para ter informações completas sobre as condições locais do horário de verão.