ID_IDIOMA — Idioma do Sistema
Tela de configuração: ADM010 — Parâmetros do Sistema Localização: Aba Internacionalização → campo Idioma Tabela:
PARMSISTEMA.ID_IDIOMA(DOM_SMALLINT DEFAULT 1 NOT NULL) Valor padrão:1(Português Brasileiro — PT-BR)
Descrição
Define o idioma principal utilizado pelo sistema para tradução de mensagens, termos de interface e textos de módulos. O valor selecionado corresponde ao ID da tabela IDIOMATRADUCAO, que armazena os idiomas disponíveis para tradução.
Telas impactadas
| Tela | Módulo | Impacto |
|---|---|---|
| ADM022 | Administração | Ao abrir, posiciona o cursor no idioma configurado em ID_IDIOMA via Locate. |
| FER011 | Ferramentas | Lê ID_IDIOMA de PARMSISTEMA para filtrar mensagens pelo idioma selecionado. |
| REC001 | Recebíveis | Se o país for Brasil (BACEN 1058) e ID_IDIOMA = 1, oculta a aba de parâmetros para exterior. |
Campos envolvidos
| Campo | Tabela | Tipo | Observação |
|---|---|---|---|
ID_IDIOMA | PARMSISTEMA | SMALLINT | Parâmetro principal. |
ID | IDIOMATRADUCAO | SMALLINT | Lookup do combobox (KeyField). |
DS_IDIOMA | IDIOMATRADUCAO | VARCHAR(60) | Descrição exibida no combobox (ListField). |
CD_CODELANGUAGE | IDIOMATRADUCAO | VARCHAR(5) | Código de cultura do idioma (ex: pt-BR, en-US). |
ID_IDIOMA | TRADUCAO | SMALLINT | FK para IDIOMATRADUCAO.ID, utilizada nas traduções. |
ID_IDIOMA | MENSAGEMIDIOMA | INTEGER | FK para IDIOMATRADUCAO.ID, utilizada nas mensagens. |
Opções disponíveis
O combobox cmbIDIOMATRADUCAO lista todos os registros da tabela IDIOMATRADUCAO. O conteúdo da tabela varia por base de dados, mas segue o padrão abaixo:
| O que faz | Detalhe |
|---|---|
| Seleciona o idioma de tradução do sistema | Combobox com lookup em IDIOMATRADUCAO; editável livremente pelo administrador |
Idioma padrão (1 — Português Brasileiro)
| O que faz | Detalhe |
|---|---|
| Valor padrão de fábrica | ID = 1 corresponde ao idioma original do sistema (PT-BR) |
| Edições de termos usam este idioma como origem | Scripts de tradução comparam sempre contra o idioma 1 |
Simulação passo a passo
- Acesse ADM010 — Parâmetros do Sistema.
- Navegue até a aba Internacionalização.
- O campo Idioma exibirá "Português Brasileiro" (ou a descrição do
ID = 1). - Mantenha a seleção padrão caso o sistema deva funcionar em português.
- Salve os parâmetros.
Resultado esperado: Todas as mensagens, termos de módulos e textos de interface são exibidos em português brasileiro (idioma original).
Outro idioma (ex: 2 — Inglês)
| O que faz | Detalhe |
|---|---|
| Altera o idioma de exibição do sistema | O valor precisa ter traduções cadastradas em TRADUCAO e SEGMENTOTRADUCAO |
| Requer termos traduzidos | Sem traduções, os termos serão exibidos no idioma original (1) |
Simulação passo a passo
- Acesse ADM010 — Parâmetros do Sistema.
- Navegue até a aba Internacionalização.
- No campo Idioma, selecione outro idioma (ex: "English").
- Salve os parâmetros.
- Reinicie o sistema ou reabra as telas para que o novo idioma seja carregado.
Resultado esperado: As mensagens, termos de interface e textos de módulos que possuírem tradução cadastrada na tabela TRADUCAO para o idioma selecionado serão exibidos no novo idioma. Termos sem tradução cadastrada continuarão aparecendo em português.
Exceção / Importante:
- O idioma
1(PT-BR) é sempre tratado como idioma de origem nos scripts de tradução (TRADUCAO_TERMO,VIEW_MENSAGEMTRADUCAO). Não altere este registro na tabelaIDIOMATRADUCAO.- O parâmetro
ST_GERATERMOS(configurado em ADM010 — Parâmetros do Sistema, mesma aba Internacionalização) controla se os termos são registrados automaticamente na tabelaTRADUCAOao executar mensagens. SeST_GERATERMOS = 'N', as traduções não serão geradas automaticamente.- Na tela REC001 (Recebíveis), se o país da empresa for Brasil (
CD_BACEN = 1058) eID_IDIOMA = 1, a aba de parâmetros para operações no exterior será ocultada automaticamente.
Regra geral de funcionamento
- Idioma de origem fixo: O idioma
1(PT-BR) é sempre o idioma base de comparação nos processos de tradução. - Consulta dinâmica: Scripts como
TRADUCAO_TERMOeVIEW_MENSAGEMTRADUCAOleemPARMSISTEMA.ID_IDIOMApara determinar o idioma de destino. Se o idioma de destino for diferente de1, buscam a tradução correspondente; caso contrário, retornam o texto original. - Exportação de termos: A tela FER011 (Ferramentas → Mensagens) utiliza
ID_IDIOMApara filtrar e exportar mensagens no idioma correto. - Gestão de traduções: A tela ADM022 (Cadastros de Tradução) posiciona automaticamente no idioma configurado em
ID_IDIOMAao ser aberta.
Tabela comparativa resumida
| Valor | Descrição | Efeito |
|---|---|---|
1 | Português Brasileiro (padrão) | Exibe textos no idioma original; oculta aba exterior no REC001 para empresas brasileiras |
2+ | Outro idioma cadastrado | Exibe traduções quando disponíveis; termos sem tradução permanecem em PT-BR |
Procedures impactadas
Rotinas Delphi com referência direta
| Rotina | Arquivo | Descrição |
|---|---|---|
iniciar | source/ADM022/UADM022.pas | Posiciona o idioma no cadastro de traduções via Locate. |
TdmADM022.tabTRADUCAOAfterEdit | source/ADM022/UdmADM022.pas | Atribui o ID_IDIOMA ao editar tradução. |
TdmADM022.tabTRADUCAOBeforePost | source/ADM022/UdmADM022.pas | Insere registro de tradução para o idioma quando não existir. |
Busca_Parametros | source/FER011/UdmFER011.pas | Lê ID_IDIOMA e descrição para exibir no filtro de mensagens. |
TfrmFER011.btnPesquisarClick | source/FER011/UFER011.pas | Aplica filtro de mensagens pelo idioma. |
TfrmFER011Dados.btnConfirmarClick | source/FER011/UFER011Dados.pas | Filtra dados de mensagem pelo idioma na confirmação. |
TfrmFER011Exportar.btnConfirmarClick | source/FER011/UFER011Exportar.pas | Exporta mensagens filtradas pelo idioma selecionado. |
TframeREC001.FrameEnter | source/REC001/UframeREC001.pas | Consulta ID_IDIOMA para decidir se exibe aba de parâmetros de exterior. |
TTraducao.writeLineArquivo | source/jCommon/jTraducao.pas | Monta query de tradução com ID_IDIOMA para idioma de destino. |
TTraducao.registrarTermo | source/jCommon/jTraducao.pas | Insere termo traduzido na tabela TRADUCAO com o ID_IDIOMA. |
Scripts SQL com referência direta ao campo
| Procedure/View | Arquivo | Descrição |
|---|---|---|
REGISTRA_MENSAGEM | Scripts/REGISTRA_MENSAGEM.sql | Insere tradução de mensagem com ID_IDIOMA. |
REGISTRA_TERMOMODULO | Scripts/REGISTRA_TERMOMODULO.sql | Insere tradução de termo de módulo com ID_IDIOMA. |
TRADUCAO_AIUD0 | Scripts/TRADUCAO_AIUD0.sql | Trigger que propaga ID_IDIOMA para SEGMENTOTRADUCAO. |
TRADUCAO_TERMO | Scripts/TRADUCAO_TERMO.sql | Compara idioma origem (1) com ID_IDIOMA de destino para traduzir termos. |
VIEW_MENSAGEMTRADUCAO | Scripts/VIEW_MENSAGEMTRADUCAO.sql | Busca mensagens traduzidas conforme ID_IDIOMA de destino. |
VIEW_TRADUCAO | Scripts/VIEW_TRADUCAO.sql | Recebe I_ID_IDIOMATRADUCAO para retornar traduções no idioma desejado. |
VIEW_TRADUCAOMODULO | Scripts/VIEW_TRADUCAOMODULO.sql | Recebe I_ID_IDIOMATRADUCAO para retornar traduções de módulos. |