Índice

Objetivo

O objetivo deste guia é demonstrar o funcionamento do sistema de tradução de processos do Fluig.

Gerando Arquivos de Literais

Para gerar arquivos de literais para um novo diagrama, basta assinalar a opção "Cria os arquivos de literais" na tela apresentada a seguir:




Ao assinalar “Cria os arquivos de literais” são criados três arquivos properties, onde são armazenadas as literais nos idiomas suportados pelo fluig (inglês, português e espanhol), conforme imagem a seguir:




Estes arquivos são criados com três propriedades que são relacionadas às informações do processo:

Os campos categoria, descrição e instruções podem ser preenchidos normalmente na modelagem do processo, sem a necessidade de nenhuma técnica especial de tradução.

Contudo, essas informações preenchidas são utilizadas apenas nos momentos de importação, exportação e modelagem de processos. Para abertura e movimentação de processos são utilizadas as strings dos arquivos de literais. Portanto, a alteração destas propriedades deve ser realizada diretamente nos arquivos de literais (através do fluig Studio) e em seguida exportados para o servidor fluig.

Essas categorias são internas e não podem ser utilizadas em outros pontos do processo.


Para projetos mais antigos, a pasta “literals” é criada automaticamente, tanto na criação de novos diagramas quanto na importação de processos com literais definidas. Para projetos e diagramas antigos, a pasta e os arquivos de propriedades podem ser criados utilizando as opções "New Folder" e "New File" do Eclipse, que também estão disponíveis no menu de contexto de mouse do Fluig.



Os arquivos de literais criados desta forma devem seguir a seguinte convenção:

(Nome do diagrama) + “_en_US.properties” ou “_es.properties” ou “_pt_BR.properties”.

Obrigatoriamente os três arquivos devem ser criados para que o processo seja exportado. Todos os arquivos devem conter as três variáveis básicas citadas acima além de todas as variáveis criadas em outros pontos do processo.


Para o conteúdo de arquivos de literais é recomendando o uso do sistema Unicode para substituição de caracteres especiais, tais como caracteres acentuados e o uso de cedilha e til.

A seguir é apresentado um exemplo da string “Aprovação de documentos fiscais” convertida para Unicode:

process.description=Aprova\u00e7\u00e3o de documentos fiscais

O uso de Unicode evita inconsistências de código de página na tradução de processos.


Traduzindo Informações de Atividades, Objetos e Fluxos

Para traduzir informações das atividades, devem ser criadas literais utilizando a seguinte semântica:

(código da atividade) + "." + campo a ser traduzido = "string desejada”.

Onde:

Código da atividade: pode ser obtido verificando as propriedades de cada elemento do diagrama, conforme imagem a seguir:



Campo a ser traduzido: é o que se deseja traduzir. O campo "name" representa o nome e o campo "instructions" representa as instruções dele.

Nesta linha, ao traduzir a atividade com o código "task6" o arquivo de literal terá a seguinte atividade:


Para fluxos, além da propriedade "name", podem ser utilizadas mais duas propriedades:


Visando algumas melhorias na performance de consultas e central de tarefas, foi melhorado o processo de tradução de processos.

A princípio nada mudará para o usuário final, porém o desenvolvedor poderá notar algumas diferenças ao importar o processo, sendo elas, a ordem da literal importada, que pode estar diferente da que foi exportada, pois alteramos a forma como manipulamos essa informação e em casos de unicode para acentuação que também serão perdidos.

Por este motivo, é necessário fazer uma alteração na configuração do Studio. nas Preferências e pesquise por Tipos de conteúdo (Content Types), Texto (Text), Arquivo de propriedade Java (Java properties file) e altere de ISO-8859-1 para UTF-8.


Quebra de strings longas em tradução de processos

Em alguns casos, as strings de tradução podem ficar muito longas ultrapassando o tamanho dos objetos que contém estas strings, conforme o exemplo abaixo:



Note na imagem acima que a string "Solicitação workflow inicia nesta tarefa" está ultrapassando o espaço definido para o objeto de anotação.

Para evitar este problema o desenvolvedor de processos poderá utilizar o caractere "\n" para realização da quebra de linhas, evitando esta situação.

    // Implementação que apresenta o problema (sem o \n)
	7.name=Solicitação workflow inicia nesta tarefa

	// Implementação corrigida.
	7.name=Solicitação workflow \n inicia nesta tarefa


Após aplicar o caractere de quebra de linha, o problema será corrigido conforme pode ser observado na imagem abaixo.