Fusos Horários
Visão Geral
App Builder suporta mostrando DateTime
campos no fuso horário local do usuário. O Time Zone
configuração em App Builder para uma fonte de dados deve corresponder ao fuso horário da fonte de dados. Normalmente, isso é definido da mesma forma que o fuso horário da própria máquina. Em ambos os casos, o fuso horário definido para uma fonte de dados deve corresponder ao fuso horário esperado retornado ao executar um Now()
declaração no banco de dados.
Cuidado
A recomendação é que o App Builder servidor de aplicativos e servidores de banco de dados são ambos configurados com o mesmo fuso horário. Esses servidores precisam estar sincronizados. Versões futuras do App Builder pode se recusar a executar se os relógios entre o servidor de aplicativos e o servidor de banco de dados estiverem fora de sincronia.
Configuração
Existem dois locais onde um Time Zone
pode ser configurado:
- Servidor de fonte de dados
- Fonte de dados
O Time Zone
a configuração usa fusos horários IANA (por exemplo, America/New_York
).
Servidor de Fonte de Dados
Configurando um Servidor de Fonte de Dados Time Zone
, todas as Fontes de Dados recém criadas neste servidor serão configuradas com o mesmo Time Zone
. Fontes de dados existentes não são afetadas.
Etapas de Configuração
- Navegue até IDE > Servidores de dados
- Localize seu Servidor de dados e clique no botão Detalhes correspondente
- Vá até Mais > Caso extremo
- Clique em Editar
- Configure o Fuso horário da fonte de dados padrão
- Clique em Salvar
Fonte de Dados
Ao configurar um Time Zone
em uma Fonte de Dados, todos DateTime
os campos serão renderizados de acordo com o fuso horário local do usuário.
Etapas de Configuração
- Navegue até IDE > Servidores de dados
- Selecione o Servidor de dados apropriado
- Localize a Fonte de dados apropriada e clique no botão Detalhes correspondente
- Clique no botão Configurações avançadas
- Clique em Editar
- Selecione o Fuso horário apropriado
- Clique em Salvar
Impact
Todos DateTime
campos serão mostrados no fuso horário do usuário uma vez que um fuso horário tenha sido definido em uma Fonte de Dados. Isso afetará o seguinte:
- Tabela
DateTime
colunas. - Objeto de Negócios
DateTime
colunas. - Regra
DateTime
colunas (Bridges, CRUD, Validações, Webhooks, etc). - Controles de página que são vinculados a um dos itens acima
DateTime
colunas. - Tela dinâmica de Resultados para todos os itens acima.
Para Objetos de Negócios e Regras, a Fonte de Dados de destino Time Zone
será seguido.
Além disso, Full Audit e Audit Lite DateTime
os campos levarão em consideração a Fonte de Dados Time Zone
. Isso pode causar uma divergência de dados históricos. Para lidar com isso de forma mais uniforme, veja a Migração de data recurso que migrará todos os dados existentes para o novo Time Zone
.
Determinando o Fuso Horário do Usuário
App Builder segue estas etapas de ordem de prioridade para determinar o fuso horário do usuário:
- Primeiro, verifique se o perfil do usuário tem um
Time Zone
configuração. Se sim, use-a. - Caso contrário, tente obter o navegador
Time Zone
configuração. - Por fim, tente obter o navegador
Time Zone Offset
configuração.
Se nenhuma das configurações acima estiver disponível, o fuso horário do usuário será o padrão App Builder fuso horário do servidor de aplicação.
Notas Importantes
- Definindo um
Time Zone
não afeta nenhum dos dados existentes em uma Fonte de Dados. SeDateTime
os dados precisam ser ajustados de um fuso horário para outro (por exemplo, dados de auditoria), a migração de data recurso deve ser usado em vez disso. - O ajuste de
DateTime
dados para o fuso horário do usuário é uma mudança puramente superficial. As datas enviadas para um cliente são ajustadas ao fuso horário do usuárioTime Zone
. As datas enviadas de um cliente para o servidor são ajustadas de volta para o servidorTime Zone
antes de qualquer App Builder regras são executadas. - Além disso,
DateTime
dados CRUD'ed de uma Fonte de Dados para outra não serão ajustados de forma alguma. Novamente, esta é uma mudança puramente superficial que impacta apenas oDateTime
visto por um cliente. - Tome cuidado para que a tela de Resultados Dinâmicos seja impactada pelo
Time Zone
configuração. Isso significa que um desenvolvedor pode ver uma configuração diferenteDateTime
dentro do App Builder tela de Resultados do que em um visualizador de banco de dados direto, como o SQL Server Management Studio.