A Ferramenta do WebFacing suporta a operação INVITE diferentemente a partir de dispositivos 5250. A diferença principal é que o cronômetro da operação READ é manipulado pelo navegador. Esta diferença é devido ao fato de que um aplicativo pode sobrescrever os registros da tela exibidos em um dispositivo de exibição 5250, mas não pode sobrescrever a página exibida em um navegador sem que o navegador dê o controle de volta ao aplicativo. A implementação do cronômetro no navegador permite que o navegador devolva o controle ao aplicativo quando o tempo expira.
A Ferramenta do WebFacing, por padrão, utiliza o valor do parâmetro WAITRCD para o cronômetro do lado do navegador. É possível , entretanto, substituir este valor nas propriedades do projeto do WebFacing. A seguir encontra-se a descrição da operação do cronômetro conforme implementada pela Ferramenta do WebFacing. Detalhes sobre o comportamento do INVITE são fornecidos na tabela abaixo.
Se o parâmetro WAITRCD for definido para *IMMED, o navegador será interrompido imediatamente. É possível substituir o valor para o WAITRCD nas propriedades do Run Time para seu projeto do WebFacing para alterar o tempo que o navegador espera pela conclusão de uma operação read-from-invited-devices. Na página de propriedades Tempo de Execução de seu aplicativo WebFacing, selecione Projeto e marque a caixa de opções Substituir o tempo máximo de espera de registro (WAITRCD) especificado para arquivos DDS e especifique o número de segundos ou *NOMAX como sem limite de tempo.
Quando a operação INVITE é interrompida, um aviso é emitido no navegador, se você tiver ativado o diálogo de tempo limite para INVITE. Na página de propriedades Tempo de Execução de seu aplicativo WebFacing, selecione Projeto e marque a caixa de opções Mostrar diálogo de tempo de execução do INVITE. Quando o alerta é emitido no navegador, é possível reconfigurar o cronômetro para essa operação INVITE ou deixar que a transação seja interrompida. Observe que quando a transação é interrompida, qualquer entrada do usuário é perdida. Se você não selecionar a caixa de opções Mostrar diálogo de tempo limite para INVITE na página de propriedades Projeto, nenhum alerta aparecerá quando ocorrer um tempo limite.
É possível alterar o conteúdo do diálogo de aviso modificando o arquivo timeout.jsp em \WebContent\webfacing\jsp\common\html para seu projeto do WebFacing. Você também pode modificar a quantidade de tempo que o aviso é exibido. Por exemplo, se você deseja que o aviso seja descartado imediatamente sem a interação do usuário, é possível definir o segundo parâmetro no método window.setTimeout como 0.
É possível modificar os parâmetros do diálogo de aviso atualizando o arquivo webface.js para seu release (por exemplo, webfac512.js na versão 5.1.2) em \WebContent\webfacing\ClientScript para seu projeto WebFacing. Neste arquivo, é possível modificar atributos tais como o tamanho e a posição do diálogo de aviso. É possível modificar estes atributos atualizando os parâmetros para o método window.showModalDialog.
5250 | WebFacing | |
Tempo de WAITRCD | O tempo de WAITRCD começa a expirar quando a operação read-from-invited-devices é executada pelo aplicativo. | O tempo de WAITRCD começa a expirar quando a operação write-with-invite é executada pelo aplicativo. |
WAITRCD definido como *IMMED | O usuário pode inserir dados sem interrupção até pressionar uma tecla AID ou o INVITE pendente é cancelado. Se uma tecla AID não for pressionada durante a execução de uma operação read-from-invited-devices pelo aplicativo, uma exceção de tempo limite será retornada ao aplicativo, embora o dispositivo ainda esteja apto a receber entradas. | O navegador será interrompido imediatamente e o usuário será incapaz de inserir qualquer dado. |
WAITRCD definido muito baixo | O usuário pode inserir dados sem interrupção até pressionar uma tecla AID ou o INVITE pendente é cancelado. Se uma tecla AID não for pressionada durante a execução de uma operação read-from-invited-devices pela operação e se o número de segundos especificado para WAITRCD for ultrapassado, uma exceção de tempo limite será retornada ao aplicativo, embora o dispositivo ainda esteja apto a receber entradas. | O navegador será interrompido quando o número de segundos especificado para WAITRCD for ultrapassado e o usuário será incapaz de inserir qualquer dado. |
O aplicativo executa uma operação read(wait) (espera até que a tecla AID devolva o controle ao aplicativo) ao invés de uma operação read-from-invited-devices depois de uma operação write-with-invite | O usuário pode inserir dados sem interrupção até pressionar uma tecla AID ou o INVITE pendente é cancelado. O dispositivo permanecerá ainda apto a receber entradas. | Se o WAITRCD não for *NOMAX, o navegador poderá ser interrompido e qualquer dado inserido será perdido. A operação read(wait) fará com que o formato do registro solicitado seja exibido novamente e esteja apto para receber entradas, sem os dados inseridos anteriormente. |
O aplicativo executa uma operação read-from-invited-devices em resposta a uma operação read-from-invited-devices expirada | O usuário pode inserir dados sem interrupção até pressionar uma tecla AID ou o INVITE pendente é cancelado. O dispositivo permanecerá ainda apto a receber entradas. | O navegador será interrompido e qualquer dado inserido será perdido. Cada operação read-from-invited-devices adicional fará com que o formato do registro solicitado seja exibido novamente e esteja apto para receber entradas, sem os dados inseridos anteriormente. |
Cancelando uma operação INVITE quando o WAITRCD estiver definido para *NOMAX ou muito alto | O pedido INVITE pendente é cancelado quase que imediatamente por um pedido explícito (tal como ENDRCV) ou implícito (tal como a gravação de um outro formato de registro), com tanto que o pedido seja processado antes que a tecla AID seja pressionada. A exibição permanecerá ainda apta a receber entradas. | O pedido INVITE pendente é cancelado quando o navegador é interrompido ou quando o usuário pressiona uma tecla AID. Um pedido implícito é concluído somente durante o tempo limite do navegador. Se nenhuma tecla AID for pressionada, um pedido de cancelamento não poderá ser concluído até que o número de segundos definido para o WAITRCD seja ultrapassado. Se o WAITRCD for *NOMAX e nenhuma tecla AID for pressionada, o pedido não será concluído nunca. |
Suspendendo uma operação INVITE quando o WAITRCD estiver definido como *NOMAX ou muito alto | O pedido INVITE pendente é suspendido quase que imediatamente. | O pedido de suspensão não pode ser concluído até que o número de segundos definido para WAITRCD seja ultrapassado. Se o WAITRCD for *NOMAX e nenhuma tecla AID for pressionada, o pedido não será concluído nunca. |