Interfaces Bidirecionais com o Usuário no WebFacing

O WebFacing oferece o recurso de preservar o suporte bidirecional (ou bi-di) de um aplicativo 5250 quando ele for ativado para a Web.

Os sistemas de computador podem processar texto e elementos da interface com o usuário da esquerda para a direita (como é o caso do Inglês) ou da direita para a esquerda. Os softwares que oferecem suporte ao manuseio destes idiomas são considerados como tendo suporte bi-di.

Já que os aplicativos 5250 existentes geralmente são ativados para bi-di, convertê-los requer algumas etapas especiais para garantir que o processo WebFacing interprete a direção da entrada das telas corretamente.

Nota: Suporte bidirecional do WebFacing não está disponível ao usar o navegador Firefox.

Considerações sobre Bidirecional

A seguir estão exemplos de coisas que podem ser alteradas da esquerda para a direita ou da direita para a esquerda:
  • exibição de texto bidirecional
  • posição relativa de elementos HTML, incluindo colunas de tabelas
  • ordem do índice de tabulação para o controle do cursor através da interface com o usuário (mudança de foco de um widget para o próximo)
  • progressão do cursor através de um campo
  • posição da barra de scroll ou botões de ajuda com relação ao widget que ele controla

Tecnologias da Web como HTML e XHTML oferecem suporte bi-di com o atributo de direção da base comum dir, que pode ter o valor de ltr (esquerda para direita) ou rtl (direita para esquerda). Este atributo pode ser aplicado a diversas tags diferentes e o efeito dependerá do tipo de widget. Elementos filho herdam do elemento pai. Por exemplo, para configurar a direção da base de todo o documento HTML para direita para esquerda, deve-se aplicar o atributo à tag <html>: <html dir="rtl">.

No DDS, há três palavras-chave que controlam estes tipos de comportamento:
  • DSPRL para reverter a exibição das telas simetricamente de esquerda para a direita para direita para esquerda.
  • CHECK(RLTB) para fazer com que a tabulação de campos vá da direita para a esquerda e de cima para baixo.
  • CHECK(RL) para fazer o cursor ir da direita para a esquerda através de um campo.
A WebFacing Tool aplica um conjunto único de regras para a conversão e ativação de interfaces de usuário bidirecionais. A seguir estão alguns dos princípios fundamentais:
  • A palavra-chave DSPRL, raramente utilizada, não possui suporte e a página HTML do WebFacing HTML sempre possui uma direção de documento da esquerda para a direita.
  • Se a palavra-chave CHECK(RLTB) for especificada, o WebFacing designará valores de índice de tabulação com base em uma grade (ver abaixo).
  • Qualquer campo que tinha a palavra-chave CHECK(RL) especificada nela possui o atributo dir="rtl" designado para o HTML que gerou.

A Grade de Índice de Guias

Widgets tabuláveis (elementos que deveriam ser acessíveis pela tecla Tab como campos e hyperlinks) podem ter um índice de tabulação. A maioria dos navegadores assumem uma ordem do índice de tabulação que passa através de todos os widgets tabuláveis da esquerda para a direita e de cima para baixo.

Nas telas do 5250 nas quais a palavra-chave CHECK(RLTB) é utilizada, o WebFacing designa um índice de tabulação para implementar corretamente a ordem de tabulação da direita para a esquerda na página HTML da esquerda para a direita. Esses índices de tabulação são designados com base na linha e na posição da coluna do DDS. Para deixar espaço para mover os campos para fora de suas posições do DDS restritas a 27 linhas e 132 colunas no máximo, o WebFacing utiliza uma grade que possui 132 linhas e 250 colunas. (O valor máximo do atributo tabindex é 32767).

Grade do índice de tabulação de aplicativos bi-di do WebFacing

É necessário entender esta grade do índice de tabulação nas seguintes circunstâncias:
  • incluindo seus próprios widgets tabuláveis por meio das configurações de Web ou edição direta de arquivos JSP do Web Facing.
  • utilizando CSS-P para mover um widget tabulável o suficiente para alterar sua posição relativa na ordem do índice de tabulação.

No caso de novos widgets tabuláveis incluídos através das Configurações da Web, é possível utilizar para substituir variáveis &{TABINDEX}. Isso calculará a ordem correta do índice de tabulação de seu widget no momento da conversão.

Limitações da Configuração da Web

Nota: Para obter informações sobre mais limitações, consulte a nota técnica Limitations when Converting and Running BiDirectional Applications with WebFacing.
A página de código Arabic 420 EBCDIC não possui os seguintes caracteres:
  \
  { }
  [ ]
Portanto, a variável de substituição do índice de tabulação não possui suporte para membros que utilizam a página de código Arabic 420, tampouco outros constructos Javascript, como matrizes, que necessitam destes caracteres.

Além disso, Árabe se torna desformatado porque está armazenado em formato lógico no membro que tem formato visual.