Ir para o conteúdo

Design de tradução no Jitterbit App Builder

Visão geral

Esta página aborda o design do sistema de Traduções.

Pacotes

As traduções são armazenadas em pacotes. Os pacotes são compostos por chaves de tradução que mapeiam para traduções.

Imagem 2017 3 27 16 29 39

No pacote descrito acima, um nome de controle ou rótulo com o valor "Cliente" será traduzido para inglês (EUA), espanhol ou japonês de acordo com o perfil do usuário.

Selar e desselar pacotes

Desde o App Builder 4.52, os pacotes de tradução podem ser selados e desselados. Um pacote selado não pode ser modificado, mas se você precisar permitir que os desenvolvedores façam alterações conforme necessário, pode desselar os pacotes. Para selar ou desselar um pacote de tradução, siga estas etapas:

  1. Abra o IDE.

  2. No painel Implantar, clique em Traduções de Idioma.

  3. Clique na aba Pacotes. A página Traduções-Pacotes é aberta.

  4. No painel Pacotes, clique em Gerenciar Pacotes. Um diálogo é aberto.

  5. No diálogo, uma lista de pacotes é exibida. Aqueles que estão selados contêm um ícone . Selecione o pacote que você deseja selar ou desselar. Seus detalhes serão exibidos no painel Pacote.

  6. Clique em Mais e uma lista de opções aparecerá. Se o pacote estiver selado, uma delas será Desselar Pacote. Se o pacote estiver desselado, uma delas será Selar Pacote.

Aviso

Você nunca deve precisar desselar um pacote de tradução em ambientes de QA ou produção. Fazer isso destrói a garantia de equivalência entre os ambientes. Alterações feitas em objetos desselados não podem ser reproduzidas em outros ambientes sem um esforço significativo.

Chave de tradução

A Chave de Tradução é usada para procurar uma tradução. A Chave de Tradução é o texto que aparece dentro do IDE do App Builder para seu aplicativo. Quando você importa chaves de tradução para seu aplicativo, o App Builder puxa valores de todos os nomes de controle, rótulos, eventos e mensagens de validação.

A maior parte do tempo, a chave de tradução será idêntica à tradução padrão (Inglês dos EUA). No entanto, há ocasiões em que é benéfico criar uma chave "substituta" lógica para diferenciar duas traduções.

Como exemplo, digamos que você tenha dois controles com o mesmo nome em seu aplicativo - "Building":

  • Em um caso, Building refere-se a uma estrutura física.
  • No outro caso, Building refere-se à ação de construir algo.

Embora essas duas traduções em inglês sejam equivalentes, outros idiomas podem usar palavras distintas. Por exemplo, em alemão, a palavra para building (estrutura) é "Gebäude", enquanto a palavra para building (ação) é "Aufbau". Para resolver esse problema, você pode inserir um nome de controle distinto, como "Building_Structure". Em seu pacote, você personalizaria a tradução em inglês da chave de tradução "Building_Structure" para ser "Building" e a tradução em alemão para ser "Gebäude".

Vínculo do pacote do aplicativo

Os aplicativos estão vinculados a um e apenas um pacote. Quaisquer fontes de dados que estão vinculadas a um aplicativo também ficam vinculadas ao pacote do aplicativo. Por exemplo:

Image 2017 3 27 16 38 21

Um pacote também pode ser vinculado a vários aplicativos.

Image 2017 3 27 16 39 48

Em geral, é mais seguro ter um pacote por aplicativo. Isso se torna particularmente verdadeiro quando você vai migrar seu LP de Dev > QA > Prod. Os pacotes são empacotados com seu aplicativo em um LP e seguir a regra de um aplicativo, um pacote ajuda a evitar colisões ao instalar arquivos LP separados.

Itens traduzidos

Os seguintes itens são atualmente tratados pelo sistema de Tradução:

  • Nomes de controle, rótulos, rótulos curtos
  • Mensagens de sucesso pré-evento, pós-sucesso, pós-falha
  • Mensagem de validação
  • Modelos
  • Colunas marcadas que suportam traduções

Determinando o idioma do usuário

A linguagem do usuário é determinada avaliando o seguinte (em ordem):

  1. Configuração de idioma do perfil do usuário do App Builder.
  2. $cultureId passado na string de consulta da URL. Isso também definirá o cookie de cultura do App Builder.
  3. Cookie de cultura do App Builder.
  4. O cabeçalho de solicitação Accept-Language do navegador.

Nota

Para o caso #4, o App Builder escolherá o idioma de maior classificação. Não há lógica de fallback para tentar escolher o próximo melhor idioma.

Formatos de substituição

Além disso, as traduções podem ser marcadas com um formato de substituição.

  • Padrão: O formato tentará ser determinado automaticamente com base no conteúdo da string.
  • Nenhum: Nenhuma substituição necessária
  • DotNet: O formato usa colchetes numerados para substituir parâmetros
    • Ex.: "A raposa {0} pulou sobre a cerca".
  • Handlebar: O formato usa colchetes nomeados para substituir parâmetros como o nome da coluna.
    • Ex.: "A raposa {AnimalColour} pulou sobre a cerca".