Configurar seu modelo de formulário para detectar o estado da conexão de um formulário

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Se você estiver criando um modelo de formulário cujos formulários dependem de uma conexão de rede para processar ou retornar dados, e você está familiarizado com a gravação de script, você pode escrever um script que detecta o estado da conexão de rede de formulários com base no seu modelo de formulário. Você pode usar este script ter o Microsoft Office InfoPath verificar se um novo formulário está conectado a uma rede e se o formulário pode se conectar a uma fonte de dados externos antes do formulário envia uma consulta para a fonte de dados externa. Este artigo fornece exemplos de Visual Basic Scripting Edition (VBScript) para determinar se baseada em formulários no seu modelo de formulário e Microsoft JScript estão conectados à rede e se esses formulários podem se conectar a uma fonte de dados externos.

Neste artigo

Visão Geral

Exemplo de JScript

Exemplo do VBScript

Usar o exemplo de script em um modelo de formulário

Visão geral

Para determinar o estado da conexão de rede de um formulário com base no seu modelo de formulário, é possível usar a propriedade MachineOnlineState do objeto Aplicativo. Em seguida, é possível usar o método IsDestinationReachable do mesmo objeto Aplicativo para determinar se o formulário pode encontrar a fonte de dados externa. A propriedade MachineOnlineState contém um valor que representa o estado de conexão do formulário. Essa propriedade pode ter os seguintes valores:

Valor

Descrição

0

O computador não está conectado a uma rede. A propriedade pode ter esse valor se o computador não estiver conectado a uma rede ou se a placa de rede no computador estiver desativada.

1

O computador está conectado a uma rede. Se o computador estiver conectado a uma rede usando um cabo de rede, esse valor indicará que o computador está em uma rede. Se o computador tiver uma placa de rede sem fio, esse valor indicará que a placa de rede sem fio está funcionando. No entanto, o computador pode não estar conectado a uma rede sem fio.

2

O computador está conectado a uma rede, mas o Windows Internet Explorer está configurado para trabalhar offline. Quando o Internet Explorer está configurado para trabalhar offline, a conexão de dados a um banco de dados ou um serviço da Web pode não funcionar corretamente.

Após ter determinado que o computador do usuário está conectado a uma rede, é possível usar o método IsDestinationReachable para determinar se o formulário pode se comunicar com a fonte de dados externa. Esse método usa a URL (Uniform Resource Locator) ou o URN (Uniform Resource Name) da fonte de dados externa como um parâmetro e retorna um dos seguintes valores Booleanos:

Verdadeiro     O formulário encontrou a fonte de dados externa na rede.

Falso     O formulário não encontrou a fonte de dados externa. A fonte pode estar offline ou pode estar na rede, porém não estar disponível.

Os exemplos de script neste artigo apenas determinam se o formulário está conectado à rede. Neste artigo, os exemplos de script são usados quando o usuário abre pela primeira vez o formulário. No entanto, também é possível usar esse script sempre que quiser verificar a conexão de rede antes de realizar uma ação. Por exemplo, é possível usar esse script quando um usuário clica em um botão específico no formulário para determinar se existe uma conexão de rede com a fonte de dados externa. Independentemente de quando você escolhe usar esse script, também é possível adicionar um script que realiza uma ação, com base no fato do formulário estar conectado à rede ou não. Por exemplo, se o computador estiver offline ou não puder se conectar com a fonte de dados externa, você poderá fazer com que o InfoPath exiba uma mensagem de aviso ao usuário indicando que a fonte de dados externa não está disponível. É possível personalizar a mensagem de aviso para orientar os usuários sobre o que fazer se a fonte de dados externa não estiver disponível. Por exemplo, você pode orientá-los a tentar preencher o formulário posteriormente ou fazer com que o usuário entre em contato com o serviço de suporte.

Início da página

Exemplo de JScript

var machineState = Application.MachineOnlineState;
var displayMessage = machineState;
switch(machineState)
{
case 0:
{
displayMessage = "The computer is not connected to a network.";
break;
}
case 1:
{
if (!Application.IsDestinationReachable("http://example"))
{
displayMessage = "The computer is connected to a network, "
+ "but the external data source is not "
+ "available. Contact the data source "
+ "administrator for more information.";
}
else
{
displayMessage = "The computer is connected to a network.";
}
break;
}
case 2:
{
displayMessage = "The computer is connected to a network, but "
+ "Internet Explorer is in offline mode. Some "
+ "data connections may not work until you "
+ "set Internet Explorer to online mode. To "
+ "switch to online mode, on the File menu in "
+ "Internet Explorer, click Work Offline.";
break;
}
default:
{
displayMessage = "An unknown error occurred: Error: "
+ machineState;
}
}
XDocument.UI.Alert(displayMessage);

Início da página

Exemplo do VBScript

Dim machineState, displayMessage, returnValue
machineState = Application.MachineOnlineState
displayMessage = machineState
returnValue = False
Select Case machineState
Case 0
displayMessage = "The computer is not connected to a network."
Case 1
returnValue = Application.IsDestinationReachable("http://example")
If returnValue = False Then
displayMessage = "The computer is connected to a network, but "
displayMessage = displayMessage + "the external data source is "
displayMessage = displayMessage + "not available. Contact the "
displayMessage = displayMessage + "data source administrator "
displayMessage = displayMessage + "for more information."
Else
displayMessage = "The computer is connected to a network."
End If
Case 2
displayMessage = "The computer is connected to a network, but "
displayMessage = displayMessage + "Internet Explorer is in "
displayMessage = displayMessage + "offline mode. Some data "
displayMessage = displayMessage + "connections may not work "
displayMessage = displayMessage + "until you set Internet "
displayMessage = displayMessage + "Explorer to online mode. "
displayMessage = displayMessage + "To switch to online mode, "
displayMessage = displayMessage + "on the File menu in "
displayMessage = displayMessage + "Internet Explorer, click "
displayMessage = displayMessage + "Work Offline."
Case Else
displayMessage = "An unknown error occurred: Error: "
displayMessage = displayMessage + machineState + "."
End Select
XDocument.UI.Alert(displayMessage)

Início da página

Usar o exemplo de script em um modelo de formulário

Se você quiser testar um exemplo de script antes de usá-lo no seu modelo de formulário, poderá usar o seguinte procedimento para criar um modelo de formulário em branco e, em seguida, copiar um dos exemplos de script desse artigo no evento OnLoad. O script no evento OnLoad é executado sempre que um novo formulário com base no modelo de formulário é criado. É possível visualizar seu modelo de formulário para testar o exemplo de script com seu computador conectado a uma rede, desconectado da rede ou conectado à rede, mas com o Internet Explorer definido no modo offline.

  1. Copie um dos exemplos de script listados anteriormente neste tópico e, em seguida, cole-o em um editor de textos, como o Bloco de Notas da Microsoft.

    Observação : Copiar o exemplo de script em um editor de texto antes de adicioná-lo ao seu modelo de formulário impede a exibição de marcas de formatação HTML (Hypertext Markup Language) no script.

  2. No InfoPath, no menu Arquivo, clique em Criar um Modelo de Formulário.

  3. Em Criar um novo, na caixa de diálogo Criar um Modelo de Formulário, clique em Modelo de Formulário, clique em Em branco e, em seguida, clique em OK.

  4. Por padrão, novos modelos de formulário são configurados para usar JScript como a linguagem de script. Para usar VBScript como sua linguagem de script, altere a linguagem de script do modelo de formulário.

    Como?

    1. No menu Ferramentas, clique em Opções de Formulário.

    2. Na lista Categoria, clique em Controle de Versão.

    3. Na lista Linguagem do código do modelo de formulário em Linguagem de programação, clique em VBScript e, em seguida, clique em OK.

  5. No menu Ferramentas, aponte para Programação e, em seguida, clique em Evento OnLoad. O Editor de Scripts da Microsoft inicia com o cursor no evento OnLoad.

  6. No evento OnLoad no Editor de Scripts da Microsoft, substitua o texto // Write your code here (JScript) ou ' Write your code here (VBScript) pelo exemplo de script copiado no editor de texto.

  7. Modifique o exemplo de script para se adequar ao seu ambiente. Por exemplo, é possível modificar as mensagens e alterar http://example para a URL ou URN da sua fonte de dados externa.

  8. No Editor de Scripts da Microsoft, no menu Arquivo, clique em Salvar.

  9. Para testar as alterações, clique Visualizar na barra de ferramentas Padrão ou pressione CTRL+SHIFT+B.

Início da página

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×